using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace RecruitmentDAL.DTO.ManpowerBudget { // Recruitment Phase 6 — Hiring budget / manpower planning tie-in. One row per // (Department, FiscalYear, FiscalQuarter) tenant-scoped period, carrying the // approved headcount/budget ceiling for that period and a running consumed tally. // JobRequisitionDTO.BudgetReferenceId (already on TJOBREQUISITION since Phase 1) can point // directly at a specific ManpowerBudgetId; JobRequisitionBLL.ApproveJobRequisition falls back // to a Department+FiscalYear lookup when BudgetReferenceId is unset (-1) — see that method's // doc comment for the full resolution order. public class ManpowerBudgetDTO { #region PrivateMembers #region ManpowerBudget private int manpowerbudgetid; //Id private int departmentid = -1; //FK MDEPARTMENT private short fiscalyear; //e.g. 2026 private byte fiscalquarter; //0=whole-year 1..4=quarter private short approvedheadcount; //ceiling for this period private decimal approvedbudgetamount; //ceiling for this period private short consumedheadcount; //running tally, incremented on JobRequisition approval private decimal consumedbudgetamount; //running tally, incremented on JobRequisition approval #endregion #region Base private int createdbyid; //CreatedById private DateTime createdon; //CreatedOn private string createdbyname; //CreatedByName private int modifiedbyid; //ModifiedById private DateTime modifiedon; //ModifiedOn private string modifiedbyname; //ModifiedByName #endregion #region Standard private short sortorder; //SortOrder private byte status; //Status private short version; //Version private int tenantid; //TenantId #endregion #endregion #region PublicMembers #region ManpowerBudget public int ManpowerBudgetId { get { return manpowerbudgetid; } set { manpowerbudgetid = value; } } public int DepartmentId { get { return departmentid; } set { departmentid = value; } } public short FiscalYear { get { return fiscalyear; } set { fiscalyear = value; } } public byte FiscalQuarter { get { return fiscalquarter; } set { fiscalquarter = value; } } public short ApprovedHeadcount { get { return approvedheadcount; } set { approvedheadcount = value; } } public decimal ApprovedBudgetAmount { get { return approvedbudgetamount; } set { approvedbudgetamount = value; } } public short ConsumedHeadcount { get { return consumedheadcount; } set { consumedheadcount = value; } } public decimal ConsumedBudgetAmount { get { return consumedbudgetamount; } set { consumedbudgetamount = value; } } #endregion #region Base public int CreatedById { get { return createdbyid; } set { createdbyid = value; } } public DateTime CreatedOn { get { return createdon; } set { createdon = value; } } public string CreatedByName { get { return createdbyname; } set { createdbyname = value; } } public int ModifiedById { get { return modifiedbyid; } set { modifiedbyid = value; } } public DateTime ModifiedOn { get { return modifiedon; } set { modifiedon = value; } } public string ModifiedByName { get { return modifiedbyname; } set { modifiedbyname = value; } } #endregion #region Standard public short SortOrder { get { return sortorder; } set { sortorder = value; } } public byte Status { get { return status; } set { status = value; } } public short Version { get { return version; } set { version = value; } } public int TenantId { get { return tenantid; } set { tenantid = value; } } #endregion #endregion } }