using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace WorkFlow.Domain.Entities; [Table("TBMWF_PROF_BUTTONS")] public class Button { [Key] [Column("GUID", TypeName = "int")] public int Id { get; set; } [Required] [Column("MWF_PROFILE_ID", TypeName = "int")] public required int ProfileId { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("DIALOG_NO", TypeName = "tinyint")] public byte? DialogNo { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("BTN_TYPE", TypeName = "nvarchar(20)")] public string? BtnType { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("TEXT", TypeName = "nvarchar(500)")] public string? Text { get; set; } [Column("ICON", TypeName = "nvarchar(100)")] public string? Icon { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("FORE_COLOR", TypeName = "nvarchar(100)")] public string? ForeColor { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("BACK_COLOR", TypeName = "nvarchar(100)")] public string? BackColor { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("COMMAND", TypeName = "nvarchar(max)")] public string? Command { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("DIALOG_COMMAND", TypeName = "nvarchar(max)")] public string? DialogCommand { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("CONFIRMATION_TEXT", TypeName = "nvarchar(250)")] public string? ConfirmationText { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("ADDED_WHO", TypeName = "nvarchar(100)")] public string? AddedWho { get; set; } /// /// Although this field is marked as nullable in the database schema to allow /// for greater flexibility during database-level operations or migrations, it is /// treated as required and not null within the application logic. /// Validation should be enforced at the application level to ensure a value is provided. /// [Column("ADDED_WHEN", TypeName = "datetime")] public DateTime? AddedWhen { get; set; } [Column("CHANGED_WHO", TypeName = "nvarchar(100)")] public string? ChangedWho { get; set; } [Column("CHANGED_WHEN", TypeName = "datetime")] public DateTime? ChangedWhen { get; set; } }