public async Task <ActionResult> AddRefund(RefundDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetAccountManagementData(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.PaymentViewModel = new PaymentDetailsViewModel { NotificationId = model.NotificationId }; accountManagementViewModel.RefundViewModel = model; accountManagementViewModel.ShowRefundDetails = true; return(View("Index", accountManagementViewModel)); } var refundData = new NotificationTransactionData { Date = model.RefundDate.AsDateTime().Value, NotificationId = model.NotificationId, Debit = Convert.ToDecimal(model.RefundAmount), Comments = model.RefundComments.Trim(), ReceiptNumber = "NA" }; await mediator.SendAsync(new AddNotificationTransaction(refundData)); return(RedirectToAction("index", "AccountManagement", new { id = model.NotificationId })); }
private async Task<RefundDetailsViewModel> GetNewRefundDetailsViewModel(Guid id) { var limit = await mediator.SendAsync(new GetRefundLimit(id)); var refundViewModel = new RefundDetailsViewModel { NotificationId = id, Limit = limit }; return refundViewModel; }
private async Task <RefundDetailsViewModel> GetNewRefundDetailsViewModel(Guid id) { var limit = await mediator.SendAsync(new GetRefundLimit(id)); var refundViewModel = new RefundDetailsViewModel { NotificationId = id, Limit = limit }; return(refundViewModel); }
private async Task <RefundDetailsViewModel> GetNewRefundDetailsViewModel(Guid id) { var accountOverview = await mediator.SendAsync(new GetImportNotificationAccountOverview(id)); var firstPayment = accountOverview.Transactions.OrderBy(x => x.Date) .FirstOrDefault(x => x.Transaction == TransactionType.Payment); var model = new RefundDetailsViewModel { NotificationId = id, Limit = accountOverview.TotalPaid, FirstPaymentReceivedDate = firstPayment == null ? (DateTime?)null : firstPayment.Date }; return(model); }
public async Task<ActionResult> AddRefund(RefundDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetImportNotificationAccountOverview(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.PaymentViewModel = new PaymentDetailsViewModel(); accountManagementViewModel.RefundViewModel = model; accountManagementViewModel.ShowRefundDetails = true; return View("Index", accountManagementViewModel); } var refundData = new AddNotificationRefund(model.NotificationId, Convert.ToDecimal(model.RefundAmount), model.RefundDate.AsDateTime().Value, model.RefundComments); await mediator.SendAsync(refundData); return RedirectToAction("index", "AccountManagement", new { id = model.NotificationId }); }
public async Task <ActionResult> AddRefund(RefundDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetImportNotificationAccountOverview(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.PaymentViewModel = new PaymentDetailsViewModel(); accountManagementViewModel.RefundViewModel = model; accountManagementViewModel.ShowRefundDetails = true; return(View("Index", accountManagementViewModel)); } var refundData = new AddNotificationRefund(model.NotificationId, Convert.ToDecimal(model.RefundAmount), model.RefundDate.AsDateTime().Value, model.RefundComments.Trim()); await mediator.SendAsync(refundData); return(RedirectToAction("index", "AccountManagement", new { id = model.NotificationId })); }
public async Task<ActionResult> AddRefund(RefundDetailsViewModel model) { if (!ModelState.IsValid) { var data = await mediator.SendAsync(new GetAccountManagementData(model.NotificationId)); var accountManagementViewModel = new AccountManagementViewModel(data); accountManagementViewModel.PaymentViewModel = new PaymentDetailsViewModel { NotificationId = model.NotificationId }; accountManagementViewModel.RefundViewModel = model; accountManagementViewModel.ShowRefundDetails = true; return View("Index", accountManagementViewModel); } var refundData = new NotificationTransactionData { Date = model.RefundDate.AsDateTime().Value, NotificationId = model.NotificationId, Debit = Convert.ToDecimal(model.RefundAmount), Comments = model.Comments, ReceiptNumber = "NA" }; await mediator.SendAsync(new AddNotificationTransaction(refundData)); return RedirectToAction("index", "AccountManagement", new { id = model.NotificationId }); }
private async Task<RefundDetailsViewModel> GetNewRefundDetailsViewModel(Guid id) { var accountOverview = await mediator.SendAsync(new GetImportNotificationAccountOverview(id)); var firstPayment = accountOverview.Transactions.OrderBy(x => x.Date) .FirstOrDefault(x => x.Transaction == TransactionType.Payment); var model = new RefundDetailsViewModel { NotificationId = id, Limit = accountOverview.TotalPaid, FirstPaymentReceivedDate = firstPayment == null ? (DateTime?)null : firstPayment.Date }; return model; }