public IActionResult InvoiceComplete() { try { PurchaseForm purchaseForm = JsonConvert.DeserializeObject <PurchaseForm>(TempData["purchaseForm"].ToString()); EmailSender email = new EmailSender(_smtpSettings); if (purchaseForm.PersonalInformation.PaymentMethod == "Paypal") { PayPalV2.captureOrder(purchaseForm.PayPalCapture); } purchaseForm = PurchaseOrderRepository.Add(purchaseForm); if (purchaseForm.Discount != null && purchaseForm.Discount.SingleUse) { DiscountModelRepository.SetNotInUse(purchaseForm.Discount); } var bot = new DiscordBot(); bot.RunAsync(purchaseForm).GetAwaiter().GetResult(); string emailbody = string.Empty; switch (purchaseForm.PurchaseType) { case PurchaseTypeEnum.PurchaseType.SoloBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderSoloEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.DuoBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderDuoEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.WinBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderWinBoostEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.PlacementMatches: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderPlacementMatchesEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.TFTPlacement: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderTFTPlacementMatchesEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.TFTBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderTFTSoloBoostEmail", purchaseForm).Result; break; default: emailbody = JsonConvert.SerializeObject(purchaseForm); break; } email.SendEmailAsync(purchaseForm.PersonalInformation.Email, $"Purchase Order", emailbody); if (User.Identity.IsAuthenticated) { return(RedirectToAction("OrderDetails", "ClientArea", new { hash = EncryptionHelper.Encrypt(purchaseForm.Id) })); } else { TempData.Put("completePurchaseForm", purchaseForm); return(RedirectToAction("InvoiceDetails", "Invoice")); } } catch (Exception e) { } return(View()); }
public IActionResult PurchaseQuote() { try { PurchaseForm purchaseForm = JsonConvert.DeserializeObject <PurchaseForm>(TempData["purchaseFormlData"].ToString()); EmailSender email = new EmailSender(_smtpSettings); if (purchaseForm.PersonalInformation.PaymentMethod == "Paypal") { PayPalV2.captureOrder(purchaseForm.PayPalCapture); } PurchaseOrderRepository.Add(purchaseForm); if (purchaseForm.Discount != null && purchaseForm.Discount.SingleUse) { DiscountModelRepository.SetNotInUse(purchaseForm.Discount); } var bot = new DiscordBot(); bot.RunAsync(purchaseForm).GetAwaiter().GetResult(); string emailbody = string.Empty; switch (purchaseForm.PurchaseType) { case PurchaseTypeEnum.PurchaseType.SoloBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderSoloEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.DuoBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderDuoEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.WinBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderWinBoostEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.PlacementMatches: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderPlacementMatchesEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.TFTPlacement: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderTFTPlacementMatchesEmail", purchaseForm).Result; break; case PurchaseTypeEnum.PurchaseType.TFTBoosting: emailbody = RenderPartialViewToString("EmailTemplates/PurchaseOrderTFTSoloBoostEmail", purchaseForm).Result; break; default: emailbody = JsonConvert.SerializeObject(purchaseForm); break; } email.SendEmailAsync(purchaseForm.PersonalInformation.Email, $"Purchase Order", emailbody); } catch (Exception e) { } return(View()); }