Esempio n. 1
0
        // GET: AbsenceAllocationController/Details/5
        public ActionResult Details(string id)
        {
            var student     = _mapper.Map <StudentViewModel>(_userManager.FindByIdAsync(id).Result);
            var allocations = _mapper.Map <List <AbsenceAllocationViewModel> >(_absenceAllocationRepository.GetAbsenceAllocationsByStudent(id));
            var model       = new ViewAbsenceAllocationViewModel
            {
                Student            = student,
                AbsenceAllocations = allocations
            };

            return(View(model));
        }
Esempio n. 2
0
        public ActionResult ApprouveRequest(int id)
        {
            try
            {
                var user           = _userManager.GetUserAsync(User).Result;
                var AbsenceRequest = _absenceRequestRepo.GetById(id);
                var allocation     = _absenceAllocationRepository.GetAbsenceAllocationsByStudent(AbsenceRequest.RequestingStudentId).FirstOrDefault(x => x.AbsenceTypeId == AbsenceRequest.AbsenceTypeId);

                int daysRequested = (int)(AbsenceRequest.EndDate - AbsenceRequest.StartDate).TotalDays;
                allocation.NumberOfDays -= daysRequested;

                AbsenceRequest.Approved     = true;
                AbsenceRequest.ApprovedById = user.Id;
                AbsenceRequest.ActionDate   = DateTime.Now;
                _absenceRequestRepo.Update(AbsenceRequest);
                _absenceAllocationRepository.Update(allocation);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                return(RedirectToAction("Index"));
            }
        }