Esempio n. 1
0
        /// <summary>
        /// 订单退款
        /// </summary>
        /// <param name="tradeno">商户订单号</param>
        /// <param name="alipayTradeNo">支付宝交易号</param>
        /// <param name="refundAmount">退款金额</param>
        /// <param name="refundReason">退款原因</param>
        /// <param name="refundNo">退款单号</param>
        public ActionResult RefundInfo(string tradeno, string alipayTradeNo, string refundAmount, string refundReason, string refundNo)
        {
            DefaultAopClient client = new DefaultAopClient(Config.gatewayUrl, Config.app_id, Config.private_key, "json", "1.0", Config.sign_type, Config.alipay_public_key, Config.charset, false);

            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            // 商户订单号,和交易号不能同时为空
            model.OutTradeNo = tradeno;
            // 支付宝交易号,和商户订单号不能同时为空
            model.TradeNo = alipayTradeNo;
            // 退款金额,不能大于订单总金额
            model.RefundAmount = refundAmount;
            // 退款原因
            model.RefundReason = refundReason;
            // 退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
            model.OutRequestNo = refundNo;

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            AlipayTradeRefundResponse response = null;

            try
            {
                response = client.Execute(request);
                return(Json(response.Body));
            }
            catch (Exception exp)
            {
                throw exp;
            }
        }
Esempio n. 2
0
        public async Task Test5()
        {
            var config = new AlipayConfig
            {
                NotifyUrl    = "",
                AppId        = "",
                PrivateKey   = "",
                AliPublicKey = "",
                QuitUrl      = ""
            };
            var request = new AlipayTradeRefundModel
            {
                OutTradeNo   = "202007297777",
                RefundAmount = $"{10:0.##}"
            };
            var response = await AlipayClient.RefundAsync(request, config);

            if (string.IsNullOrEmpty(response.Body))
            {
                Assert.Fail();
            }
            else
            {
                Assert.Pass();
            }
        }
Esempio n. 3
0
        public ServiceResult <bool> Refund(Order order)
        {
            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            model.OutTradeNo   = order.ID;
            model.TradeNo      = order.PaymentID;
            model.RefundAmount = order.Refund.ToString();
            model.RefundReason = order.RefundReason;
            model.OutRequestNo = "Refund-" + order.ID;
            order.RefundID     = model.OutRequestNo;
            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            var response      = _alipayService.Execute(request);
            var responseEntry = JObject.Parse(response.Body).GetValue("alipay_trade_refund_response").ToObject <AliPaymentResponse>();
            var status        = responseEntry.msg.Equals("Success", StringComparison.OrdinalIgnoreCase);
            var result        = new ServiceResult <bool>
            {
                Result = status
            };

            if (!status)
            {
                result.RuleViolations.Add(new RuleViolation("Error", responseEntry.msg + (responseEntry.sub_msg ?? "")));
            }
            return(result);
        }
Esempio n. 4
0
        /// <summary>
        /// 退款
        /// </summary>
        public bool Refund(decimal amount, string orderNo, string requestNo, string reason = null, string tradeNo = null)
        {
            bool success = false;

            //组装业务参数
            var model = new AlipayTradeRefundModel()
            {
                OutTradeNo   = orderNo,
                TradeNo      = tradeNo,
                RefundAmount = amount.ToString(),
                RefundReason = reason,
                OutRequestNo = requestNo //退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
            };

            var request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            AlipayTradeRefundResponse response = aopClient.Execute(request);

            if (response != null && response.Code == "10000")
            {
                success = true;
            }

            //记日志response.ToJson();

            return(success);
        }
Esempio n. 5
0
        public async Task <IActionResult> Refund(string out_trade_no, string trade_no, string refund_amount, string out_request_no, string refund_reason)
        {
            var model = new AlipayTradeRefundModel
            {
                OutTradeNo   = out_trade_no,
                TradeNo      = trade_no,
                RefundAmount = refund_amount,
                OutRequestNo = out_request_no,
                RefundReason = refund_reason
            };

            var req = new AlipayTradeRefundRequest();

            req.SetBizModel(model);

            var response = await _client.ExecuteAsync(req);

            ResponseModel responseModel = new ResponseModel()
            {
                code    = HTTPResponseCode.PartialContent,
                message = string.Empty,
                data    = response.Body
            };

            if (response.IsError)
            {
                responseModel.code    = HTTPResponseCode.BadRequest;
                responseModel.message = response.Msg;
            }
            else
            {
                responseModel.code = HTTPResponseCode.Successful;
            }
            return(Json(responseModel));
        }
Esempio n. 6
0
        /// <summary>
        /// 发起订单退款
        /// </summary>
        /// <param name="refundRequest">退款申请参数</param>
        /// <returns></returns>
        public override ApiResultModel <string> RefundPay(RefundBaseRequest refundRequest)
        {
            var res = new ApiResultModel <string>()
            {
                Code = ApiResultCode.Fail, Message = "fail"
            };

            string total_fee  = refundRequest.OrderMoney.ToString("#0.00");
            string refund_fee = refundRequest.RefundMoney.ToString("#0.00");
            //退款请求
            IAopClient client = new DefaultAopClient(AliPayConfig.gatewayUrl, AliPayConfig.AppId, AliPayConfig.privatekey, "json", "1.0", AliPayConfig.sign_type, AliPayConfig.alipublickey, AliPayConfig.charset, false);
            AlipayTradeRefundRequest request     = new AlipayTradeRefundRequest();
            AlipayTradeRefundModel   alipayModel = new AlipayTradeRefundModel()
            {
                OutTradeNo   = refundRequest.OrderCode,
                TradeNo      = refundRequest.TradeNo,
                RefundAmount = refund_fee,
                RefundReason = "用户申请退款",
            };

            request.SetBizModel(alipayModel);
            AlipayTradeRefundResponse response = client.Execute(request);

            //2.2、记录请求日志
            //记录支付宝退款调用的日志
            //WritePostThirdApi(ThirdPlatformBusinessType.Payment, orderRefund.OrderCode, ThirdPlatformType.Alipay, AliPayConfig.gatewayUrl, request.BizContent, DateTime.Now, response.Body, DateTime.Now, true);
            if (response.Code != "10000")
            {
                res.Message = response.Msg;
                return(res);
            }
            res.Code    = ApiResultCode.Success;
            res.Message = "ok";
            return(res);
        }
Esempio n. 7
0
		public Result<AlipayRefundResult> Refund(string originalOrderNo, string newRefundRequestNo, decimal refundAmount, string refundReason) {
			var model = new AlipayTradeRefundModel {
				OutTradeNo = originalOrderNo,
				OutRequestNo = newRefundRequestNo,
				RefundAmount = refundAmount.ToString("f2"),
				RefundReason = refundReason
			};
			var request = new AlipayTradeRefundRequest();
			request.SetBizModel(model);

			try {
				var response = _alipay.Execute(request);
				var ok = response is { IsError: false, Msg: "Success" };

				if ( !ok ) {
					return new Failure<AlipayRefundResult>(response.SubMsg ?? response.Msg);
				}
				return new Success<AlipayRefundResult> {
					Data = new AlipayRefundResult {
						RefundAmount = ok ? refundAmount : 0,
						AggregatedRefundAmount = response.RefundFee.AsDecimal(),
						OriginalResult = response
					}
				};
			}
			catch ( Exception e ) {
				return new Failure<AlipayRefundResult>(e.Message);
			}
		}
Esempio n. 8
0
        public JsonResult Refund(string tradeno, string alipayTradeNo, string refundAmount, string refundReason, string refundNo)
        {
            DefaultAopClient client = new DefaultAopClient(Config.Gatewayurl, Config.AppId, Config.PrivateKey, "json", "2.0",
                                                           Config.SignType, Config.AlipayPublicKey, Config.CharSet, false);

            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            model.OutTradeNo   = tradeno;
            model.TradeNo      = alipayTradeNo;
            model.RefundAmount = refundAmount;
            model.RefundReason = refundReason;
            model.OutRequestNo = refundNo;

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);
            try
            {
                var response = client.Execute(request);
                return(Json(response.Body));
            }
            catch (Exception exp)
            {
                throw exp;
            }
        }
Esempio n. 9
0
        /// <summary>
        /// 订单退款
        /// </summary>
        /// <param name="input">退款数据</param>
        /// <returns></returns>
        public async Task <AlipayTradeRefundResponse> Refund(AlipayTradeRefundModel input)
        {
            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(input);

            var response = await _alipayService.ExecuteAsync(request);

            return(response);
        }
Esempio n. 10
0
        /// <summary>
        /// 订单退款
        /// </summary>
        /// <param name="tradeno">商户订单号</param>
        /// <param name="alipayTradeNo">支付宝交易号</param>
        /// <param name="refundAmount">退款金额</param>
        /// <param name="refundReason">退款原因</param>
        /// <param name="refundNo">退款单号</param>
        /// <returns></returns>
        public async Task <AlipayTradeRefundResponse> Refund(string tradeno, string alipayTradeNo, string refundAmount, string refundReason, string refundNo)
        {
            var model = new AlipayTradeRefundModel();

            model.OutTradeNo   = tradeno;
            model.TradeNo      = alipayTradeNo;
            model.RefundAmount = refundAmount;
            model.RefundReason = refundReason;
            model.OutRequestNo = refundNo;

            return(await this.Refund(model));
        }
Esempio n. 11
0
        /// <summary>
        /// 申请退款
        /// </summary>
        /// <param name="request">提交给申请退款API的参数</param>
        /// <param name="config"></param>
        /// <param name="accessToken">用户授权token</param>
        /// <param name="timeOut">超时时间</param>
        /// <returns>成功时返回接口调用结果,其他抛异常</returns>
        public static async Task <AlipayTradeRefundResponse> RefundAsync(AlipayTradeRefundModel request, AlipayConfig config, string accessToken = null, int timeOut = 6)
        {
            IAopClient client      = new AopClient(AlipayConstants.GATEWAYURL, config.AppId, config.PrivateKey, config.Format, config.Version, config.SignType, config.AliPublicKey, config.Charset, config.KeyFromFile);
            var        requestData = new AlipayTradeRefundRequest();

            requestData.SetBizModel(request);

            var result = await client.ExecuteAsync(requestData, accessToken);

            if (result.Code != AlipayConstants.SuccessCode)
            {
                throw new Exception(result.SubMsg);
            }
            return(result);
        }
Esempio n. 12
0
        private static RefundResponse Refund(string amount)
        {
            IAopClient client = new DefaultAopClient("https://openapi.alipaydev.com/gateway.do", APPID, APP_PRIVATE_KEY, "json", "1.0", "RSA2", ALIPAY_PUBLIC_KEY, CHARSET, false);
            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
            AlipayTradeRefundModel   mode    = new AlipayTradeRefundModel
            {
                OutTradeNo   = "2020060111510",
                RefundAmount = amount,
                RefundReason = HttpUtility.UrlEncode("挂号退款")
            };

            request.SetBizModel(mode);
            var response = client.Execute(request);
            var body     = JsonConvert.DeserializeObject <RefundResponse>(response.Body);

            return(body);
        }
Esempio n. 13
0
        public IActionResult Refund(string WIDout_trade_no, string WIDtrade_no, string WIDrefund_amount, string WIDrefund_reason, string WIDout_request_no)
        {
            DefaultAopClient client = new DefaultAopClient(_settings.Value.gateway_url, _settings.Value.app_id, _settings.Value.private_key, _settings.Value.format, _settings.Value.version, _settings.Value.sign_type, _settings.Value.alipay_public_key, _settings.Value.charset, false);

            // 商户订单号,和交易号不能同时为空
            string out_trade_no = WIDout_trade_no;

            // 支付宝交易号,和商户订单号不能同时为空
            string trade_no = WIDtrade_no;

            // 退款金额,不能大于订单总金额
            string refund_amount = WIDrefund_amount;

            // 退款原因
            string refund_reason = WIDrefund_reason;

            // 退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
            string out_request_no = WIDout_request_no;

            AlipayTradeRefundModel model = new AlipayTradeRefundModel
            {
                OutTradeNo   = out_trade_no,
                TradeNo      = trade_no,
                RefundAmount = refund_amount,
                RefundReason = refund_reason,
                OutRequestNo = out_request_no
            };

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            AlipayTradeRefundResponse response = null;

            try
            {
                response = client.Execute(request);
            }
            catch (Exception exp)
            {
                throw exp;
            }
            return(Content(response.Body));
        }
Esempio n. 14
0
        public async Task <IActionResult> Refund(string out_trade_no, string trade_no, string refund_amount, string refund_reason, string out_request_no)
        {
            var model = new AlipayTradeRefundModel()
            {
                OutTradeNo   = out_trade_no,
                TradeNo      = trade_no,
                RefundAmount = refund_amount,
                OutRequestNo = out_request_no,
                RefundReason = refund_reason
            };

            var req = new AlipayTradeRefundRequest();

            req.SetBizModel(model);

            var response = await _client.ExecuteAsync(req);

            return(Ok(response.Body));
        }
Esempio n. 15
0
        public async Task <IActionResult> Refund(AlipayTradeRefundViewModel viewMode)
        {
            var model = new AlipayTradeRefundModel
            {
                OutTradeNo   = viewMode.OutTradeNo,
                TradeNo      = viewMode.TradeNo,
                RefundAmount = viewMode.RefundAmount,
                OutRequestNo = viewMode.OutRequestNo,
                RefundReason = viewMode.RefundReason
            };

            var req = new AlipayTradeRefundRequest();

            req.SetBizModel(model);

            var response = await _client.CertificateExecuteAsync(req, _optionsAccessor.Value);

            return(Ok(response.Body));
        }
Esempio n. 16
0
    protected void BtnAlipay_Click(object sender, EventArgs e)
    {
        DefaultAopClient client = new DefaultAopClient(Config.gatewayUrl, Config.app_id, Config.merchant_private_key, "json", "1.0", Config.sign_type, Config.alipay_public_key, Config.charset, false);

        // 商户订单号,和交易号不能同时为空
        string out_trade_no = WIDout_trade_no.Text.Trim();

        // 支付宝交易号,和商户订单号不能同时为空
        string trade_no = WIDtrade_no.Text.Trim();

        // 退款金额,不能大于订单总金额
        string refund_amount = WIDrefund_amount.Text.Trim();

        // 退款原因
        string refund_reason = WIDrefund_reason.Text.Trim();

        // 退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
        string out_request_no = WIDout_request_no.Text.Trim();

        AlipayTradeRefundModel model = new AlipayTradeRefundModel();

        model.OutTradeNo   = out_trade_no;
        model.TradeNo      = trade_no;
        model.RefundAmount = refund_amount;
        model.RefundReason = refund_reason;
        model.OutRequestNo = out_request_no;

        AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

        request.SetBizModel(model);

        AlipayTradeRefundResponse response = null;

        try
        {
            response       = client.Execute(request);
            WIDresule.Text = response.Body;
        }
        catch (Exception exp)
        {
            throw exp;
        }
    }
Esempio n. 17
0
        public IHttpActionResult kkk(dynamic data)
        {
            IAopClient client = new DefaultAopClient(URL, APPID, APP_PRIVATE_KEY, FORMAT, "2.0", "RSA2", ALIPAY_PUBLIC_KEY, CHARSET, false);
            // 商户订单号,和交易号不能同时为空
            string out_trade_no = "20200709104925";

            // 支付宝交易号,和商户订单号不能同时为空
            string trade_no = "2020070922001450210500981173";

            // 退款金额,不能大于订单总金额
            string refund_amount = "110.00";

            // 退款原因
            string refund_reason = "我就是想退款";

            // 退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
            string out_request_no = "16541";

            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            model.OutTradeNo   = data.data.OutTradeNo;
            model.TradeNo      = data.data.TradeNo;
            model.RefundAmount = data.data.RefundAmount;
            model.RefundReason = data.data.RefundReason;
            model.OutRequestNo = DateTime.Now.ToString("yyyyMMddHHmmss");

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            AlipayTradeRefundResponse response = null;

            response = client.SdkExecute(request);
            using (SmartRentalSystemEntities db = new SmartRentalSystemEntities())
            {
                var ode = db.Order.Where(t => t.OrderNumber == model.OutTradeNo).ToList().FirstOrDefault();
                ode.OrderState = "退款";
                db.SaveChanges();
            }
            //Execute(request);
            return(Ok(response.Body));
        }
Esempio n. 18
0
        public async Task <IActionResult> Refund(AlipayTradeRefundViewModel viewMode)
        {
            var model = new AlipayTradeRefundModel()
            {
                OutTradeNo   = viewMode.OutTradeNo,
                TradeNo      = viewMode.TradeNo,
                RefundAmount = viewMode.RefundAmount,
                OutRequestNo = viewMode.OutRequestNo,
                RefundReason = viewMode.RefundReason
            };

            var req = new AlipayTradeRefundRequest();

            req.SetBizModel(model);

            var response = await _client.ExecuteAsync(req);

            ViewData["response"] = response.Body;
            return(View());
        }
Esempio n. 19
0
        public JsonResult Refund(string tradeno, string alipayTradeNo, string refundAmount, string refundReason, string refundNo)
        {
            IAopClient client = new DefaultAopClient(URL, APPID, APP_PRIVATE_KEY, FORMAT, "1.0", "RSA2", ALIPAY_PUBLIC_KEY, CHARSET, false);

            AlipayTradeRefundModel model = new AlipayTradeRefundModel
            {
                OutTradeNo   = tradeno,
                TradeNo      = alipayTradeNo,
                RefundAmount = refundAmount,
                RefundReason = refundReason,
                OutRequestNo = refundNo
            };

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            var response = client.Execute(request);

            return(Json(response.Body));
        }
        public async Task <JsonResult> Refund(string tradeno, string alipayTradeNo, string refundAmount, string refundReason, string refundNo)
        {
            /*DefaultAopClient client = new DefaultAopClient(Config.Gatewayurl, Config.AppId, Config.PrivateKey, "json", "2.0",
             *      Config.SignType, Config.AlipayPublicKey, Config.CharSet, false);*/

            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            model.OutTradeNo   = tradeno;
            model.TradeNo      = alipayTradeNo;
            model.RefundAmount = refundAmount;
            model.RefundReason = refundReason;
            model.OutRequestNo = refundNo;

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            var response = await _alipayService.ExecuteAsync(request);

            return(Json(response.Body));
        }
Esempio n. 21
0
        public Refund BuildRefund(Refund refund)
        {
            IAopClient alipayClient = GetAopClient();
            AlipayTradeRefundRequest alipayRequest = new AlipayTradeRefundRequest();
            AlipayTradeRefundModel   model         = new AlipayTradeRefundModel();

            model.OutTradeNo = refund.OrderNo;
            if (!string.IsNullOrEmpty(refund.TradeNo))
            {
                model.TradeNo = refund.TradeNo;
            }
            model.OutRequestNo = refund.OutRefundNo;
            model.RefundAmount = refund.RefundAmount.ToString();
            model.RefundReason = refund.RefundDesc;
            alipayRequest.SetBizModel(model);
            AlipayTradeRefundResponse response = alipayClient.Execute(alipayRequest);

            if (response.Code == "10000")
            {
                refund.TradeNo      = response.TradeNo;
                refund.RefundStatus = true;
            }
            return(refund);
        }
Esempio n. 22
0
        public void ProcessRequest(HttpContext context)
        {
            var result = new Message();

            try
            {
                logger.Info("----------------支付宝退款---------------------");
                string appid         = context.Request["appid"];
                string out_trade_no  = context.Request["out_trade_no"];
                string out_refund_no = context.Request["out_refund_no"];
                string total_fee     = decimal.Parse(context.Request["total_fee"]).ToString();
                string refund_fee    = decimal.Parse(context.Request["refund_fee"]).ToString();;
                string refund_desc   = context.Request["refund_desc"];

                logger.Info(string.Format(@"支付宝退款的输入参数:appid={0},
                                                                        out_trade_no:{1},
                                                                        out_refund_no:{2},
                                                                        totalfee:{3}
                                                                        refundfee:{4}
                                                                        refund_desc:{5}", appid, out_trade_no, out_refund_no, total_fee, refund_fee, refund_desc));
                string sign = context.Request["sign"];
                //签名Key
                string sSignKey = TenPayHelp.MD5(appid).ToLower();
                string newSign  = GetSign(context.Request.Form, sSignKey);
                if (newSign == sign)
                {
                    //获取支付宝账户配置信息
                    var config = ApiHelper.QueryPayAccount(appid, 1, logger);
                    logger.Info(string.Format(@"Appid={0},Prikey={1},Pubkey={2}", config.Appid, config.Prikey, config.Pubkey));
                    IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do",
                                                             config.Appid,
                                                             config.Prikey,
                                                             "json",
                                                             "1.0",
                                                             "RSA2",
                                                             config.Pubkey,
                                                             "utf-8",
                                                             false);
                    AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
                    AlipayTradeRefundModel   model   = new AlipayTradeRefundModel();
                    model.OutTradeNo   = out_trade_no;  //商户订单号  //"20170821141701640";
                    model.OutRequestNo = out_refund_no; //退款编号
                    model.RefundAmount = refund_fee;    //退款金额
                    model.RefundReason = refund_desc;   //退款原因
                    request.SetBizModel(model);
                    AlipayTradeRefundResponse response = client.Execute(request);
                    result.data = response.Body;
                }
                else
                {
                    result.data = "内部签名验证失败";
                }
            }
            catch (Exception e)
            {
                logger.Info("----------------支付宝退款异常---------------------");
                logger.Info("异常错误信息:" + e.Message, e);
                logger.Fatal("异常错误信息:" + e.Message, e);
                result.data = "Systyem Server Error";
            }
            context.Response.Clear();
            context.Response.ContentType = "text/plain";
            context.Response.Write(result.data);
        }
Esempio n. 23
0
        protected void Button2_Click(object sender, EventArgs e)
        {
            DefaultAopClient client = new DefaultAopClient(config.gatewayUrl, config.app_id, config.private_key, "json", "1.0", config.sign_type, config.alipay_public_key, config.charset, false);

            // 商户订单号,和交易号不能同时为空
            string out_trade_no = orderid.ToString();

            // 支付宝交易号,和商户订单号不能同时为空
            string trade_no = "";

            // 退款金额,不能大于订单总金额
            string refund_amount = totalprice.Text.Trim();

            // 退款原因
            string refund_reason = "退款";

            // 退款单号,同一笔多次退款需要保证唯一,部分退款该参数必填。
            string out_request_no = "";

            AlipayTradeRefundModel model = new AlipayTradeRefundModel();

            model.OutTradeNo   = out_trade_no;
            model.TradeNo      = trade_no;
            model.RefundAmount = refund_amount;
            model.RefundReason = refund_reason;
            model.OutRequestNo = out_request_no;

            AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();

            request.SetBizModel(model);

            AlipayTradeRefundResponse response = null;

            try
            {
                response = client.Execute(request);

                string str   = response.Body;
                string mark  = "\"msg\":\"";
                int    count = str.IndexOf(mark);
                string flag  = str.Substring(count + 7, 7);
                System.Diagnostics.Debug.WriteLine(flag);
                if (flag == "Success")
                {
                    string sql = "update [Order] set State='已退款' where OrderID=" + orderid;
                    if (db.exsql(sql))
                    {
                        Response.Write("<script>alert('退款成功')</script>");
                        Bind();
                    }
                }
                else
                {
                    Response.Write("<script>alert('退款失败')</script>");
                }
            }
            catch (Exception exp)
            {
                throw exp;
            }
        }