Split out repositories to Infrastructure.Dapper / EntityFramework (#1759)

This commit is contained in:
Oscar Hinton
2022-01-11 10:40:51 +01:00
committed by GitHub
parent e2c6fc81f4
commit e4a10aae27
536 changed files with 1629 additions and 1589 deletions

View File

@@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Bit.Core.Enums.Provider;
using Bit.Core.Models.Data;
namespace Bit.Infrastructure.EntityFramework.Repositories.Queries
{
public class UserReadPublicKeysByProviderUserIdsQuery : IQuery<ProviderUserPublicKey>
{
private readonly Guid _providerId;
private readonly IEnumerable<Guid> _ids;
public UserReadPublicKeysByProviderUserIdsQuery(Guid providerId, IEnumerable<Guid> Ids)
{
_providerId = providerId;
_ids = Ids;
}
public virtual IQueryable<ProviderUserPublicKey> Run(DatabaseContext dbContext)
{
var query = from pu in dbContext.ProviderUsers
join u in dbContext.Users
on pu.UserId equals u.Id
where _ids.Contains(pu.Id) &&
pu.Status == ProviderUserStatusType.Accepted &&
pu.ProviderId == _providerId
select new { pu, u };
return query.Select(x => new ProviderUserPublicKey
{
Id = x.pu.Id,
PublicKey = x.u.PublicKey,
});
}
}
}