public ActionResult Create(PayrollCreateViewModel payrollModel) { payrollModel.EmployeePayrolls[0].AllowanceMonth = (DateTime)payrollModel.AllowanceMonth; var payrollToBeSaved = payrollModel.EmployeePayrolls.Select(x => x.CreateFromClientToServer(User.Identity.GetUserId())).ToList(); payrollService.SaveUpdate(payrollToBeSaved); TempData["Message"] = new MessageViewModel { IsSaved = true, Message = "Payroll has been saved successfully." }; return(RedirectToAction("Index")); }
public ActionResult Create(int?Eid, DateTime?M) { var payrollBaseaData = payrollService.GetPayrollData(Eid, M); var GMT = Convert.ToInt32(Session["ClientGMT"]); var model = new PayrollCreateViewModel { Employees = payrollBaseaData.Employees.Select(x => x.CreateFromServerToClient(GMT)).OrderBy(x => x.FullName).ToList(), AllowanceTypes = payrollBaseaData.AllowanceTypes.ToList().Select(x => x.CreateFromServerToClient()).OrderBy(x => x.TypeTitle).ToList(), EmployeePayrolls = payrollBaseaData.EmployeePayrolls.ToList().Select(x => x.CreateFromServerToClient()).ToList(), }; if (Eid != null) { if (model.EmployeePayrolls.Any(x => x.AllowanceTypeId == Convert.ToInt32(ConfigurationManager.AppSettings["BasicSalaryId"].ToString()))) { Swap(model.EmployeePayrolls, model.EmployeePayrolls.FindIndex(x => x.AllowanceTypeId == Convert.ToInt32(ConfigurationManager.AppSettings["BasicSalaryId"].ToString())), 0); } model.AllowanceMonth = M; model.Eid = Eid; model.TotalAllowance = model.EmployeePayrolls.Sum(x => x.Amount); } return(View(model)); }