Esempio n. 1
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"));
            }
        }
Esempio n. 2
0
 public ActionResult Edit(EditAbsenceAllocationViewModel model)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(View(model));
         }
         var record = _absenceAllocationRepository.GetById(model.Id);
         record.NumberOfDays = model.NumberofDays;
         var isSuccess = _absenceAllocationRepository.Update(record);
         if (!isSuccess)
         {
             ModelState.AddModelError("", "Something went wrong while saving");
             return(View(model));
         }
         return(RedirectToAction(nameof(Details), new { id = model.StudentId }));
     }
     catch
     {
         return(View());
     }
 }