1
0
mirror of https://github.com/bitwarden/server.git synced 2025-05-22 20:11:04 -05:00
Alex Morask 18d146406c
[PM-21099] (NO LOGIC) Organize Billing provider code (#5819)
* [NO LOGIC] Organize Billing provider code

* Run dotnet format

* Run dotnet format'

* Fixed using after merge

* Fixed test usings after merge
2025-05-21 09:04:30 -04:00

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();
}
}