/// <summary> ///Create Pdf /// </summary> /// <param name="itemDetails"></param> /// <returns></returns> public FileResult CreatePdf(PaymentDetailsViewModel itemDetails) { MemoryStream workStream = new MemoryStream(); StringBuilder status = new StringBuilder(""); DateTime dTime = DateTime.Now; //file name to be created string strPDFFileName = string.Format("ShipmentPackagingSlip" + dTime.ToString("yyyyMMdd") + "-" + ".pdf"); Document doc = new Document(); //doc.SetMargins(0 f, 0 f, 0 f, 0 f); //Create PDF Table with 5 columns PdfPTable tableLayout = new PdfPTable(5); //doc.SetMargins(0 f, 0 f, 0 f, 0 f); //Create PDF Table string strAttachment = Server.MapPath("~/Downloads/" + strPDFFileName); PdfWriter.GetInstance(doc, workStream).CloseStream = false; doc.Open(); //Add Content to PDF doc.Add(_paymentDetailsService.AddContentToPDF(tableLayout)); // Closing the document doc.Close(); byte[] byteInfo = workStream.ToArray(); workStream.Write(byteInfo, 0, byteInfo.Length); workStream.Position = 0; return File(workStream, "application/pdf", strPDFFileName); }
public async Task<ActionResult> AddPayment(PaymentDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetAccountManagementData(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.RefundViewModel = await GetNewRefundDetailsViewModel(model.NotificationId); accountManagementViewModel.PaymentViewModel = model; accountManagementViewModel.ShowPaymentDetails = true; return View("Index", accountManagementViewModel); } if (model.PaymentMethod != PaymentMethod.Cheque) { model.Receipt = "NA"; } var paymentData = new NotificationTransactionData { Date = model.PaymentDate.AsDateTime().Value, NotificationId = model.NotificationId, Credit = Convert.ToDecimal(model.PaymentAmount), PaymentMethod = model.PaymentMethod, ReceiptNumber = model.Receipt, Comments = model.Comments }; await mediator.SendAsync(new AddNotificationTransaction(paymentData)); return RedirectToAction("Index", "AccountManagement"); }
public async Task <ActionResult> AddPayment(PaymentDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetAccountManagementData(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.RefundViewModel = await GetNewRefundDetailsViewModel(model.NotificationId); accountManagementViewModel.PaymentViewModel = model; accountManagementViewModel.ShowPaymentDetails = true; return(View("Index", accountManagementViewModel)); } if (model.PaymentMethod != PaymentMethod.Cheque) { model.Receipt = "NA"; } var paymentData = new NotificationTransactionData { Date = model.PaymentDate.AsDateTime().Value, NotificationId = model.NotificationId, Credit = Convert.ToDecimal(model.PaymentAmount), PaymentMethod = model.PaymentMethod, ReceiptNumber = model.Receipt, Comments = model.PaymentComments.Trim() }; await mediator.SendAsync(new AddNotificationTransaction(paymentData)); return(RedirectToAction("Index", "AccountManagement")); }
public Task <PaymentDetailsViewModel> GetPaymentPage(CreateOrderFlowContext context, SubmitPaymentDetailsCommand command) { var viewModel = new PaymentDetailsViewModel { FlowContext = context, PaymentMethod = command?.PaymentMethod ?? context.PaymentMethod, }; return(Task.FromResult(viewModel)); }
private PaymentDetailsViewModel CreateDetails(OrderDto orderDto) { var total = _orderService.ComputeTotal(orderDto.Details); var viewModel = new PaymentDetailsViewModel { UserId = orderDto.UserId, OrderId = orderDto.Id, Total = total }; return(viewModel); }
public static PaymentDetailsViewModel ToDetailsViewModel(this Payment source) { var destination = new PaymentDetailsViewModel(); destination.Id = source.Id; destination.InvoiceId = source.InvoiceId; destination.PaymentMethod = source.PaymentMethod.Name; destination.Amount = source.Amount; destination.ProcessedAt = source.ProcessedAt; destination.ProcessedBy = source.User.UserName; return(destination); }
public ViewModelLocator() { if (!DesignerProperties.GetIsInDesignMode(new DependencyObject())) { MainViewModel = new MainViewModel(); HomeViewModel = new HomeViewModel(); PaymentsViewModel = new PaymentsViewModel(); InvoiceViewModel = new InvoicesViewModel(); AddPaymentViewModel = new AddPaymentViewModel(); AddInvoiceViewModel = new AddInvoiceViewModel(); InvoiceDetailsViewModel = new InvoiceDetailsViewModel(); PaymentDetailsViewModel = new PaymentDetailsViewModel(); BalanceStatementViewModel = new BalanceStatementViewModel(); } }
/// <summary> /// Get new order view /// </summary> /// <returns></returns> public ActionResult Index() { PaymentDetailsViewModel viewModel = new PaymentDetailsViewModel(); var paymentTypes = new List<SelectListItem>() { new SelectListItem() { Text = Helpers.EnumHelper.GetDescription(Enums.PaymentCategories.PhysicalProduct).ToString(), Value = ((int)Enums.PaymentCategories.PhysicalProduct).ToString() }, new SelectListItem() { Text = Enums.PaymentCategories.Book.ToString(), Value = ((int)Enums.PaymentCategories.Book).ToString() }, new SelectListItem() { Text = Enums.PaymentCategories.Membership.ToString(), Value = ((int)Enums.PaymentCategories.Membership).ToString() }, new SelectListItem() { Text = Helpers.EnumHelper.GetDescription(Enums.PaymentCategories.UpgradeMembership).ToString(), Value = ((int)Enums.PaymentCategories.UpgradeMembership).ToString() }, }; viewModel.PaymentCategories = paymentTypes; return View("PaymentDetails", viewModel); }
public async Task<ActionResult> AddPayment(Guid id, PaymentDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetImportNotificationAccountOverview(id)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.RefundViewModel = await GetNewRefundDetailsViewModel(id); accountManagementViewModel.PaymentViewModel = model; accountManagementViewModel.ShowPaymentDetails = true; return View("Index", accountManagementViewModel); } await mediator.SendAsync(new AddNotificationPayment(id, model.PaymentAmount.Value, model.PaymentMethod, model.PaymentDate.AsDateTime().Value, model.ReceiptNumber, model.PaymentComments)); return RedirectToAction("Index", "AccountManagement"); }
public ActionResult AddOrderPaymentDetails(PaymentDetailsViewModel model) { if (model != null) { var orderPaymentDetail = MapperHelper.MapSingle<PaymentDetailsViewModel, OrderPaymentDetail>(model); _paymentDetailsService.AddOrderPaymentDetails(orderPaymentDetail); //Send an email if (model.IsActivationUpgradeEmailSent) { //Hardcoded some values to send an email..To be configured in config file var mailModel = new MailModel() { From = "*****@*****.**", To = "*****@*****.**", Subject = model.IsActiveMembership ? "Activate Membership" : "Upgrade Membership", Body = model.IsActiveMembership ? "Membership activated successfully" : "Membership upgraded successfully" }; EmailHelper.SendEmail(mailModel); } } return RedirectToAction("GetOrderPaymentDetails"); }
public async Task <ActionResult> AddPayment(Guid id, PaymentDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetImportNotificationAccountOverview(id)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.RefundViewModel = await GetNewRefundDetailsViewModel(id); accountManagementViewModel.PaymentViewModel = model; accountManagementViewModel.ShowPaymentDetails = true; return(View("Index", accountManagementViewModel)); } await mediator.SendAsync(new AddNotificationPayment(id, model.PaymentAmount.Value, model.PaymentMethod, model.PaymentDate.AsDateTime().Value, model.ReceiptNumber, model.PaymentComments.Trim())); return(RedirectToAction("Index", "AccountManagement")); }
public void Payment(PaymentDetailsViewModel viewModel) { Return(View("PaymentDetails", viewModel)); }
public async Task <ChargeDetails> PrepareOrderForPayment(Order order, AddressViewModel shippingAddress, PaymentDetailsViewModel paymentDetails) { var details = new ChargeDetails { ID = order.Id, Items = order.OrderItems.Select(item => new ItemDetails() { Name = item.ItemOrdered.ProductName, ItemNumber = item.ItemOrdered.CatalogItemId, UnitPrice = item.UnitPrice, Amount = item.Units, LineTotal = item.UnitPrice * item.Units }).ToList(), Address = new Flaky.Data.Address() { FirstLine = shippingAddress.Street, City = shippingAddress.City, State = shippingAddress.State, Country = shippingAddress.Country, ZipCode = shippingAddress.ZipCode }, PaymentDetails = new Flaky.Data.PaymentDetails() { Brand = paymentDetails.Brand, CardNumber = paymentDetails.CardNumber, CardHolderName = paymentDetails.CardHolderName, CVC = paymentDetails.CVC, ExperationMonth = paymentDetails.ExperationMonth, ExperationYear = paymentDetails.ExperationYear } }; details.Taxes = await _billingClient.CalculateTax(details); details.TotalAmmount = details.Items.Sum(item => item.LineTotal) + details.Taxes.Sum(tax => tax.Amount); return(details); }
public PaymentDetails(PaymentDetailsViewModel o) { objInvoiceDetailsViewModel = o; InitializeComponent(); this.DataContext = objInvoiceDetailsViewModel; }