1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-03 00:52:49 -05:00
Files
bitwarden/src/Infrastructure.EntityFramework/Repositories/Queries/PolicyReadByUserIdQuery.cs
2022-08-29 16:06:55 -04:00

30 lines
907 B
C#

using Bit.Core.Enums;
using Bit.Infrastructure.EntityFramework.Models;
namespace Bit.Infrastructure.EntityFramework.Repositories.Queries;
public class PolicyReadByUserIdQuery : IQuery<Policy>
{
private readonly Guid _userId;
public PolicyReadByUserIdQuery(Guid userId)
{
_userId = userId;
}
public IQueryable<Policy> Run(DatabaseContext dbContext)
{
var query = from p in dbContext.Policies
join ou in dbContext.OrganizationUsers
on p.OrganizationId equals ou.OrganizationId
join o in dbContext.Organizations
on ou.OrganizationId equals o.Id
where ou.UserId == _userId &&
ou.Status == OrganizationUserStatusType.Confirmed &&
o.Enabled == true
select p;
return query;
}
}