@@ -13,19 +13,20 @@ namespace Server.DbService
13
13
14
14
public interface IGroupService
15
15
{
16
- void AddGroup ( int uid , string groupName ) ;
17
- void AddGroup ( string uname , string groupName ) ;
16
+ Task AddGroupAsync ( int uid , string groupName ) ;
17
+ // void AddGroup(string uname, string groupName);
18
18
19
- void RenameGroup ( string groupName , string newName ) ;
19
+ //void RenameGroup(string groupName, string newName);
20
+ Task RenameGroupAsync ( int id , string newName ) ;
20
21
21
- bool AddUserToGroup ( string uname , string groupName ) ;
22
- bool AddUserToGroup ( int uid , string groupName ) ;
22
+ // bool AddUserToGroupAsync (string uname, string groupName);
23
+ Task < bool > AddUserToGroupAsync ( int uid , string groupName ) ;
23
24
24
25
IEnumerable < Group > GetUserGroups ( int uid ) ;
25
- IEnumerable < Group > GetUserGroups ( string uname ) ;
26
+ // IEnumerable<Group> GetUserGroups(string uname);
26
27
27
- void RemoveUserFromGroup ( int uid , string groupName ) ;
28
- void RemoveUserFromGroup ( string uname , string groupName ) ;
28
+ Task RemoveUserFromGroupAsync ( int uid , string groupName ) ;
29
+ // void RemoveUserFromGroup(string uname, string groupName);
29
30
}
30
31
31
32
public class GroupService : IGroupService
@@ -34,67 +35,77 @@ public class GroupService : IGroupService
34
35
35
36
public GroupService ( BabbleContext db ) => this . db = db ;
36
37
37
- public void RenameGroup ( string groupName , string newName )
38
+ //public void RenameGroup(string groupName, string newName)
39
+ //{
40
+ // Group? group = db.Groups.FirstOrDefault(g => g.Name == groupName);
41
+ // if(group != null)
42
+ // {
43
+ // group.Name = newName;
44
+ // db.SaveChangesAsync();
45
+ // }
46
+ //}
47
+ public async Task RenameGroupAsync ( int id , string newName )
38
48
{
39
- Group ? group = db . Groups . FirstOrDefault ( g => g . Name == groupName ) ;
40
- if ( group != null )
49
+ Group ? group = db . Groups . Find ( id ) ;
50
+ if ( group != null )
41
51
{
42
52
group . Name = newName ;
43
- db . SaveChangesAsync ( ) ;
53
+ await db . SaveChangesAsync ( ) ;
44
54
}
45
55
}
46
56
47
- public void AddGroup ( int uid , string groupName )
57
+ public async Task AddGroupAsync ( int uid , string groupName )
48
58
{
49
59
Group group = new Group { Name = groupName } ;
50
60
User ? user = db . Users . Find ( uid ) ;
51
61
52
62
if ( user != null )
53
63
{
54
64
db . Groups . Add ( group ) ;
55
- db . UserGroups . Add ( new UserGroup { Group = group , User = user } ) ; // maybe not working, should test
56
- db . SaveChanges ( ) ;
65
+ db . UserGroups . Add ( new UserGroup { Group = group , User = user } ) ;
66
+ await db . SaveChangesAsync ( ) ;
57
67
58
68
//db.UserGroups.Add(new UserGroup { Group = group, UserId = uid });
59
69
}
60
70
}
61
71
62
- public void AddGroup ( string uname , string groupName )
63
- {
64
- Group group = new Group { Name = groupName } ;
65
- User ? user = db . Users . FirstOrDefault ( u => u . Name == uname ) ;
66
-
67
- if ( user != null )
68
- {
69
- db . Groups . Add ( group ) ;
70
- db . UserGroups . Add ( new UserGroup { Group = group , User = user } ) ; // maybe not working, should test
71
- db . SaveChanges ( ) ;
72
- }
73
- }
74
-
75
- public bool AddUserToGroup ( string uname , string groupName )
76
- {
77
- Group ? group = db . Groups . FirstOrDefault ( g => g . Name == groupName ) ;
78
- User ? user = db . Users . FirstOrDefault ( u => u . Name == uname ) ;
79
-
80
- if ( group != null && user != null )
81
- {
82
- db . UserGroups . Add ( new UserGroup { User = user , Group = group } ) ;
83
- db . SaveChanges ( ) ;
84
- return true ;
85
- }
86
- return false ;
87
- }
88
-
89
- public bool AddUserToGroup ( int uid , string groupName )
72
+ // Try to not use it
73
+ //public void AddGroup(string uname, string groupName)
74
+ //{
75
+ // Group group = new Group { Name = groupName };
76
+ // User? user = db.Users.FirstOrDefault(u => u.Name == uname);
77
+
78
+ // if (user != null)
79
+ // {
80
+ // db.Groups.Add(group);
81
+ // db.UserGroups.Add(new UserGroup { Group = group, User = user }); // maybe not working, should test
82
+ // db.SaveChanges();
83
+ // }
84
+ //}
85
+
86
+ //public async Task<bool> AddUserToGroupAsync(string uname, string groupName)
87
+ //{
88
+ // Group? group = db.Groups.FirstOrDefault(g => g.Name == groupName);
89
+ // User? user = db.Users.FirstOrDefault(u => u.Name == uname);
90
+
91
+ // if (group != null && user != null)
92
+ // {
93
+ // db.UserGroups.Add(new UserGroup { User = user, Group = group });
94
+ // await db.SaveChangesAsync();
95
+ // return true;
96
+ // }
97
+ // return false;
98
+ //}
99
+
100
+ public async Task < bool > AddUserToGroupAsync ( int uid , string groupName )
90
101
{
91
102
Group ? group = db . Groups . FirstOrDefault ( g => g . Name == groupName ) ;
92
103
User ? user = db . Users . Find ( uid ) ;
93
104
94
105
if ( group != null && user != null )
95
106
{
96
107
db . UserGroups . Add ( new UserGroup { User = user , Group = group } ) ;
97
- db . SaveChanges ( ) ;
108
+ await db . SaveChangesAsync ( ) ;
98
109
return true ;
99
110
}
100
111
return false ;
@@ -109,20 +120,20 @@ public IEnumerable<Group> GetUserGroups(int uid)
109
120
}
110
121
111
122
// throw exeption "UserNotFound" if user with this name is not found
112
- public IEnumerable < Group > GetUserGroups ( string uname )
113
- {
114
- User ? user = db . Users . FirstOrDefault ( u => u . Name == uname ) ;
115
- if ( user != null )
116
- {
117
- return from ug in db . UserGroups
118
- where ug . UserId == user . Id
119
- select ug . Group ;
120
- }
121
- throw new Exception ( "UserNotFound" ) ;
122
- }
123
+ // public IEnumerable<Group> GetUserGroups(string uname)
124
+ // {
125
+ // User? user = db.Users.FirstOrDefault(u => u.Name == uname);
126
+ // if (user != null)
127
+ // {
128
+ // return from ug in db.UserGroups
129
+ // where ug.UserId == user.Id
130
+ // select ug.Group;
131
+ // }
132
+ // throw new Exception("UserNotFound");
133
+ // }
123
134
124
135
// TODO: add throw exeptions
125
- public void RemoveUserFromGroup ( int uid , string groupName )
136
+ public async Task RemoveUserFromGroupAsync ( int uid , string groupName )
126
137
{
127
138
Group ? group = db . Groups . FirstOrDefault ( g => g . Name == groupName ) ;
128
139
if ( group != null )
@@ -137,34 +148,34 @@ public void RemoveUserFromGroup(int uid, string groupName)
137
148
db . Groups . Remove ( group ) ;
138
149
}
139
150
140
- db . SaveChanges ( ) ;
151
+ await db . SaveChangesAsync ( ) ;
141
152
}
142
153
}
143
154
}
144
155
145
156
146
- public void RemoveUserFromGroup ( string uname , string groupName )
147
- {
148
- Group ? group = db . Groups . FirstOrDefault ( g => g . Name == groupName ) ;
149
- User ? user = db . Users . FirstOrDefault ( u => u . Name == uname ) ;
150
- if ( group != null && user != null )
151
- {
152
- UserGroup ? userGroup = db . UserGroups . FirstOrDefault ( ug => ug . GroupId == group . Id && ug . UserId == user . Id ) ;
153
- //UserGroup? userGroup = db.UserGroups.FirstOrDefault(ug => ug.Group.Name == groupName && ug.User.Name == uname);
157
+ // public void RemoveUserFromGroup(string uname, string groupName)
158
+ // {
159
+ // Group? group = db.Groups.FirstOrDefault(g => g.Name == groupName);
160
+ // User? user = db.Users.FirstOrDefault(u => u.Name == uname);
161
+ // if (group != null && user != null)
162
+ // {
163
+ // UserGroup? userGroup = db.UserGroups.FirstOrDefault(ug => ug.GroupId == group.Id && ug.UserId == user.Id);
164
+ // //UserGroup? userGroup = db.UserGroups.FirstOrDefault(ug => ug.Group.Name == groupName && ug.User.Name == uname);
154
165
155
- if ( userGroup != null )
156
- {
157
- db . UserGroups . Remove ( userGroup ) ;
166
+ // if (userGroup != null)
167
+ // {
168
+ // db.UserGroups.Remove(userGroup);
158
169
159
- if ( db . UserGroups . Count ( ug => ug . GroupId == group . Id ) <= 1 )
160
- {
161
- db . Groups . Remove ( group ) ;
162
- }
170
+ // if(db.UserGroups.Count(ug => ug.GroupId == group.Id) <= 1)
171
+ // {
172
+ // db.Groups.Remove(group);
173
+ // }
163
174
164
- db . SaveChanges ( ) ;
165
- }
175
+ // db.SaveChanges();
176
+ // }
166
177
167
- }
168
- }
178
+ // }
179
+ // }
169
180
}
170
181
}
0 commit comments