using Domain.Entities; using Domain.Generics; namespace Models.Interfaces { public interface IPhSQuoteHeaderRepository { Task> GetAllAsync(int page = 1, int pageSize = 50); Task GetByIdAsync(int id); Task> GetByCustomerIdAsync(int customerId); Task> SearchAsync(int? customerId, string? quoteNumber, int? professionalId, int? institutionId, int? patientId, DateTime? issueDateFrom, DateTime? issueDateTo, string? status, int page = 1, int pageSize = 50); Task UpdateAsync(EQuoteHeader quoteHeader); Task DeleteAsync(int id); // Ajustes //Task> GetAdjustmentsByQuoteIdAsync(int quoteId); //Task AddAdjustmentAsync(EQuoteAdjustment adjustment); //Task UpdateAdjustmentAsync(EQuoteAdjustment adjustment); //Task DeleteAdjustmentAsync(int adjustmentId); ///// ///// Obtiene todos los impuestos asociados a un presupuesto dado por su ID. ///// //Task> GetTaxesByQuoteIdAsync(int quoteId); ///// ///// Agrega un nuevo impuesto al presupuesto correspondiente. ///// //Task AddTaxAsync(EQuoteTax tax); ///// ///// Actualiza los datos de un impuesto existente en un presupuesto. ///// //Task UpdateTaxAsync(EQuoteTax tax); ///// ///// Elimina un impuesto asociado a un presupuesto a partir de su ID. ///// //Task DeleteTaxAsync(int taxId); //Task CreateFullQuoteAsync(EQuoteHeader quote, int formSeriesId); //Task BeginTransactionAsync(); } }