Ejemplo n.º 1
0
        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));
        }