public ActionResult CancellationRequest(SupportRequest supportrequest, FormCollection collection) { if (ModelState.IsValid && collection != null) { Audit audit = new Audit(); audit.ByUserID = user.ID; audit.DateCreated = System.DateTimeWithZone.Now; audit.DateModified = System.DateTimeWithZone.Now; audit.HttpHeaderDump = HttpUtility.UrlDecode(System.Web.HttpContext.Current.Request.Headers.ToString()); audit.IP = System.Web.HttpContext.Current.Request.UserHostAddress; SupportRequest sr = new SupportRequest(); sr.isOpen = true; sr.OrderDetailID = Convert.ToInt32(collection["requestid"]); sr.RefundStatusID = Convert.ToInt16(collection["RefundStatusID"]); sr.SiteID = Site.ID; sr.SupportTypeID = (int)SupportType.REFUNDREQUEST; sr.UserID = user.ID; sr.ExternalIncidentID = string.Empty; sr.AuditDetails = audit; sr.Subject = @WBSSLStore.Resources.GeneralMessage.Message.RefundRequest_Caption + "-" + @WBSSLStore.Resources.GeneralMessage.Message.Invoice_Header + "#" + (collection["IncidentID"]); sr.User = user; sr.Reason = collection["ddlReason"]; SupportDetail sd = new SupportDetail(); sd.AuditDetails = audit; sd.SupportRequest = sr; sd.StaffNote = ""; sd.Comments = "<span><b>" + user.FirstName + " " + user.LastName + " ( " + DateTimeWithZone.Now + " )</b></span><p>" + collection["txtcomment"] + "<p/>"; _viewModel.Add(sd); _unitOfWork.Commit(); var _newsupportdetail = _viewModel.Find(d => d.ID == sd.ID) .EagerLoad(d => d.SupportRequest, d => d.SupportRequest.User, d => d.SupportRequest.OrderDetail) .FirstOrDefault(); _newsupportdetail.SupportRequest.OrderDetail.InvoiceNumber = WBHelper.InvoicePrefix(Site) + _newsupportdetail.SupportRequest.OrderDetail.OrderID; var _emailService = DependencyResolver.Current.GetService <IEmailQueueService>(); if (sd.SupportRequest.User.UserType == UserType.RESELLER) { _emailService.PrepareEmailQueue(Site.ID, LangID, EmailType.RESELLER_SUPPORT_NOTIFICATION, SMTPID, sd.SupportRequest.User.Email, _newsupportdetail); } else { _emailService.PrepareEmailQueue(Site.ID, LangID, EmailType.CUSTOMER_SUPPORT_NOTIFICATION, SMTPID, sd.SupportRequest.User.Email, _newsupportdetail); } //send mail to admin _emailService.PrepareEmailQueue(Site.ID, LangID, EmailType.ADMIN_SUPPORT_NOTIFICATION, SMTPID, WBHelper.SiteAdminEmail(Site), _newsupportdetail); _unitOfWork.Commit(); } return(RedirectToAction("index")); }
// // GET: /Client/Support/Create public ActionResult CancellationRequest(int id) { OrderDetail ord = _service.FindByID(id); if (ord != null) { ViewBag.OrderDetailID = ord.ID; ViewBag.IncidentID = WBHelper.InvoicePrefix(Site) + ord.OrderID; ViewBag.ProductName = ord.ProductName; ViewBag.ExOrderID = ord.ExternalOrderID; } ViewBag.Username = user != null ? user.FirstName + " " + user.LastName : string.Empty; SupportRequest _supportrequest = DependencyResolver.Current.GetService <SupportRequest>(); return(View(_supportrequest)); }