using Domain.Entities; using Domain.Generics; namespace Models.Interfaces { public interface IQuoteDom { #region Presupuestos Task> GetAllQuotesAsync(int page = 1, int pageSize = 50); Task GetQuoteByIdAsync(int id); Task> GetQuotesByCustomerAsync(int customerId); Task> SearchQuotesAsync( int? customerId, string? quoteNumber, int? professionalId, int? institutionId, int? patientId, DateTime? issueDateFrom, DateTime? issueDateTo, string? status, int page = 1, int pageSize = 50); Task UpdateQuoteAsync(EQuoteHeader quote); Task DeleteQuoteAsync(int id); #endregion #region Exportación Task ExportFilteredQuotesToExcelAsync(QuoteSearchParams searchParams); #endregion #region Guardado completo de presupuesto (encabezado + detalles + roles + ajustes + impuestos) Task CreateFullQuoteAsync(EQuoteHeader quote, int formSeriesId); #endregion } }