namespace Domain.Dtos.Sales
{
    public class SalesDocumentDto
    {
        public int Id { get; set; }
        public int? FormseriesId { get; set; }
        public int? InternalSequenceNumber { get; set; }
        public string? InternalDocumentNumber { get; set; }
        public int DocumentType { get; set; }
        public int? FiscalVoucherType { get; set; }
        public string? FiscalVoucherLetter { get; set; }
        public int Status { get; set; }
        public int? QuoteId { get; set; }
        public int CustomerId { get; set; }
        public string CustomerName { get; set; } = string.Empty;
        public int BillToCustomerId { get; set; }
        public string BillToCustomerName { get; set; } = string.Empty;
        public DateTime? IssueDate { get; set; }
        public string Currency { get; set; } = string.Empty;
        public decimal ExchangeRate { get; set; }
        public decimal NetAmount { get; set; }
        public decimal TaxAmount { get; set; }
        public decimal TotalAmount { get; set; }
        public string? AssociatedDocumentType { get; set; }
        public string? AssociatedDocumentNumber { get; set; }
        public DateTime? AssociatedDocumentDate { get; set; }
        public string? Observations { get; set; }
        public string? ExtraInfoJson { get; set; }
        public DateTime? PeriodFrom { get; set; }
        public DateTime? PeriodTo { get; set; }
        public DateTime Createdat { get; set; }
        public DateTime? Modifiedat { get; set; }
        public List<SalesDocumentDetailDto> Details { get; set; } = new();
        public List<SalesDocumentCoverageDto> Coverage { get; set; } = new();
        public SalesFiscalDocumentDto? FiscalDocument { get; set; }
    }
}
