mirror of
https://github.com/bitwarden/server.git
synced 2025-05-22 20:11:04 -05:00

* [NO LOGIC] Organize Billing provider code * Run dotnet format * Run dotnet format' * Fixed using after merge * Fixed test usings after merge
47 lines
1.6 KiB
C#
47 lines
1.6 KiB
C#
using AutoMapper;
|
|
using Bit.Core.Billing.Providers.Entities;
|
|
using Bit.Core.Billing.Providers.Repositories;
|
|
using Bit.Infrastructure.EntityFramework.Repositories;
|
|
using LinqToDB;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using EFProviderInvoiceItem = Bit.Infrastructure.EntityFramework.Billing.Models.ProviderInvoiceItem;
|
|
|
|
namespace Bit.Infrastructure.EntityFramework.Billing.Repositories;
|
|
|
|
public class ProviderInvoiceItemRepository(
|
|
IMapper mapper,
|
|
IServiceScopeFactory serviceScopeFactory)
|
|
: Repository<ProviderInvoiceItem, EFProviderInvoiceItem, Guid>(
|
|
serviceScopeFactory,
|
|
mapper,
|
|
context => context.ProviderInvoiceItems), IProviderInvoiceItemRepository
|
|
{
|
|
public async Task<ICollection<ProviderInvoiceItem>> GetByInvoiceId(string invoiceId)
|
|
{
|
|
using var serviceScope = ServiceScopeFactory.CreateScope();
|
|
|
|
var databaseContext = GetDatabaseContext(serviceScope);
|
|
|
|
var query =
|
|
from providerInvoiceItem in databaseContext.ProviderInvoiceItems
|
|
where providerInvoiceItem.InvoiceId == invoiceId
|
|
select providerInvoiceItem;
|
|
|
|
return await query.ToArrayAsync();
|
|
}
|
|
|
|
public async Task<ICollection<ProviderInvoiceItem>> GetByProviderId(Guid providerId)
|
|
{
|
|
using var serviceScope = ServiceScopeFactory.CreateScope();
|
|
|
|
var databaseContext = GetDatabaseContext(serviceScope);
|
|
|
|
var query =
|
|
from providerInvoiceItem in databaseContext.ProviderInvoiceItems
|
|
where providerInvoiceItem.ProviderId == providerId
|
|
select providerInvoiceItem;
|
|
|
|
return await query.ToArrayAsync();
|
|
}
|
|
}
|