using System; namespace RecruitmentDAL.DTO.SelectionProcess { public class SelectionProcessStageDTO { #region SelectionProcessStage public int SelectionProcessStageId { get; set; } #region SelectionProcessTemplate public int SelectionProcessTemplateId { get; set; } public string TemplateName { get; set; } #endregion public string StageName { get; set; } // Ordering of this stage within its template's pipeline public short StageOrder { get; set; } // 1=Applied 2=Screening 3=Interview 4=Assessment 5=Offer 6=PreBoarding 7=Terminal public byte StageCategory { get; set; } public bool IsTerminal { get; set; } // FK TMS MQUIZ (cross-module, not a hard FK — see 20260903_Recruitment_Phase2_ // QuizScreening_Schema_SqlServer.sql). -1 = no quiz required for this stage. // Only meaningful for a Screening/Assessment stage (StageCategory 2/4), but not // enforced at that granularity — any stage may optionally name a gating quiz. public int QuizId { get; set; } = -1; #endregion #region Base public short SortOrder { get; set; } public byte Status { get; set; } public short Version { get; set; } public int TenantId { get; set; } #endregion #region Standard public int CreatedById { get; set; } public DateTime CreatedOn { get; set; } public string CreatedByName { get; set; } public int ModifiedById { get; set; } public DateTime ModifiedOn { get; set; } public string ModifiedByName { get; set; } #endregion } }