using System; using System.Collections.Generic; namespace SkillManagementDAL.DTO.SkillMatrixConfig { public class SkillMatrixConfigDTO { public int ConfigId { get; set; } public string MatrixCode { get; set; } = string.Empty; public string MatrixTitle { get; set; } = string.Empty; public int DomainId { get; set; } = -1; public string? DomainName { get; set; } public string? TargetDept { get; set; } public string? DepartmentCode { get; set; } public string? DepartmentName { get; set; } // ========================= // RAW STORAGE FIELDS // ========================= public string? TargetRoleIdsJson { get; set; } public string? ModelIdsJson { get; set; } public string? IncludeSkillIdsJson { get; set; } // ========================= // PARSED (SAFE USAGE) // ========================= public List TargetRoleIds { get; set; } = new(); public List ModelIds { get; set; } = new(); public List IncludeSkillIds { get; set; } = new(); public int ProductFamilyId { get; set; } = -1; public string ProductFamilyCode { get; set; } public string ProductFamilyName { get; set; } public byte ShowSummaryRow { get; set; } = 1; public byte ShowMinLevel { get; set; } = 1; public int? UpdateFrequency { get; set; } public byte IsActive { get; set; } = 1; public short Version { get; set; } public byte Status { get; set; } = 1; public short SortOrder { get; set; } public int CreatedById { get; set; } public DateTime? CreatedOn { get; set; } public int ModifiedById { get; set; } public DateTime? ModifiedOn { get; set; } public byte SourceType { get; set; } = 5; public int TenantId { get; set; } // DISPLAY public string RoleNames { get; set; } = string.Empty; public string ModelNames { get; set; } = string.Empty; public string SkillNames { get; set; } = string.Empty; } }