using System.ComponentModel.DataAnnotations; namespace CuentasCobrar.UI.Models { public class FacturaViewModel { [Required ( ErrorMessage = "Este campo es requerido." )] [MaxLength ( 40, ErrorMessage = "Máximo 40 caracteres." )] public string Consecutivo { get; set; } = null!; [Required ( ErrorMessage = "Este campo es requerido." )] [MaxLength ( 30, ErrorMessage = "Máximo 30 caracteres." )] public string NoIdentificacionCliente { get; set; } = null!; [Required ( ErrorMessage = "Este campo es requerido." )] public int IdMoneda { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] public int IdTipoDocumento { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] [DataType ( DataType.DateTime )] public DateTime FechaEmision { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] [DataType ( DataType.DateTime )] public DateTime FechaVencimiento { get; set; } [MaxLength ( 40, ErrorMessage = "Máximo 40 caracteres." )] public string? ConsecutivoNotaReferencia { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] [MaxLength ( 255, ErrorMessage = "Máximo 255 caracteres." )] public string NombreReceptor { get; set; } = null!; [Required ( ErrorMessage = "Este campo es requerido." )] public decimal SubTotal { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] public decimal TotalImpuestos { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] public decimal TotalFactura { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] public int DiasCredito { get; set; } public decimal Saldo { get; set; } [Required ( ErrorMessage = "Este campo es requerido." )] [MaxLength ( 10, ErrorMessage = "Máximo 10 caracteres." )] public string Estado { get; set; } = null!; public bool isActive { get; set; } public decimal? MontoPagado { get; set; } } }