public ActionResult HelpMeCalculate(HelpmecalculateviewModel model) { EmployeeEmploymentViewModel emodel = new EmployeeEmploymentViewModel(); var userinfo = _db.AspNetUsers.Where(x => x.Id == model.EmployeeID).FirstOrDefault(); model.StartDate = String.Format("{0:dd-MM-yyyy}", userinfo.StartDate); if (userinfo.JobContryID == null) { userinfo.JobContryID = 1; } model.CountryId = (int)userinfo.JobContryID; List <SelectListItem> data = new List <SelectListItem>(); HelpmeCalculeteModel Details = new HelpmeCalculeteModel(); int totalDays = 0; int enti = Convert.ToInt32(model.FullTimeEntitlement); Details = _employeeMethod.GetPublicHolidayByContryId(model.StartDate, model.CountryId); if (model.IncludePublicHolidays == "on") { emodel.includeThisYear = HolidayIncludeContractDays(model.EmployeeID, enti); data.Add(new SelectListItem { Text = emodel.includeThisYear.ToString(), Value = "holidaysThisYear" }); } else { emodel.notincludeThisYear = HolidayNotIncludeContractDays(model.EmployeeID, enti); data.Add(new SelectListItem { Text = emodel.notincludeThisYear.ToString(), Value = "holidaysThisYear" }); } if (enti != null && enti != 0) { double totalHoliday = HolidayIncludeContractDays(model.EmployeeID, enti); var edata = _db.Employee_Salary.Where(x => x.Archived == false && x.EmployeeID == model.EmployeeID).FirstOrDefault(); if (edata != null) { double rate = Convert.ToDouble(edata.TotalSalary) / totalHoliday; data.Add(new SelectListItem { Text = emodel.rate.ToString(), Value = "recovryRate" }); } } data.Add(new SelectListItem { Text = enti.ToString(), Value = "holidaysNextYear" }); return(Json(data, JsonRequestBehavior.AllowGet)); }
public ActionResult HelpMeCalculate(HelpmecalculateviewModel model) { var userinfo = _db.AspNetUsers.Where(x => x.Id == model.EmployeeID).FirstOrDefault(); model.StartDate = String.Format("", userinfo.StartDate); if (userinfo.JobContryID == null) { userinfo.JobContryID = 1; } model.CountryId = (int)userinfo.JobContryID; List <SelectListItem> data = new List <SelectListItem>(); HelpmeCalculeteModel Details = new HelpmeCalculeteModel(); int totalDays = 0; Details = _employeeMethod.GetPublicHolidayByContryId(model.StartDate, model.CountryId); if (model.IncludePublicHolidays == "on") { decimal contractdays = Details.totalWorkingDays - (Details.TotalHolidayYear + (Convert.ToInt16(model.FullTimeEntitlement) - Details.TotalHolidayYear)); decimal Accrualholidayrateperday = Math.Round((Convert.ToDecimal(model.FullTimeEntitlement) - Details.TotalHolidayYear) / contractdays, 2); int Remainingholidays = Convert.ToInt16(Accrualholidayrateperday * Details.remainiingDays); decimal RemainingHolidyasFromStatDate = Details.TotalRemainingHolidays; totalDays = Convert.ToInt16(Remainingholidays + RemainingHolidyasFromStatDate); } else { decimal contractdays = Details.totalWorkingDays - (Details.TotalHolidayYear + Convert.ToInt16(model.FullTimeEntitlement)); decimal Accrualholidayrateperday = Math.Round((Convert.ToDecimal(model.FullTimeEntitlement) - Details.TotalHolidayYear) / contractdays, 2); decimal Remainingholidays = Accrualholidayrateperday * Details.remainiingDays; decimal RemainingHolidyasFromStatDate = Details.TotalRemainingHolidays; totalDays = Convert.ToInt16(Remainingholidays + RemainingHolidyasFromStatDate); if (totalDays > 16) { totalDays = totalDays + Convert.ToInt16(RemainingHolidyasFromStatDate); } } data.Add(new SelectListItem { Text = totalDays.ToString(), Value = "holidaysThisYear" }); data.Add(new SelectListItem { Text = model.FullTimeEntitlement.ToString(), Value = "holidaysNextYear" }); return(Json(data, JsonRequestBehavior.AllowGet)); }