// ============================================================ // GoodBooks ERP — Skill Management Module // DTO : RoleSkillRequirementDTO // Table : MJOBROLESKILL (M3) — primary [child/mapping table] // Joins : MSKILL (S3), MSKILLGROUP (S2), MSKILLLEVEL (S4), // MJOBROLE (job role display name — external table) // Updated: Aligned to new DDL schema v1.0 // // NOTE: MJOBROLESKILL is a child/mapping table. // It has NO standard fields (no VERSION, STATUS, // SORTORDER, CREATEDBYID, TENANTID etc.). // Parent MSKILL audit covers child lifecycle per DDL. // ============================================================ namespace SkillManagementDAL.DTO.RoleSkillRequirement { public class RoleSkillRequirementDTO { // ── Primary key ────────────────────────────────────────── public int ReqId { get; set; } // ── Business columns (MJOBROLESKILL) ───────────────────── public int RoleId { get; set; } public string? RoleCode { get; set; } // NEW (MJOBROLESKILL) public string? RoleName { get; set; } // NEW (MJOBROLESKILL) public int SkillId { get; set; } public short SlNo { get; set; } = 1; public byte MinLevNo { get; set; } = 1; public byte IsMandatory { get; set; } = 1; public byte Category { get; set; } public string? Remarks { get; set; } // ── Optional: Master Role display (MJOBROLE) ───────────── public string? RoleNameFromMaster { get; set; } // From MJOBROLE (JOIN) // ── Joined display fields — MSKILL (S3) ────────────────── public string? SkillName { get; set; } public string? SkillNameFull { get; set; } public string? SkillCode { get; set; } public byte SkillScope { get; set; } public byte IsSpecialChar { get; set; } public byte LevelCount { get; set; } public short MatrixSeqNo { get; set; } // ── Joined display fields — MSKILLGROUP (S2) ───────────── public int GroupId { get; set; } public string? GroupName { get; set; } // ── Joined display fields — MSKILLLEVEL (S4) ───────────── public string? LevelLabel { get; set; } public string? LevelDescriptor { get; set; } } }