Exemplo n.º 1
0
        public RefundResponse Refund(PayRequest payRequest)
        {
            _gateway = _gateways.GetByStoreId <AlipayGateway>(payRequest.GetStoreId());
            var queryModel = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(payRequest.BizContent,
                                                                                  new { out_trade_no = "", trade_no = "", refund_amount = 0, refund_reason = "", out_refund_no = "" });
            // 记录支付日志
            //var content = JsonConvert.SerializeObject(payRequest);
            //var payHistory = new PaymentHistory();
            //payHistory.LogAlipayBarcodeRequestPay(queryModel.out_trade_no, queryModel.total_amount.ToString(), "saleorder", content);
            //_db.Insert(payHistory);
            //_db.SaveChange();

            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                OutTradeNo   = queryModel.out_trade_no,
                TradeNo      = queryModel.trade_no,
                RefundAmount = queryModel.refund_amount,
                RefundReason = queryModel.refund_reason,
                OutRefundNo  = queryModel.out_refund_no
            });

            var response = _gateway.Execute(request);

            return(response);
        }
Exemplo n.º 2
0
        public void TestRefund()
        {
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                OutTradeNo   = _outTradeNo,
                RefundAmount = 1,
                OutRefundNo  = _outRefundNo
            });

            var response = _alipayGateway.Execute(request);

            Assert.Equal("40004", response.Code);
        }
Exemplo n.º 3
0
        public IActionResult Refund(string order_id, int refund_amount, string orig_qry_id, string orig_order_id)
        {
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                OrderId      = order_id,
                RefundAmount = refund_amount,
                OrigOrderId  = orig_order_id,
                OrigQryId    = orig_qry_id
            });

            var response = _gateway.Execute(request);

            return(Json(response));
        }
Exemplo n.º 4
0
        public IActionResult Refund(string out_trade_no, string trade_no, double refund_amount, string refund_reason, string out_request_no)
        {
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                TradeNo      = trade_no,
                OutTradeNo   = out_trade_no,
                RefundAmount = refund_amount,
                RefundReason = refund_reason,
                OutRefundNo  = out_request_no
            });

            var response = _gateway.Execute(request);

            return(Json(response));
        }
Exemplo n.º 5
0
        public ActionResult Refund(string out_trade_no, string trade_no, string out_refund_no, int refund_amount, string op_user_id, string op_user_passwd)
        {
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                TradeNo      = trade_no,
                RefundAmount = refund_amount,
                OutRefundNo  = out_refund_no,
                OutTradeNo   = out_trade_no,
                OpUserId     = op_user_id,
                OpUserPasswd = op_user_passwd
            });

            var response = _gateway.Execute(request);

            return(Json(response));
        }
        public ActionResult Refund(string out_trade_no, string trade_no, int total_amount, int refund_amount, string refund_desc, string out_refund_no)
        {
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                TradeNo      = trade_no,
                RefundAmount = refund_amount,
                RefundDesc   = refund_desc,
                OutRefundNo  = out_refund_no,
                TotalAmount  = total_amount,
                OutTradeNo   = out_trade_no
            });

            var response = _gateway.Execute(request);

            return(Json(response));
        }
Exemplo n.º 7
0
        public RefundResponse Refund(PayRequest payRequest)
        {
            _gateway = _gateways.GetByStoreId <WechatpayGateway>(payRequest.GetStoreId());
            var queryModel = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(payRequest.BizContent,
                                                                                  new { trade_no = "", out_trade_no = "", total_amount = 0, refund_amount = 0, refund_reason = "", out_refund_no = "" });
            var request = new RefundRequest();

            request.AddGatewayData(new RefundModel()
            {
                TradeNo      = queryModel.trade_no,
                RefundAmount = queryModel.refund_amount,
                RefundDesc   = queryModel.refund_reason,
                OutRefundNo  = queryModel.out_refund_no,
                TotalAmount  = queryModel.total_amount,
                OutTradeNo   = queryModel.out_trade_no
            });

            var response = _gateway.Execute(request);

            return(response);
        }