private ActionResult GetVisaResult(PaymentModel paymentModel, PaymentViewModel paymentViewModel) { var paymentWcfServiceClient = new PaymentWcfServiceClient(); var visaInfo = Mapper.Map <VisaPaymentInfo>(paymentModel.PaymentInfo.VisaInfo); visaInfo.PaymentAmount = paymentModel.Sum; var paymentResult = PaymentResult.Failure; try { paymentResult = paymentWcfServiceClient.MakePayment(visaInfo); } catch (FaultException <ValidationFault> validationEx) { string errorMessage = string.Empty; errorMessage = validationEx.Detail.Details.Aggregate(errorMessage, (current, item) => current + (item.Message + " ")); ModelState.AddModelError("ServiceError", errorMessage); } if (paymentResult != PaymentResult.Success) { ModelState.AddModelError("WrongData", paymentResult.ToString()); return(View("Get", paymentViewModel)); } _orderService.CleanOrderForUser(Session.SessionID); MessageSuccess(GlobalRes.OrderMadeSuccessfully); return(RedirectToAction("Get", "Game")); }
public ActionResult MakePayment(PaymentType paymentType) { var paymentWcfServiceClient = new PaymentWcfServiceClient(); Guid token = paymentWcfServiceClient.GetToken(); var visaInfoViewModel = new VisaInfoViewModel { Token = token, Payee = GameStoreName, }; PaymentViewModel paymentViewModel = GetEmptyPaymentViewModel(paymentType); paymentViewModel.PaymentInfoViewModel.VisaInfo = visaInfoViewModel; return(View(paymentViewModel)); }