diff --git a/src/WorkFlow.API/Properties/launchSettings.json b/src/WorkFlow.API/Properties/launchSettings.json
index b954cd2..6ae2b1c 100644
--- a/src/WorkFlow.API/Properties/launchSettings.json
+++ b/src/WorkFlow.API/Properties/launchSettings.json
@@ -22,7 +22,7 @@
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
- "launchBrowser": false,
+ "launchBrowser": true,
"launchUrl": "swagger",
"applicationUrl": "https://localhost:7120;http://localhost:5130",
"environmentVariables": {
diff --git a/src/WorkFlow.Domain/Entities/Button.cs b/src/WorkFlow.Domain/Entities/Button.cs
new file mode 100644
index 0000000..be0ec3d
--- /dev/null
+++ b/src/WorkFlow.Domain/Entities/Button.cs
@@ -0,0 +1,115 @@
+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; }
+}