public async Task <List <GetAzureInvoiceLineItemsModel> > HandleAsync(GetAzureInvoiceLineItemsUseCase data) { var invoiceItems = await CspClient.GetInvoiceByIdAsync(data.InvoiceId); var link = invoiceItems.InvoiceDetailLinks.FirstOrDefault(x => x.Contains($"{nameof(Common.Enums.BillingProvider.Azure)}/BillingLineItems")); if (string.IsNullOrEmpty(link)) { return(null); } return(Mapper.Map <List <GetAzureInvoiceLineItemsModel> >(await CspClient.GetAzureInvoiceLineItemsAsync(link))); }
public async Task <List <GetCustomersOfficeInvoiceLineItemsModel> > HandleAsync(GetCustomersOfficeInvoiceLineItemsUseCase data) { var invoiceItems = await CspClient.GetInvoiceByIdAsync(data.InvoiceId); var link = invoiceItems.InvoiceDetailLinks.FirstOrDefault(x => x.Contains($"{nameof(Common.Enums.BillingProvider.Office)}/BillingLineItems")); if (string.IsNullOrEmpty(link)) { return(null); } var lineItems = await CspClient.GetOfficeInvoiceLineItemsAsync(link); return(Mapper.Map <List <GetCustomersOfficeInvoiceLineItemsModel> >(lineItems.Where(x => x.CustomerId.Equals(data.TenantId)))); }
/// <summary> /// A default constructor. /// </summary> /// <param name="fixture">The fixture that holds the testing setup.</param> public CspReportTests(IntegrationTestFixture fixture) { CspClient = fixture.ServicesProvider.GetService <CspClient>(); }