コード例 #1
0
        public async Task <ActionResult> Status(StatusInput input)
        {
            var paymentViewModel = new PaymentViewModel() // TODO[mk] add validation
            {
                StatusInput = input,
            };

            if (!ModelState.IsValid)
            {
                return(View("Index", paymentViewModel));
            }

            var gateStatusRequest = new GateStatusRequest()
            {
                Session = input.Session,
                TransId = input.TransId,
            };

            try
            {
                paymentViewModel.GateStatusResponse = await m_Gate.Status(gateStatusRequest).ConfigureAwait(false);
            }
            catch (Exception e)
            {
                m_Logger.Error(e.Message, e);
                paymentViewModel.ExceptionMessage = e.Message;
            }

            return(View("Index", paymentViewModel));
        }
コード例 #2
0
        public async Task CheckPayStatusTest()
        {
            var gateCheckRequest = new GateCheckRequest()
            {
                Number = "9261112233",
                Amount = 1234.5678,
            };
            var gatePayResponse = await m_Gate.CheckAndPay(gateCheckRequest).ConfigureAwait(false);

            var gateStatusRequest = new GateStatusRequest()
            {
                Session = gatePayResponse.Session,
                TransId = gatePayResponse.TransId,
            };
            var gateStatusResponse = await m_Gate.Status(gateStatusRequest).ConfigureAwait(false);

            gateStatusResponse.Error.Should().BeNull();
            gateStatusResponse.Status.Code.Should().Be(7);
        }