This commit is contained in:
2026-08-31 14:42:22 +08:00
72 changed files with 2479 additions and 168 deletions
@@ -17,9 +17,21 @@ namespace GroupService.Infrastructure.Reposities
{
db.GroupInvitations.Add(invitation);
}
public void CreateRange(IEnumerable<GroupInvitation> invitations)
{
db.GroupInvitations.AddRange(invitations);
}
public async Task<GroupInvitation?> FindByIdAsync(Guid id)
{
return await db.GroupInvitations.FirstOrDefaultAsync(x => x.Id == id);
}
public async Task<GroupInvitation?> FindByGroupIdAndUserIdAsync(Guid groupId, Guid userId)
{
return await db.GroupInvitations.FirstOrDefaultAsync(
x => x.GroupId == groupId && x.UserId == userId);
}
}
}
@@ -29,5 +29,12 @@ namespace GroupService.Infrastructure.Reposities
{
return await db.GroupJoinRequests.FirstOrDefaultAsync(x => x.Id == id);
}
public async Task<IEnumerable<GroupJoinRequest>> FindByUserIdAsync(Guid userId)
{
return await db.GroupJoinRequests.Where(x =>
x.UserId == userId || x.OperatorId == userId
).ToListAsync();
}
}
}
@@ -46,5 +46,19 @@ namespace GroupService.Infrastructure.Reposities
{
return await db.GroupMembers.FirstOrDefaultAsync(x => x.Id == id);
}
public async Task<bool> CheckMemberAdminAsync(Guid groupId, Guid userId)
{
return await db.GroupMembers.AnyAsync(
x => x.GroupId == groupId && x.UserId == userId
&& (x.Role == Domain.Enums.GroupMemberRole.Administrator
|| x.Role == Domain.Enums.GroupMemberRole.Master)
);
}
public void CreateRange(IEnumerable<GroupMember> members)
{
db.GroupMembers.AddRange(members);
}
}
}