public AnnualLeaveCalenderViewModel PopulateAnnualLeaveCalenderView() { DateTime fromDate = DateTime.Parse("31/12/2018"); AnnualLeaveCalenderViewModel m = new AnnualLeaveCalenderViewModel(); List <AnnualLeaveItem> l = new List <AnnualLeaveItem>(); List <EmployeeDto> employees = _employeeService.GetEmployees(); foreach (var e in employees) { List <AnnualLeaveDto> annualLeave = _annualLeaveRepository.GetAnnualLeave(e.EmployeeId, fromDate); if (annualLeave.Count > 0) { l.Add(new AnnualLeaveItem() { EmployeeName = e.Firstname + " " + e.Surname, AnnualLeaveData = annualLeave }); } } // process for calender int year = DateTime.Now.Year; DateTime firstDay = new DateTime(year, 1, 1); DateTime lastDay = new DateTime(year, 12, 31); List <AnnualLeaveCalenderDto> alDto = new List <AnnualLeaveCalenderDto>(); foreach (AnnualLeaveDto annualLeaveDto in _annualLeaveRepository.GetAnnualLeave(firstDay, lastDay)) { alDto.Add(new AnnualLeaveCalenderDto() { title = annualLeaveDto.EmployeeName + " is on AL", start = annualLeaveDto.AnnualLeaveDate.ToString("O"), end = annualLeaveDto.AnnualLeaveDate.ToString("O"), editable = "false", backgroundColor = "yellow", textColor = "black" }); } m.EmployeeAnnualLeaveForCalender = alDto; m.EmployeeAnnualLeaveListing = l; return(m); }
[HttpPost]// GET: AnnualLeave public ActionResult GetCalenderEvents() { AnnualLeaveCalenderViewModel model = _annualLeaveService.PopulateAnnualLeaveCalenderView(); return(Json(model.EmployeeAnnualLeaveForCalender)); }
[HttpGet]// GET: AnnualLeave public ActionResult Calender() { AnnualLeaveCalenderViewModel model = _annualLeaveService.PopulateAnnualLeaveCalenderView(); return(View(model)); }