public ActionResult Cancelled(int id) { var slip = SlippingRepository.GetSummaries(MPID, SlippingUser.ID).FirstOrDefault(s => s.ID == id); if (slip != null) { return(View(slip)); } else { return(RedirectToAction("NotFound", "Home")); } }
private int SubmitSlippingRequest(SlippingRequest slippingRequest) { return(SlippingRepository.SubmitSlippingRequest(slippingRequest, SlippingUser.ID)); }
private int CreateOrUpdate(SlippingRequest slippingRequest) { return(SlippingRepository.CreateOrUpdate(slippingRequest, MPID, SlippingUser.ID)); }
private SlippingRequest Get(int requestId) { return(SlippingRepository.Get(requestId, SlippingUser.ID)); }
public ActionResult Review(int id, SlipSummary model) { var slip = SlippingRepository.GetSummaries(MPID, SlippingUser.ID).FirstOrDefault(s => s.ID == id); if (slip != null && slip.Status != "Refused" && slip.Status != "Revoked" && slip.Status != "Cancelled") { string displayDate = GetDateForEmail(slip.FromDate, slip.ToDate); if (CancelSlip(slip, SlippingUser.ID)) { Dictionary <string, dynamic> parameters = new Dictionary <string, dynamic>() { { "absence_date", displayDate }, { "name", string.Format("{0} {1}", SlippingUser.Forenames, SlippingUser.Surname) }, { "reference", slip.ID } }; if (!string.IsNullOrEmpty(NotifyTemplateId_SlippingRequestCancelledUser)) { if (!SlippingUser.IsMP) { SendNotification(NotifyTemplateId_SlippingRequestCancelledUser, SlippingUser.EmailAddress, new Dictionary <string, dynamic>() { { "absence_date", displayDate }, { "name", string.Format("{0} {1}", SlippingUser.Forenames, SlippingUser.Surname) }, { "reference", slip.ID } }); } MP mp = this.MPRepository.Get(slip.MPID, SlippingUser.ID); if (mp != null) { SendNotification(NotifyTemplateId_SlippingRequestCancelledUser, GetMPEmailAddress(slip.MPID, SlippingUser.ID), new Dictionary <string, dynamic>() { { "absence_date", displayDate }, { "name", mp.Name }, { "reference", slip.ID } }); } else { throw new Exception(string.Format("Cannot find MP for Slip {0}.", slip.ID)); } } else { throw new Exception("NotifyTemplateId_SlippingRequestCancelledUser in web.config missing or invalid"); } if (!string.IsNullOrEmpty(NotifyTemplateId_SlippingRequestCancelledAdmin) && !string.IsNullOrEmpty(SlippingRequestReviewersEmailAddress)) { SendNotification(NotifyTemplateId_SlippingRequestCancelledAdmin, SlippingRequestReviewersEmailAddress, new Dictionary <string, dynamic>() { { "absence_date", displayDate }, { "name", string.Format("{0} {1}", SlippingUser.Forenames, SlippingUser.Surname) }, { "reference", slip.ID } }); } else { throw new Exception("NotifyTemplateId_SlippingRequestCancelledAdmin and/or SlippingRequestReviewersEmailAddress in web.config missing or invalid"); } return(RedirectToAction("Cancelled")); } else { ModelState.AddModelError("ID", "Error cancelling slip. Please try again later or contact the Whips Office."); return(View(slip)); } } else { return(RedirectToAction("NotFound", "Home")); } }
private bool DatesOverlapExistingSlip(int MPID, DateTime fromDate, DateTime toDate) { return(SlippingRepository.DatesOverlapExistingSlip(MPID, fromDate, toDate)); }
private bool CancelSlip(SlipSummary slip, int userId) { return(SlippingRepository.CancelSlip(userId, slip)); }