Fin création des groupes

This commit is contained in:
2026-06-11 01:14:32 +02:00
parent f1cdc5de19
commit 1d2f96b2f4
11 changed files with 19 additions and 21 deletions
@@ -41,26 +41,9 @@ public class CreateGroupDiscussionEndpoint(KnotsDbContext db) : Endpoint<CreateG
int totalMembers = targets.Count + 1; int totalMembers = targets.Count + 1;
// 1. Créer le groupe SANS DiscussionId pour l'instant
Models.Group group = new()
{
Name = req.GroupName,
MembersAmount = totalMembers,
DiscussionId = 0, // temporaire
GroupUsers = targets
.Select(t => new GroupUser { UserId = t.Id })
.Append(new GroupUser { UserId = currentUserId })
.ToList()
};
db.Groups.Add(group);
await db.SaveChangesAsync(ct); // group.Id disponible
// 2. Créer la discussion avec le GroupId
Models.Discussion discussion = new() Models.Discussion discussion = new()
{ {
IsGroup = true, IsGroup = true,
GroupId = group.Id,
UserDiscussions = targets UserDiscussions = targets
.Select(t => new UserDiscussion { UserId = t.Id }) .Select(t => new UserDiscussion { UserId = t.Id })
.Append(new UserDiscussion { UserId = currentUserId }) .Append(new UserDiscussion { UserId = currentUserId })
@@ -70,8 +53,23 @@ public class CreateGroupDiscussionEndpoint(KnotsDbContext db) : Endpoint<CreateG
db.Discussions.Add(discussion); db.Discussions.Add(discussion);
await db.SaveChangesAsync(ct); // discussion.Id disponible await db.SaveChangesAsync(ct); // discussion.Id disponible
// 3. Mettre à jour le DiscussionId sur le groupe
group.DiscussionId = discussion.Id; Models.Group group = new()
{
Name = req.GroupName,
MembersAmount = totalMembers,
DiscussionId = discussion.Id,
GroupUsers = targets
.Select(t => new GroupUser { UserId = t.Id })
.Append(new GroupUser { UserId = currentUserId })
.ToList()
};
db.Groups.Add(group);
await db.SaveChangesAsync(ct); // group.Id disponible
discussion.GroupId = group.Id;
await db.SaveChangesAsync(ct); await db.SaveChangesAsync(ct);
await SendOkAsync(new GetDiscussionDto await SendOkAsync(new GetDiscussionDto
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Knots")] [assembly: System.Reflection.AssemblyCompanyAttribute("Knots")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+4e06dc5f235e9c9c699b247eb56dccf3eeed81f8")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+f1cdc5de19a96d553f0eaf2fbe65392602c54f85")]
[assembly: System.Reflection.AssemblyProductAttribute("Knots")] [assembly: System.Reflection.AssemblyProductAttribute("Knots")]
[assembly: System.Reflection.AssemblyTitleAttribute("Knots")] [assembly: System.Reflection.AssemblyTitleAttribute("Knots")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
@@ -1 +1 @@
45989a1b023b2a60770db7a1baceef9c56c487cca0e44ae9d0d75cdde668b8cc 0618e480c1221c208fb53c91259f81c85675af45b5772bccc9fee873e927c02b
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.