public ActionResult Create3(VMEditMonthlyAttendance vm) { VMLoggedUser LoggedInUser = Session["LoggedInUser"] as VMLoggedUser; int count = Convert.ToInt32(Request.Form["Count"].ToString()); List <MonthData> oldAttendance = new List <MonthData>(); List <int?> empIds = new List <int?>(); Expression <Func <MonthData, bool> > MonthlyAttendances = aa => aa.PayrollPeriodID == vm.PayrolPeriodID; oldAttendance = MonthDataRepository.FindBy(MonthlyAttendances); string Message = ""; for (int i = 1; i <= count; i++) { int EmpID = Convert.ToInt32(Request.Form["Emp-" + i.ToString()].ToString()); MonthData att = oldAttendance.First(aa => aa.EmployeeID == EmpID); string TotalDays = Request.Form["TD-" + i.ToString()].ToString(); string PaidDays = Request.Form["PD-" + i.ToString()].ToString(); string AbsentDays = Request.Form["AB-" + i.ToString()].ToString(); string Remarks = ""; EditMonthlyAttendanceList editlist = MonthlyEditorService.GetEditMonthlyAttendanceList(EmpID, vm.PayrolPeriodID, TotalDays, PaidDays, AbsentDays, Remarks); string val = MonthlyEditorService.CheckMonthRecordIsEdited(att, editlist); if (val == "Time") { // SavMonthlyData MonthDataEdit ame = new MonthDataEdit(); ame.DataEditDate = DateTime.Now; ame.EmployeeID = att.EmployeeID; ame.NewAbsentDays = editlist.AbsentDays; ame.OldAbsentDays = att.AbsentDays; ame.NewTotalDays = editlist.TotalDays; ame.OldTotalDays = att.TotalDays; ame.NewPaidDays = editlist.PaidDays; ame.OldPaidDays = att.WorkDays; ame.PayrollPeriodID = att.PayrollPeriodID; ame.UserID = LoggedInUser.PUserID; ame.NewRemarks = Remarks; MonthDataEditRepository.Add(ame); MonthDataEditRepository.Save(); //Change in AttMonth att.AbsentDays = editlist.AbsentDays; att.WorkDays = editlist.PaidDays; att.TotalDays = editlist.TotalDays; if (att.Remarks != null) { if (!att.Remarks.Contains('M')) { att.Remarks = Remarks + "[M]"; } else { att.Remarks = att.Remarks; } } else { att.Remarks = "[M]"; } MonthDataRepository.Edit(att); MonthDataRepository.Save(); empIds.Add(att.EmployeeID); } } List <VAT_MonthlySummary> MonthlyAttendance = new List <VAT_MonthlySummary>(); List <VAT_MonthlySummary> tempMonthlyAttendance = new List <VAT_MonthlySummary>(); //var checkedEmps = form.GetValues("cbEmployee"); Expression <Func <VAT_MonthlySummary, bool> > MonthlyAttendances2 = aa => aa.PayrollPeriodID == vm.PayrolPeriodID; MonthlyAttendance = VMonthlyDataRepository.FindBy(MonthlyAttendances2); foreach (var item in empIds) { int empid = Convert.ToInt32(item); if (MonthlyAttendance.Where(aa => aa.EmployeeID == empid).Count() > 0) { tempMonthlyAttendance.Add(MonthlyAttendance.First(aa => aa.EmployeeID == empid)); } } if (tempMonthlyAttendance.Count > 0) { return(View("Create3", MonthlyEditorService.GetMonthlyAttendanceAttributes(tempMonthlyAttendance, vm.PayrolPeriodID))); } ViewBag.PayrolPeriodID = new SelectList(DDService.GetPayrollPeriod().ToList().OrderBy(aa => aa.PRName).ToList(), "PPayrollPeriodID", "PRName"); return(View("Create1")); }
public VMEditMonthlyAttendance GetMonthlyAttendanceAttributes(List <VAT_MonthlySummary> MonthlyAttendance, int PayrollID) { VMEditMonthlyAttendance entries = new VMEditMonthlyAttendance(); List <EditMonthlyAttendanceList> list = new List <EditMonthlyAttendanceList>(); int count = 1; foreach (var item in MonthlyAttendance) { EditMonthlyAttendanceList eal = new EditMonthlyAttendanceList(); eal.EmployeeID = (int)item.EmployeeID; eal.No = count; count++; eal.EmpNo = item.OEmpID; eal.EmpName = item.EmployeeName; eal.JobTitleName = item.JobTitleName; eal.TotalDays = 0; eal.PaidDays = 0; eal.AbsentDays = 0; eal.RestDays = (float)item.RestDays; eal.LeaveDays = (float)item.LeaveDays; if (item.AbsentDays != null) { eal.AbsentDays = (float)item.AbsentDays; } if (item.WorkDays != null) { eal.PaidDays = (float)item.WorkDays; } if (item.TotalDays != null) { eal.TotalDays = (float)item.TotalDays; } if (item.WOPLeavesDays != null) { eal.LWOPDays = (float)item.WOPLeavesDays; } //if (item.TNOT != null) //{ // eal.NOT = ATAssistant.GetTimeHours(item.TNOT); //} if (item.EncashbaleSingleOT != null) { eal.SingleEncashableOT = ATAssistant.GetTimeHours(item.EncashbaleSingleOT); } //if (item.TROT != null) //{ // eal.ROT = ATAssistant.GetTimeHours(item.TROT); //} if (item.EncashbaleDoubleOT != null) { eal.DoubleEncashableOT = ATAssistant.GetTimeHours(item.EncashbaleDoubleOT); } //if (item.TGZOT != null) //{ // eal.GOT = ATAssistant.GetTimeHours(item.TGZOT); //} if (item.CPLConversionOT != null) { eal.CPLOT = ATAssistant.GetTimeHours(item.CPLConversionOT); } //if (item.TotalOT != null) //{ // eal.TotalOT = ATAssistant.GetTimeHours(item.TotalOT); //} if (item.Remarks == null) { eal.Remarks = ""; } else { eal.Remarks = item.Remarks; } list.Add(eal); } //list.Add(GetTotalCount(list)); // entries.Locations = locs; entries.MonthlyList = list.OrderBy(aa => aa.EmployeeID).ToList(); entries.Count = list.Count; entries.PayrolPeriodID = PayrollID; //entries.PayrollName = PRName; return(entries); }