rework and starts for new friends system

This commit is contained in:
Artemy
2025-07-08 22:28:04 +07:00
parent 92c1ff6458
commit b1f3aa0266
29 changed files with 1028 additions and 309 deletions
+38
View File
@@ -0,0 +1,38 @@
using Govor.Application.Interfaces.Friends;
using Govor.Application.Interfaces.Infrastructure.Extensions;
using Microsoft.AspNetCore.SignalR;
namespace Govor.API.Hubs;
public class FriendsHub : Hub
{
private readonly IFriendRequestService _friendRequestService;
private readonly ICurrentUserService _currentUserService;
public FriendsHub(IFriendRequestService friendRequestService, ICurrentUserService currentUserService)
{
_friendRequestService = friendRequestService;
_currentUserService = currentUserService;
}
public async Task SendRequest(Guid targetUserId)
{
var userId = _currentUserService.GetCurrentUserId();
await _friendRequestService.SendFriendRequestAsync(userId, targetUserId);
await Clients.User(targetUserId.ToString()).SendAsync("FriendRequestReceived", userId);
}
public async Task AcceptRequest(Guid friendshipId)
{
var userId = _currentUserService.GetCurrentUserId();
await _friendRequestService.AcceptFriendRequestAsync(friendshipId, userId);
await Clients.User(userId.ToString()).SendAsync("FriendRequestAccepted", friendshipId);
}
public async Task RejectRequest(Guid friendshipId)
{
var userId = _currentUserService.GetCurrentUserId();
await _friendRequestService.RejectFriendRequestAsync(friendshipId, userId);
await Clients.User(userId.ToString()).SendAsync("FriendRequestRejected", friendshipId);
}
}