phronCare/Core/Interfaces/IQuoteDom.cs
Leandro Hernan Rojas 3d6af27e34
All checks were successful
CI/CD Pipeline / Build and Deploy with Docker Compose (push) Successful in 5m39s
Add Save Cascade Quote Insert
with Validations
2025-05-07 18:35:49 -03:00

33 lines
1.2 KiB
C#

using Domain.Entities;
using Domain.Generics;
namespace Models.Interfaces
{
public interface IQuoteDom
{
#region Presupuestos
Task<PagedResult<EQuoteHeader>> GetAllQuotesAsync(int page = 1, int pageSize = 50);
Task<EQuoteHeader?> GetQuoteByIdAsync(int id);
Task<IEnumerable<EQuoteHeader>> GetQuotesByCustomerAsync(int customerId);
Task<PagedResult<EQuoteHeader>> 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<byte[]> ExportFilteredQuotesToExcelAsync(QuoteSearchParams searchParams);
#endregion
#region Guardado completo de presupuesto (encabezado + detalles + roles + ajustes + impuestos)
Task<string> CreateFullQuoteAsync(EQuoteHeader quote, int formSeriesId);
#endregion
}
}