22 lines
927 B
C#
22 lines
927 B
C#
using TIAM.Database.DbContexts.ServiceProviders;
|
|
using TIAM.Entities.Users;
|
|
|
|
namespace TIAM.Database.DbSets.Users;
|
|
|
|
public static class AssignedUserDbSetExtensions
|
|
{
|
|
public static IQueryable<AssignedUser> GetAssignedUsersByPermissionGroupId(this ServiceProviderDbContext ctx, Guid permissionGroupId)
|
|
{
|
|
return ctx.AssignedUsers
|
|
.Where(user => ctx.PermissionGroupUserMappings
|
|
.Where(x => x.PermissionGroupId == permissionGroupId)
|
|
.Select(x => x.AssignedUserId)
|
|
.Contains(user.Id));
|
|
}
|
|
|
|
public static AssignedUser? GetAssignedUserById(this IAssignedUserDbSet ctx, Guid assignedUserId)
|
|
=> ctx.AssignedUsers.FirstOrDefault(x => x.Id == assignedUserId);
|
|
|
|
public static IQueryable<AssignedUser> GetAssignedUsersByContextId(this IAssignedUserDbSet ctx, Guid contextId)
|
|
=> ctx.AssignedUsers.Where(x => x.ContextId == contextId);
|
|
} |