Пример #1
0
        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"));
        }
Пример #2
0
        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));
        }