using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace MLL // Ou o namespace de sua preferência { // Opcional: Para Entity Framework, especifica o nome da tabela e o schema // [Table("ContasPagar", Schema = "dbo")] public class ModeloContasPagar { // [Key] // Opcional: Indica que esta é a chave primária // [DatabaseGenerated(DatabaseGeneratedOption.Identity)] // Opcional: Indica que o DB gera o ID public int Id { get; set; } public int EmpresaId { get; set; } public int FornecedorId { get; set; } public int PlanoContaId { get; set; } // [StringLength(255)] // Opcional: Para validação de tamanho em ORMs como EF public string? Descricao { get; set; } // varchar(255) NULL -> string? public decimal Valor { get; set; } // decimal(10, 2) NOT NULL -> decimal public DateTime? DataEmissao { get; set; } // date NULL -> DateTime? public DateTime DataVencimento { get; set; } // date NOT NULL -> DateTime public DateTime? DataPagamento { get; set; } // date NULL -> DateTime? // [StringLength(20)] // Opcional: Para validação de tamanho public string Status { get; set; } = "Pendente"; // varchar(20) NOT NULL com DEFAULT -> string. Inicializado com o valor padrão. public decimal? ValorPago { get; set; } // decimal(10, 2) NULL -> decimal? public decimal? Juros { get; set; } = 0; // decimal(10, 2) NULL com DEFAULT -> decimal?. Inicializado com o valor padrão. public decimal? Multa { get; set; } = 0; // decimal(10, 2) NULL com DEFAULT -> decimal?. Inicializado com o valor padrão. public decimal? Desconto { get; set; } = 0; // decimal(10, 2) NULL com DEFAULT -> decimal?. Inicializado com o valor padrão. public string? Observacoes { get; set; } // varchar(max) NULL -> string? public bool Ativo { get; set; } = true; // bit NOT NULL com DEFAULT -> bool. Inicializado com o valor padrão. public DateTime? CriadoEm { get; set; } // datetime NULL com DEFAULT -> DateTime? public DateTime? AtualizadoEm { get; set; } // datetime NULL com DEFAULT -> DateTime? // Opcional: Propriedades de navegação para relacionamentos (para ORMs como Entity Framework) /* [ForeignKey("EmpresaId")] public virtual ModeloEmpresa? Empresa { get; set; } // Assumindo que você tem um modelo ModeloEmpresa [ForeignKey("FornecedorId")] public virtual ModeloFornecedor? Fornecedor { get; set; } // Assumindo que você tem um modelo ModeloFornecedor [ForeignKey("PlanoContaId")] public virtual ModeloPlanoDeContas? PlanoDeContas { get; set; } // Assumindo que você tem um modelo ModeloPlanoDeContas */ } }