コード例 #1
0
        //SaveCreditAdjustment
        public ActionResult SaveCreditAdjustment(LeaveCreditAdjustFormViewModel model)
        {
            var message = "OK";

            if (model.NofDays > 0)
            {
                if (model.Credit == 1)
                {
                    AddActions(model, 4, 1);
                }
                else if (model.Credit == 2)
                {
                    if (model.NofDays <= model.Balance)
                    {
                        {
                            AddActions(model, 13, -1);
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", MsgUtils.Instance.Trls("NotEnoughBalance"));
                        return(Json(Models.Utils.ParseFormErrors(ModelState)));
                    }
                }
            }
            else
            {
                ModelState.AddModelError("", MsgUtils.Instance.Trls("EnterNoOfDays"));
                return(Json(Models.Utils.ParseFormErrors(ModelState)));
            }

            var Errors = SaveChanges(Language);

            if (Errors.Count > 0)
            {
                message = Errors.First().errors.First().message;
            }
            return(Json(message));
        }
コード例 #2
0
        public void AddActions(LeaveCreditAdjustFormViewModel model, short transType, short transFlag)
        {
            var Absence = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == model.TypeId).Select(s => s.AbsenceType).FirstOrDefault();

            var TransRecord = new LeaveTrans()
            {
                AbsenceType = Absence,
                CompanyId   = CompanyId,
                CreatedUser = UserName,
                CreatedTime = DateTime.Now,
                TransFlag   = transFlag,
                EmpId       = model.EmpId,
                PeriodId    = model.PeriodId,
                TypeId      = model.TypeId,
                TransDate   = DateTime.Now,
                TransType   = transType,
                TransQty    = model.NofDays
            };

            _hrUnitOfWork.LeaveRepository.Add(TransRecord);
            var AdjustRecord = new LeaveAdjust()
            {
                NofDays     = model.NofDays,
                EmpId       = model.EmpId,
                PeriodId    = model.PeriodId,
                CreatedUser = UserName,
                CreatedTime = DateTime.Now,
                TypeId      = model.TypeId,
                AdjustDate  = DateTime.Now,
                CompanyId   = CompanyId,
                TransType   = transType,
                PayDone     = false
            };

            _hrUnitOfWork.LeaveRepository.Add(AdjustRecord);
        }