aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Services
diff options
context:
space:
mode:
Diffstat (limited to 'src/DevHive.Services')
-rw-r--r--src/DevHive.Services/Services/FeedService.cs2
-rw-r--r--src/DevHive.Services/Services/UserService.cs12
2 files changed, 11 insertions, 3 deletions
diff --git a/src/DevHive.Services/Services/FeedService.cs b/src/DevHive.Services/Services/FeedService.cs
index 1bddac4..c17861d 100644
--- a/src/DevHive.Services/Services/FeedService.cs
+++ b/src/DevHive.Services/Services/FeedService.cs
@@ -38,7 +38,7 @@ namespace DevHive.Services.Services
if (user == null)
throw new ArgumentException("User doesn't exist!");
- List<User> friendsList = user.Friends.ToList();
+ List<User> friendsList = user.Friends.Select(x => x.Friend).ToList();
if (friendsList.Count == 0)
throw new ArgumentException("User has no friends to get feed from!");
diff --git a/src/DevHive.Services/Services/UserService.cs b/src/DevHive.Services/Services/UserService.cs
index ec74b5f..ea53f1a 100644
--- a/src/DevHive.Services/Services/UserService.cs
+++ b/src/DevHive.Services/Services/UserService.cs
@@ -14,6 +14,7 @@ using DevHive.Services.Interfaces;
using DevHive.Data.Interfaces.Repositories;
using System.Linq;
using DevHive.Common.Models.Misc;
+using DevHive.Data.RelationModels;
namespace DevHive.Services.Services
{
@@ -309,14 +310,21 @@ namespace DevHive.Services.Services
user.Roles = roles;
/* Fetch Friends and replace model's*/
- HashSet<User> friends = new();
+ HashSet<UserFriends> friends = new();
int friendsCount = updateUserServiceModel.Friends.Count;
for (int i = 0; i < friendsCount; i++)
{
User friend = await this._userRepository.GetByUsernameAsync(updateUserServiceModel.Friends.ElementAt(i).UserName) ??
throw new ArgumentException("Invalid friend's username!");
- friends.Add(friend);
+ UserFriends relation = new()
+ {
+ UserId = user.Id,
+ User = user,
+ FriendId = friend.Id,
+ Friend = friend
+ };
+ friends.Add(relation);
}
user.Friends = friends;