예제 #1
0
        public bool UpdateDesignationwiseSalaryHead(DesignationwiseSalaryHeadModel model)
        {
            bool result = false;
            TBL_MP_HR_DesignationwiseSalaryHeads dbModel = null;

            try
            {
                if (model.ID == 0)
                {
                    dbModel = new TBL_MP_HR_DesignationwiseSalaryHeads();
                }
                else
                {
                    dbModel = _dbContext.TBL_MP_HR_DesignationwiseSalaryHeads.Where(x => x.PK_ID == model.ID).FirstOrDefault();
                }

                if (model.IsSelected)
                {
                    dbModel.FK_DesignationID       = model.DesignationID;
                    dbModel.FK_EmploymentTypeID    = (int)model.EmploymentType;
                    dbModel.FK_SalaryHeadID        = model.SalaryHeadID;
                    dbModel.ApplicableChargesType  = (int)model.ApplicableChargesType;
                    dbModel.ApplicableChargesValue = model.ApplicableChargesValue;
                    dbModel.SalaryHeadAmount       = model.SalaryHeadAmount;
                    dbModel.IsDeleted = !model.IsSelected;
                }
                else
                {
                    dbModel.ApplicableChargesType  = (int)ITEM_CHARGE_TYPE.LUMPSUM;
                    dbModel.ApplicableChargesValue = 0;
                    dbModel.SalaryHeadAmount       = 0;
                    dbModel.IsDeleted = true;
                }


                if (dbModel.PK_ID == 0)
                {
                    _dbContext.TBL_MP_HR_DesignationwiseSalaryHeads.Add(dbModel);
                }

                _dbContext.SaveChanges();
                result = true;
            }
            catch (Exception ex)
            {
                string errMessage = ex.Message;
                if (ex.InnerException != null)
                {
                    errMessage += string.Format("\n{0}", ex.InnerException.Message);
                }
                MessageBox.Show(errMessage, "ServiceDesignationWiseSalary::UpdateDesignationwiseSalaryHead", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return(result);
        }
        private void UpdateSalaryHeadInfo(DesignationwiseSalaryHeadModel model, SALARY_HEAD_TYPE headType)
        {
            DesignationwiseSalaryHeadModel prevModel = null;

            try
            {
                frmAddEditDesignationwiseSalaryHeadValue frm = new frmAddEditDesignationwiseSalaryHeadValue(model);
                if (frm.ShowDialog() == DialogResult.OK)
                {
                    switch (headType)
                    {
                    case SALARY_HEAD_TYPE.ALLOUNCE:
                        prevModel = _AllouncesList.Where(x => x.SalaryHeadID == frm.MODEL.SalaryHeadID).FirstOrDefault();
                        break;

                    case SALARY_HEAD_TYPE.DEDUCTION:
                        prevModel = _DeductionsList.Where(x => x.SalaryHeadID == frm.MODEL.SalaryHeadID).FirstOrDefault();
                        break;
                    }

                    if (prevModel.ApplicableChargesType == ITEM_CHARGE_TYPE.PERCENTAGE)
                    {
                        DesignationwiseSalaryHeadModel basic = this.GetBasicSalaryHeadModel();
                        if (basic != null)
                        {
                            prevModel.SalaryHeadAmount = (basic.SalaryHeadAmount * prevModel.ApplicableChargesValue) / 100;
                        }
                    }
                    if (prevModel.ApplicableChargesType == ITEM_CHARGE_TYPE.LUMPSUM)
                    {
                        prevModel.SalaryHeadAmount = prevModel.ApplicableChargesValue;
                    }

                    (new ServiceDesignationWiseSalary()).UpdateDesignationwiseSalaryHead(prevModel);
                }
            }
            catch (Exception ex)
            {
                string errMessage = ex.Message;
                if (ex.InnerException != null)
                {
                    errMessage += string.Format("\n{0}", ex.InnerException.Message);
                }
                MessageBox.Show(errMessage, "ControlCTCConfiguration::UpdateSalaryHeadInfo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private DesignationwiseSalaryHeadModel GetBasicSalaryHeadModel()
        {
            DesignationwiseSalaryHeadModel BasicSalary = null;

            try
            {
                //GET BASIC SALARY HEAD INFO
                int basicSalaryHeadID = Program.LIST_DEFAULTS.Where(x => x.ID == (int)APP_DEFAULT_VALUES.BasicSalaryHeadID).FirstOrDefault().DEFAULT_VALUE;
                BasicSalary = _AllouncesList.Where(X => X.SalaryHeadID == basicSalaryHeadID).FirstOrDefault();
            }
            catch (Exception ex)
            {
                string errMessage = ex.Message;
                if (ex.InnerException != null)
                {
                    errMessage += string.Format("\n{0}", ex.InnerException.Message);
                }
                MessageBox.Show(errMessage, "ControlCTCConfiguration::GetBasicSalaryHeadModel", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return(BasicSalary);
        }
 private void gridDeductions_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         int salaryHeadID = (int)gridDeductions.Rows[e.RowIndex].Cells["SalaryHeadID"].Value;
         // get the object from _DeductionsList collection for the selected SlaryHEadID
         DesignationwiseSalaryHeadModel model = _DeductionsList.Where(x => x.SalaryHeadID == salaryHeadID).FirstOrDefault();
         if (model != null)
         {
             UpdateSalaryHeadInfo(model, SALARY_HEAD_TYPE.DEDUCTION);
         }
         PopulateDefaultDeductionGrid();
     }
     catch (Exception ex)
     {
         string errMessage = ex.Message;
         if (ex.InnerException != null)
         {
             errMessage += string.Format("\n{0}", ex.InnerException.Message);
         }
         MessageBox.Show(errMessage, "ControlCTCConfiguration::gridDeductions_CellDoubleClick", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
예제 #5
0
        public List <DesignationwiseSalaryHeadModel> GetAllDeductionsSalaryHeadsForDesignation(int designationID, EMPLOYMENT_TYPE EmploymentType)
        {
            List <DesignationwiseSalaryHeadModel> lstDeduction = new List <DesignationwiseSalaryHeadModel>();

            try
            {
                List <SelectListItem> lstDesignations = (new ServiceMASTERS()).GetAllDesignation();
                List <SelectListItem> lstSalaryHeads  = (new ServiceMASTERS()).GetAllSalaryHeads();

                int DEDUCTION_CATEGORY_ID = 0;
                DEDUCTION_CATEGORY_ID = _dbContext.APP_DEFAULTS.Where(X => X.ID == (int)APP_DEFAULT_VALUES.SalaryHeadDEDUCTIONType).FirstOrDefault().DEFAULT_VALUE;
                List <TBl_MP_HR_SalaryHead> lstSalaryHeadsDeduction = (new ServiceSalaryHead()).GetAllSalaryHeadsofType(DEDUCTION_CATEGORY_ID);
                foreach (TBl_MP_HR_SalaryHead salaryHeadItem in lstSalaryHeadsDeduction)
                {
                    DesignationwiseSalaryHeadModel model = new DesignationwiseSalaryHeadModel();
                    model.EmploymentType = EmploymentType;
                    model.SalaryHeadID   = salaryHeadItem.pK_SH_ID;
                    model.SalaryHeadName = lstSalaryHeads.Where(x => x.ID == salaryHeadItem.fK_Usrlst_SH_ID).FirstOrDefault().Description;
                    model.DesignationID  = designationID;
                    if (lstDesignations.Where(x => x.ID == designationID).FirstOrDefault() != null)
                    {
                        model.DesignationName = lstDesignations.Where(x => x.ID == designationID).FirstOrDefault().Description;
                    }
                    model.ApplicableChargesType  = ITEM_CHARGE_TYPE.LUMPSUM;
                    model.ApplicableChargesValue = 0;
                    model.ID = 0;
                    model.SalaryHeadAmount = 0;
                    model.IsSelected       = false;
                    lstDeduction.Add(model);
                }
                // UPDATE LIST COLLECTION FROM THE DATABASE
                foreach (DesignationwiseSalaryHeadModel item in lstDeduction)
                {
                    TBL_MP_HR_DesignationwiseSalaryHeads found =
                        (from xx in _dbContext.TBL_MP_HR_DesignationwiseSalaryHeads
                         where xx.FK_DesignationID == designationID &&
                         xx.FK_EmploymentTypeID == (int)EmploymentType &&
                         xx.FK_SalaryHeadID == item.SalaryHeadID &&
                         xx.IsDeleted == false
                         select xx).FirstOrDefault();

                    if (found != null)
                    {
                        item.ApplicableChargesType  = (ITEM_CHARGE_TYPE)found.ApplicableChargesType;
                        item.ApplicableChargesValue = found.ApplicableChargesValue;
                        item.ID = found.PK_ID;
                        item.SalaryHeadAmount = found.SalaryHeadAmount;
                        if (!found.IsDeleted)
                        {
                            item.IsSelected = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string errMessage = ex.Message;
                if (ex.InnerException != null)
                {
                    errMessage += string.Format("\n{0}", ex.InnerException.Message);
                }
                MessageBox.Show(errMessage, "ServiceDesignationWiseSalary::GetAllDeductionsSalaryHeadsForDesignation", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return(lstDeduction);
        }
 public frmAddEditDesignationwiseSalaryHeadValue(DesignationwiseSalaryHeadModel selItem)
 {
     InitializeComponent();
     MODEL = selItem;
 }