public async Task <ActionResult> SaveSalesOrderPayment(SalesOrderPaymentFormViewModel salesOrderPaymentFormViewModel) { ModelState["SalesOrderPayment.SalesOrder.SalesOrderStatus"].Errors.Clear(); ModelState["SalesOrderPayment.SalesOrder.SalesOrderDetails"].Errors.Clear(); ModelState["SalesOrderPayment.BusinessPartner.BusinessPartnerName"].Errors.Clear(); if (TryValidateModel(salesOrderPaymentFormViewModel)) { salesOrderPaymentFormViewModel.SalesOrderPayment.UserId = User.Identity.GetUserId(); salesOrderPaymentFormViewModel.SalesOrderPayment.SalesOrderPaymentDetails?.Select (detail => { detail.UserId = User.Identity.GetUserId(); detail.SalesOrderPaymentId = salesOrderPaymentFormViewModel.SalesOrderPayment.SOPaymentId; return(detail); }).ToList(); var recordsSaved = await _paymentService.SaveSalesOrderPayment(salesOrderPaymentFormViewModel.SalesOrderPayment); if (recordsSaved == 0) { ModelState.AddModelError(string.Empty, "There was a problem and the SalesOrder was not saved."); } } return(RedirectToAction("SalesOrderPaymentList", "SalesOrder")); }
public async Task <SalesOrderPaymentFormViewModel> CreateSalesOrderPaymentForm(string userId, string salesOrderId) { string salesOrderPaymentId = await _paymentRepository.CreateSalesOrderPayment(userId, salesOrderId); var salesOrderPaymentForm = new SalesOrderPaymentFormViewModel() { SalesOrderPayment = Mapper.Map <SalesOrderPaymentViewModel>(await _paymentRepository.GetSalesOrderPayment(salesOrderPaymentId)), Currencies = Mapper.Map <IEnumerable <CurrencyViewModel> >(await _currencyRepository.GetCurrencyList()), BusinessPartners = Mapper.Map <IEnumerable <BusinessPartnerViewModel> >(await _businessPartnerRepository.GetBusinessPartnerList()) }; return(salesOrderPaymentForm); }