コード例 #1
0
        public void QueryTransaction(OperationTransactionRequest operationTransactionRequest, dynamic viewBag)
        {
            string queryUrl      = ConfigurationManager.AppSettings["QueryUrl"];
            string queryUrn      = string.Format("/v2/sales/{0}", operationTransactionRequest.PaymentId);
            string queryUri      = string.Concat(queryUrl, queryUrn);
            var    queryResponse = RequestHttp("Get", queryUri);

            viewBag.ServiceResponse = queryResponse.Content?.ReadAsStringAsync().Result;
            if (queryResponse.IsSuccessStatusCode)
            {
                viewBag.ReturnMessage = "Transação consultada com sucesso";
            }
            else
            {
                viewBag.ReturnMessage = "Transação não consultada";
            }
        }
コード例 #2
0
        public void VoidTransaction(OperationTransactionRequest operationTransactionRequest, dynamic viewBag)
        {
            string voidUrl      = ConfigurationManager.AppSettings["TransactionUrl"];
            string voidUrn      = string.Format("/v2/sales/{0}/void", operationTransactionRequest.PaymentId);
            string voidUri      = string.Concat(voidUrl, voidUrn);
            var    voidResponse = RequestHttp("Put", voidUri);

            viewBag.ServiceResponse = voidResponse.Content?.ReadAsStringAsync().Result;
            if (voidResponse.IsSuccessStatusCode)
            {
                viewBag.ReturnMessage = "Transação cancelada com sucesso";
            }
            else
            {
                viewBag.ReturnMessage = "Não foi possível cancelar a transação";
            }
        }
コード例 #3
0
        public ActionResult OperationTransaction(OperationTransactionRequest request)
        {
            switch (request.Operation)
            {
            case Contracts.Request.OperationTransaction.Query:
                _ecommerceService.QueryTransaction(request, ModelState);
                break;

            case Contracts.Request.OperationTransaction.Capture:
                _ecommerceService.CaptureTransaction(request, ModelState);
                break;

            case Contracts.Request.OperationTransaction.Void:
                _ecommerceService.VoidTransaction(request, ModelState);
                break;

            default:
                break;
            }

            ViewBag.PaymentId = request.PaymentId;

            return(View());
        }