using Back.Data.Contracts; using Back.Data.Models; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Hosting; using Shared.DTOs; namespace Back.Services { public class servInvoicePayment { private readonly IAsyncRepository _Repo; public servInvoicePayment(IAsyncRepository Repo) { _Repo = Repo; } public async Task Add(InvoicePayment item) { return await _Repo.AddBoolResultAsync(item); } public async Task Update(InvoicePayment item) { return await _Repo.UpdateAsync(item); } public async Task Delete(InvoicePayment item) { return await _Repo.DeleteAsync(item); } public async Task Exist(int companyID, int invoiceID, int ID) { return await _Repo.Get(w => w.InvoiceID == invoiceID && w.ID == ID && w.invoice.CompanyID == companyID).AnyAsync(); } public async Task GetinvoicePay(int CompanyID, int ID) { return await _Repo .Get(w => w.ID == ID && w.invoice.CompanyID == CompanyID && !w.invoice.IsDeleted) .Include(s=>s.invoice) .FirstOrDefaultAsync(); } public async Task GetInvoicePayByInvoicePayID (int companyID, int invoiceID, int ID) { return await _Repo.Get(w => w.InvoiceID == invoiceID && w.ID == ID && w.invoice.CompanyID == companyID).FirstOrDefaultAsync(); } } }