1
0
Roc 7 жил өмнө
parent
commit
2b61fe89c5
27 өөрчлөгдсөн 0 нэмэгдсэн , 4454 устгасан
  1. 0 242
      samples/WebApplicationSample/Controllers/AlipayController.cs
  2. 0 19
      samples/WebApplicationSample/Controllers/HomeController.cs
  3. 0 141
      samples/WebApplicationSample/Controllers/JdPayController.cs
  4. 0 256
      samples/WebApplicationSample/Controllers/LianLianPayController.cs
  5. 0 557
      samples/WebApplicationSample/Controllers/NotifyController.cs
  6. 0 85
      samples/WebApplicationSample/Controllers/QPayController.cs
  7. 0 337
      samples/WebApplicationSample/Controllers/UnionPayController.cs
  8. 0 269
      samples/WebApplicationSample/Controllers/WeChatPayController.cs
  9. 0 9
      samples/WebApplicationSample/Models/ErrorViewModel.cs
  10. 0 19
      samples/WebApplicationSample/Program.cs
  11. 0 19
      samples/WebApplicationSample/Properties/PublishProfiles/FolderProfile.pubxml
  12. 0 27
      samples/WebApplicationSample/Properties/launchSettings.json
  13. 0 117
      samples/WebApplicationSample/Startup.cs
  14. 0 2091
      samples/WebApplicationSample/Views/Home/Index.cshtml
  15. 0 22
      samples/WebApplicationSample/Views/Shared/Error.cshtml
  16. 0 16
      samples/WebApplicationSample/Views/Shared/_Layout.cshtml
  17. 0 3
      samples/WebApplicationSample/Views/_ViewImports.cshtml
  18. 0 3
      samples/WebApplicationSample/Views/_ViewStart.cshtml
  19. 0 27
      samples/WebApplicationSample/WebApplicationSample.csproj
  20. 0 10
      samples/WebApplicationSample/appsettings.Development.json
  21. 0 8
      samples/WebApplicationSample/appsettings.json
  22. 0 142
      samples/WebApplicationSample/wwwroot/demo.css
  23. 0 23
      samples/WebApplicationSample/wwwroot/demo.js
  24. BIN
      samples/WebApplicationSample/wwwroot/favicon.ico
  25. 0 6
      samples/WebApplicationSample/wwwroot/jquery-ui.min.css
  26. 0 5
      samples/WebApplicationSample/wwwroot/jquery-ui.min.js
  27. 0 1
      samples/WebApplicationSample/wwwroot/jquery.min.js

+ 0 - 242
samples/WebApplicationSample/Controllers/AlipayController.cs

@@ -1,242 +0,0 @@
-using Essensoft.AspNetCore.Payment.Alipay;
-using Essensoft.AspNetCore.Payment.Alipay.Domain;
-using Essensoft.AspNetCore.Payment.Alipay.Notify;
-using Essensoft.AspNetCore.Payment.Alipay.Request;
-using Microsoft.AspNetCore.Mvc;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class AlipayController : Controller
-    {
-        private readonly AlipayClient _client = null;
-        private readonly AlipayNotifyClient _notifyClient = null;
-
-        public AlipayController(AlipayClient client, AlipayNotifyClient notifyClient)
-        {
-            _client = client;
-            _notifyClient = notifyClient;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PagePay(string out_trade_no, string subject, string total_amount, string body, string product_code, string notify_url, string return_url)
-        {
-            var model = new AlipayTradePagePayModel()
-            {
-                Body = body,
-                Subject = subject,
-                TotalAmount = total_amount,
-                OutTradeNo = out_trade_no,
-                ProductCode = product_code,
-            };
-            var req = new AlipayTradePagePayRequest();
-            req.SetBizModel(model);
-            req.SetNotifyUrl(notify_url);
-            req.SetReturnUrl(return_url);
-
-            var response = await _client.PageExecuteAsync(req, null, "GET");
-            return Redirect(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> WapPay(string out_trade_no, string subject, string total_amount, string body, string product_code, string notify_url, string return_url)
-        {
-            var model = new AlipayTradeWapPayModel()
-            {
-                Body = body,
-                Subject = subject,
-                TotalAmount = total_amount,
-                OutTradeNo = out_trade_no,
-                ProductCode = product_code,
-            };
-            var req = new AlipayTradeWapPayRequest();
-            req.SetBizModel(model);
-            req.SetNotifyUrl(notify_url);
-            req.SetReturnUrl(return_url);
-
-            var response = await _client.PageExecuteAsync(req, null, "GET");
-            return Redirect(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PreCreate(string out_trade_no, string subject, string total_amount, string body, string notify_url)
-        {
-            var model = new AlipayTradePrecreateModel()
-            {
-                Body = body,
-                Subject = subject,
-                TotalAmount = total_amount,
-                OutTradeNo = out_trade_no,
-            };
-            var req = new AlipayTradePrecreateRequest();
-            req.SetBizModel(model);
-            req.SetNotifyUrl(notify_url);
-
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Pay(string out_trade_no, string scene, string auth_code, string subject, string total_amount, string body, string notify_url)
-        {
-            var model = new AlipayTradePayModel()
-            {
-                Scene = scene,
-                AuthCode = auth_code,
-                Body = body,
-                Subject = subject,
-                TotalAmount = total_amount,
-                OutTradeNo = out_trade_no,
-            };
-            var req = new AlipayTradePayRequest();
-            req.SetBizModel(model);
-            req.SetNotifyUrl(notify_url);
-
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Query(string out_trade_no, string trade_no)
-        {
-            var model = new AlipayTradeQueryModel()
-            {
-                OutTradeNo = out_trade_no,
-                TradeNo = trade_no
-            };
-
-            var req = new AlipayTradeQueryRequest();
-            req.SetBizModel(model);
-
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        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);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> RefundQuery(string out_trade_no, string trade_no, string out_request_no)
-        {
-            var model = new AlipayTradeFastpayRefundQueryModel()
-            {
-                OutTradeNo = out_trade_no,
-                TradeNo = trade_no,
-                OutRequestNo = out_request_no
-            };
-
-            var req = new AlipayTradeFastpayRefundQueryRequest();
-            req.SetBizModel(model);
-
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Close(string out_trade_no, string trade_no)
-        {
-            var model = new AlipayTradeCloseModel()
-            {
-                OutTradeNo = out_trade_no,
-                TradeNo = trade_no,
-            };
-
-            var req = new AlipayTradeCloseRequest();
-            req.SetBizModel(model);
-
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Trans(string out_biz_no, string payee_account, string payee_type, string amount, string remark)
-        {
-            var model = new AlipayFundTransToaccountTransferModel()
-            {
-                OutBizNo = out_biz_no,
-                PayeeType = payee_type,
-                PayeeAccount = payee_account,
-                Amount = amount,
-                Remark = remark
-            };
-            var req = new AlipayFundTransToaccountTransferRequest();
-            req.SetBizModel(model);
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> TransQuery(string out_biz_no, string order_id)
-        {
-            var model = new AlipayFundTransOrderQueryModel()
-            {
-                OutBizNo = out_biz_no,
-                OrderId = order_id,
-            };
-
-            var req = new AlipayFundTransOrderQueryRequest();
-            req.SetBizModel(model);
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> BillDownloadurlQuery(string bill_date, string bill_type)
-        {
-            var model = new AlipayDataDataserviceBillDownloadurlQueryModel()
-            {
-                BillDate = bill_date,
-                BillType = bill_type
-            };
-
-            var req = new AlipayDataDataserviceBillDownloadurlQueryRequest();
-            req.SetBizModel(model);
-            var response = await _client.ExecuteAsync(req);
-            return Ok(response.Body);
-        }
-
-        [HttpGet]
-        public async Task<IActionResult> PagePayReturn()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<AlipayTradePagePayReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-
-        [HttpGet]
-        public async Task<IActionResult> WapPayReturn()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<AlipayTradeWapPayReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-    }
-}

+ 0 - 19
samples/WebApplicationSample/Controllers/HomeController.cs

@@ -1,19 +0,0 @@
-using Microsoft.AspNetCore.Mvc;
-using System.Diagnostics;
-using WebApplicationSample.Models;
-
-namespace WebApplicationSample.Controllers
-{
-    public class HomeController : Controller
-    {
-        public IActionResult Index()
-        {
-            return View();
-        }
-
-        public IActionResult Error()
-        {
-            return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
-        }
-    }
-}

+ 0 - 141
samples/WebApplicationSample/Controllers/JdPayController.cs

@@ -1,141 +0,0 @@
-using Essensoft.AspNetCore.Payment.JDPay;
-using Essensoft.AspNetCore.Payment.JDPay.Notify;
-using Essensoft.AspNetCore.Payment.JDPay.Request;
-using Microsoft.AspNetCore.Mvc;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class JDPayController : Controller
-    {
-        private readonly JDPayClient _client = null;
-        private readonly JDPayNotifyClient _notifyClient = null;
-
-        public JDPayController(JDPayClient client, JDPayNotifyClient notifyClient)
-        {
-            _client = client;
-            _notifyClient = notifyClient;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> SaveOrderPC(string tradeNum, string tradeName, string tradeDesc, string tradeTime, string amount, string orderType, string currency, string note, string callbackUrl, string notifyUrl, string tradeType)
-        {
-            var request = new JDPaySaveOrderPCRequest()
-            {
-                TradeNum = tradeNum,
-                TradeName = tradeName,
-                TradeDesc = tradeDesc,
-                TradeTime = tradeTime,
-                Amount = amount,
-                OrderType = orderType,
-                Currency = currency,
-                Note = note,
-                CallbackUrl = callbackUrl,
-                NotifyUrl = notifyUrl,
-            };
-
-            var response = await _client.PageExecuteAsync(request);
-            return Content(response.Body, "text/html");
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> SaveOrderH5(string tradeNum, string tradeName, string tradeDesc, string tradeTime, string amount, string orderType, string currency, string note, string callbackUrl, string notifyUrl, string tradeType)
-        {
-            var request = new JDPaySaveOrderH5Request()
-            {
-                TradeNum = tradeNum,
-                TradeName = tradeName,
-                TradeDesc = tradeDesc,
-                TradeTime = tradeTime,
-                Amount = amount,
-                OrderType = orderType,
-                Currency = currency,
-                Note = note,
-                CallbackUrl = callbackUrl,
-                NotifyUrl = notifyUrl,
-            };
-
-            var response = await _client.PageExecuteAsync(request);
-            return Content(response.Body, "text/html");
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Uniorder(string tradeNum, string tradeName, string tradeDesc, string tradeTime, string amount,
-            string orderType, string currency, string note, string notifyUrl, string tradeType)
-        {
-            var request = new JDPayUnifiedOrderRequest()
-            {
-                TradeNum = tradeNum,
-                TradeName = tradeName,
-                TradeDesc = tradeDesc,
-                TradeTime = tradeTime,
-                Amount = amount,
-                OrderType = orderType,
-                Currency = currency,
-                Note = note,
-                NotifyUrl = notifyUrl,
-                TradeType = tradeType
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> OrderQuery(string tradeNum, string oTradeNum)
-        {
-            var request = new JDPayQueryRequest()
-            {
-                TradeNum = tradeNum,
-                OTradeNum = oTradeNum
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund(string tradeNum, string oTradeNum, string amount, string currency, string notifyUrl)
-        {
-            var request = new JDPayRefundRequest()
-            {
-                TradeNum = tradeNum,
-                OTradeNum = oTradeNum,
-                Amount = amount,
-                Currency = currency,
-                NotifyUrl = notifyUrl
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> RefundQuery(string tradeNum, string oTradeNum)
-        {
-            var request = new JDPayQueryRefundRequest()
-            {
-                TradeNum = tradeNum,
-                OTradeNum = oTradeNum
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpGet]  // h5 get
-        [HttpPost] // pc post
-        public async Task<IActionResult> Return()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<JDPaySyncReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-    }
-}

+ 0 - 256
samples/WebApplicationSample/Controllers/LianLianPayController.cs

@@ -1,256 +0,0 @@
-using Essensoft.AspNetCore.Payment.LianLianPay;
-using Essensoft.AspNetCore.Payment.LianLianPay.Notify;
-using Essensoft.AspNetCore.Payment.LianLianPay.Request;
-using Microsoft.AspNetCore.Mvc;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class LianLianPayController : Controller
-    {
-        private readonly LianLianPayClient _client = null;
-        private readonly LianLianPayNotifyClient _notifyClient = null;
-
-        public LianLianPayController(LianLianPayClient client, LianLianPayNotifyClient notifyClient)
-        {
-            _client = client;
-            _notifyClient = notifyClient;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> QuickPay(string no_order, string dt_order, string money_order, string name_goods,
-            string user_id, string notify_url, string url_return, string bank_code, string pay_type, string no_agree, string risk_item,
-            string id_type, string id_no, string acct_name, string card_no)
-        {
-            var request = new LianLianPayWebQuickPayRequest()
-            {
-                NoOrder = no_order,
-                DtOrder = dt_order,
-                MoneyOrder = money_order,
-                NameGoods = name_goods,
-                UserId = user_id,
-                NotifyUrl = notify_url,
-                UrlReturn = url_return,
-                BankCode = bank_code,
-                PayType = pay_type,
-                NoAgree = no_agree,
-                RiskItem = risk_item,
-                IdType = id_type,
-                IdNo = id_no,
-                AcctName = acct_name,
-                CardNo = card_no,
-            };
-            var response = await _client.PageExecuteAsync(request, "GET");
-            return Redirect(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> BankPay(string no_order, string dt_order, string money_order,
-            string name_goods, string user_id, string notify_url, string url_return, string risk_item)
-        {
-            var request = new LianLianPayBankPayRequest()
-            {
-                NoOrder = no_order,
-                DtOrder = dt_order,
-                MoneyOrder = money_order,
-                NameGoods = name_goods,
-                UserId = user_id,
-                NotifyUrl = notify_url,
-                UrlReturn = url_return,
-                RiskItem = risk_item,
-            };
-            var response = await _client.PageExecuteAsync(request, "GET");
-            return Redirect(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthPay(string no_order, string dt_order, string money_order, string name_goods, string user_id,
-            string notify_url, string url_return, string bank_code, string pay_type, string no_agree, string risk_item, string id_type, string id_no,
-            string acct_name, string card_no)
-        {
-            var request = new LianLianPayWebAuthPayRequest()
-            {
-                NoOrder = no_order,
-                DtOrder = dt_order,
-                MoneyOrder = money_order,
-                NameGoods = name_goods,
-                UserId = user_id,
-                NotifyUrl = notify_url,
-                UrlReturn = url_return,
-                BankCode = bank_code,
-                PayType = pay_type,
-                NoAgree = no_agree,
-                RiskItem = risk_item,
-                IdType = id_type,
-                IdNo = id_no,
-                AcctName = acct_name,
-                CardNo = card_no,
-            };
-            var response = await _client.PageExecuteAsync(request, "GET");
-            return Redirect(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> OrderQuery(string no_order, string dt_order, string oid_paybill)
-        {
-            var request = new LianLianPayOrderQueryRequest()
-            {
-                NoOrder = no_order,
-                DtOrder = dt_order,
-                OidPayBill = oid_paybill
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> QueryBankCarBin(string card_no)
-        {
-            var request = new LianLianPayQueryBankCarBinRequest()
-            {
-                CardNo = card_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> QueryBankCarBindList(string user_id, string offset)
-        {
-            var request = new LianLianPayQueryBankCarBindListRequest()
-            {
-                UserId = user_id,
-                Offset = offset,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> BankCardUnbind(string user_id, string pay_type, string no_agree)
-        {
-            var request = new LianLianPayBankCardUnbindRequest()
-            {
-                UserId = user_id,
-                PayType = pay_type,
-                NoAgree = no_agree,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> ModifyPhone(string user_id, string no_agree, string pay_type, string card_no, string bind_mob)
-        {
-            var request = new LianLianPayModifyPhoneRequest()
-            {
-                UserId = user_id,
-                NoAgree = no_agree,
-                PayType = pay_type,
-                CardNo = card_no,
-                BindMob = bind_mob
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> ModifyPhoneCheck(string user_id, string token, string verify_code)
-        {
-            var request = new LianLianPayModifyPhoneCheckRequest()
-            {
-                UserId = user_id,
-                Token = token,
-                VerifyCode = verify_code,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> SupportBankQuery(string bank_code, string card_type, string product_type, string pay_chnl)
-        {
-            var request = new LianLianPaySupportBankQueryRequest()
-            {
-                BankCode = bank_code,
-                CardType = card_type,
-                ProductType = product_type,
-                PayChnl = pay_chnl
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund(string no_refund, string dt_refund, string money_refund, string no_order, string dt_order, string oid_paybill, string notify_url)
-        {
-            var request = new LianLianPayRefundRequest()
-            {
-                NoRefund = no_refund,
-                DtRefund = dt_refund,
-                MoneyRefund = money_refund,
-                NoOrder = no_order,
-                DtOrder = dt_order,
-                OidPaybill = oid_paybill,
-                NotifyUrl = notify_url,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> RefundQuery(string no_refund, string dt_refund, string oid_refundno)
-        {
-            var request = new LianLianPayRefundQueryRequest()
-            {
-                NoRefund = no_refund,
-                DtRefund = dt_refund,
-                OidRefundNo = oid_refundno,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Content(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> BankPayReturn()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<LianLianPayBankPayReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> QuickPayReturn()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<LianLianPayWebQuickPayReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthPayReturn()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<LianLianPayWebAuthPayReturnResponse>(Request);
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-    }
-}

+ 0 - 557
samples/WebApplicationSample/Controllers/NotifyController.cs

@@ -1,557 +0,0 @@
-using Essensoft.AspNetCore.Payment.Alipay;
-using Essensoft.AspNetCore.Payment.Alipay.Notify;
-using Essensoft.AspNetCore.Payment.JDPay;
-using Essensoft.AspNetCore.Payment.JDPay.Notify;
-using Essensoft.AspNetCore.Payment.LianLianPay;
-using Essensoft.AspNetCore.Payment.LianLianPay.Notify;
-using Essensoft.AspNetCore.Payment.QPay;
-using Essensoft.AspNetCore.Payment.QPay.Notify;
-using Essensoft.AspNetCore.Payment.UnionPay;
-using Essensoft.AspNetCore.Payment.UnionPay.Notify;
-using Essensoft.AspNetCore.Payment.WeChatPay;
-using Essensoft.AspNetCore.Payment.WeChatPay.Notify;
-using Microsoft.AspNetCore.Mvc;
-using System;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    [Route("notify/alipay")]
-    public class AlipayNotifyController : Controller
-    {
-        private readonly AlipayNotifyClient _client = null;
-        public AlipayNotifyController(AlipayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        /// <summary>
-        /// 电脑网站支付异步通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("pagepay")]
-        [HttpPost]
-        public async Task<IActionResult> PagePayAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<AlipayTradePagePayNotifyResponse>(Request);
-                if ("TRADE_SUCCESS" == notify.TradeStatus)
-                {
-                    Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-
-                    return Content("success", "text/plain");
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 手机网站支付异步通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("wappay")]
-        [HttpPost]
-        public async Task<IActionResult> WapPayAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<AlipayTradeWapPayNotifyResponse>(Request);
-                if ("TRADE_SUCCESS" == notify.TradeStatus)
-                {
-                    Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-
-                    return Content("success", "text/plain");
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 扫码支付异步通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("precreate")]
-        [HttpPost]
-        public async Task<IActionResult> PrecreateAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<AlipayTradePrecreateNotifyResponse>(Request);
-                if ("TRADE_SUCCESS" == notify.TradeStatus)
-                {
-                    Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-
-                    return Content("success", "text/plain");
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 条码支付异步通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("pay")]
-        [HttpPost]
-        public async Task<IActionResult> PayAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<AlipayTradePayNotifyResponse>(Request);
-                if ("TRADE_SUCCESS" == notify.TradeStatus)
-                {
-                    Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-
-                    return Content("success", "text/plain");
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-    }
-
-    [Route("notify/wechatpay")]
-    public class WeChatPayNotifyController : Controller
-    {
-        private readonly WeChatPayNotifyClient _client = null;
-        public WeChatPayNotifyController(WeChatPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PostAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<WeChatPayUnifiedOrderNotifyResponse>(Request);
-                if (notify.ReturnCode == "SUCCESS")
-                {
-                    if (notify.ResultCode == "SUCCESS")
-                    {
-                        Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-
-                        return Content("<xml><return_code><![CDATA[SUCCESS]]></return_code></xml>", "text/xml");
-                    }
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-    /// <summary>
-    /// 微信支付退款通知
-    /// </summary>
-    [Route("notify/wechatpay/refund")]
-    public class WeChatPayRefundNotifyController : Controller
-    {
-        private readonly WeChatPayNotifyClient _client = null;
-        public WeChatPayRefundNotifyController(WeChatPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PostAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<WeChatPayRefundNotifyResponse>(Request);
-                if (notify.ReturnCode == "SUCCESS")
-                {
-                    if (notify.RefundStatus == "SUCCESS")
-                    {
-                        Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-                        return Content("<xml><return_code><![CDATA[SUCCESS]]></return_code></xml>", "text/xml");
-                    }
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-    [Route("notify/qpay")]
-    public class QPayNotifyController : Controller
-    {
-        private readonly QPayNotifyClient _client = null;
-        public QPayNotifyController(QPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PostAsync()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<QPayUnifiedOrderNotifyResponse>(Request);
-                if ("SUCCESS" == notify.TradeState)
-                {
-                    Console.WriteLine("OutTradeNo: " + notify.OutTradeNo);
-                    return Content("<xml><return_code>SUCCESS</return_code></xml>", "text/xml");
-                }
-                return NoContent();
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-    [Route("notify/jdpay")]
-    public class JDPayNotifyController : Controller
-    {
-        private readonly JDPayNotifyClient _client = null;
-        public JDPayNotifyController(JDPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Async()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<JDPayAsyncNotifyResponse>(Request);
-                Console.WriteLine("TradeNum: " + notify.TradeNum + " tradeType :" + notify.TradeType);
-
-                return Content("success", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-    [Route("notify/unionpay")]
-    public class UnionPayNotifyController : Controller
-    {
-        private readonly UnionPayNotifyClient _client = null;
-        public UnionPayNotifyController(UnionPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        /// <summary>
-        /// 二维码支付 - 二维码消费(被扫)通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("appconsume")]
-        [HttpPost]
-        public async Task<IActionResult> AppConsume()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm05_6_2_AppConsumeNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 二维码支付 - 申请二维码(主扫)通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("applyqrcode")]
-        [HttpPost]
-        public async Task<IActionResult> ApplyQrCode()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm05_6_1_ApplyQrCodeNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 二维码支付 - 消费撤销通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("purchaseundo")]
-        [HttpPost]
-        public async Task<IActionResult> PurchaseUndo()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayUpacpPurchaseUndoNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 二维码支付 - 退货通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("refund")]
-        [HttpPost]
-        public async Task<IActionResult> Refund()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayUpacpRefundNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 跳转网关页面支付通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("frontconsume62")]
-        [HttpPost]
-        public async Task<IActionResult> FrontConsume62()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_2_FrontConsumeNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 消费撤销通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("consumeundo63")]
-        [HttpPost]
-        public async Task<IActionResult> ConsumeUndo63()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_3_ConsumeUndoNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 退货通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("refund64")]
-        [HttpPost]
-        public async Task<IActionResult> Refund64()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_4_RefundNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 预授权通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("authdealfront671")]
-        [HttpPost]
-        public async Task<IActionResult> AuthDealFront671()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_7_1_AuthDeal_FrontNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 预授权撤销通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("authundo672")]
-        [HttpPost]
-        public async Task<IActionResult> AuthUndo672()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_7_2_AuthUndoNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 预授权完成通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("authfinish673")]
-        [HttpPost]
-        public async Task<IActionResult> AuthFinish673()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_7_3_AuthFinishNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        /// <summary>
-        /// 网关支付 - 预授权完成撤销通知
-        /// </summary>
-        /// <returns></returns>
-        [Route("authfinishundo674")]
-        [HttpPost]
-        public async Task<IActionResult> AuthFinishUndo674()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<UnionPayForm_6_7_4_AuthFinishUndoNotifyResponse>(Request);
-                Console.WriteLine("OrderId: " + notify.OrderId + " respCode :" + notify.RespCode);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-    [Route("notify/LianLianPay")]
-    public class LianLianPayNotifyController : Controller
-    {
-        private readonly LianLianPayNotifyClient _client = null;
-        public LianLianPayNotifyController(LianLianPayNotifyClient client)
-        {
-            _client = client;
-        }
-
-        [Route("quickpay")]
-        [HttpPost]
-        public async Task<IActionResult> QuickPay()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<LianLianPayWebQuickPayNotifyResponse>(Request);
-                Console.WriteLine("NoOrder: " + notify.NoOrder);
-                return Content("{\"ret_code\":\"0000\",\"ret_msg\":\"交易成功\"}", "application/json");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        [Route("bankpay")]
-        [HttpPost]
-        public async Task<IActionResult> BankPay()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<LianLianPayBankPayNotifyResponse>(Request);
-                Console.WriteLine("NoOrder: " + notify.NoOrder);
-                return Content("{\"ret_code\":\"0000\",\"ret_msg\":\"交易成功\"}", "application/json");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        [Route("authpay")]
-        [HttpPost]
-        public async Task<IActionResult> AuthPay()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<LianLianPayWapAuthPayNotifyResponse>(Request);
-                Console.WriteLine("NoOrder: " + notify.NoOrder);
-                return Content("{\"ret_code\":\"0000\",\"ret_msg\":\"交易成功\"}", "application/json");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-
-        [Route("refund")]
-        [HttpPost]
-        public async Task<IActionResult> Refund()
-        {
-            try
-            {
-                var notify = await _client.ExecuteAsync<LianLianPayRefundNotifyResponse>(Request);
-                Console.WriteLine("NoRefund: " + notify.NoRefund);
-                return Content("{\"ret_code\":\"0000\",\"ret_msg\":\"交易成功\"}", "application/json");
-            }
-            catch
-            {
-                return NoContent();
-            }
-        }
-    }
-
-}

+ 0 - 85
samples/WebApplicationSample/Controllers/QPayController.cs

@@ -1,85 +0,0 @@
-using Essensoft.AspNetCore.Payment.QPay;
-using Essensoft.AspNetCore.Payment.QPay.Request;
-using Microsoft.AspNetCore.Mvc;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class QPayController : Controller
-    {
-        private readonly QPayClient _client = null;
-        public QPayController(QPayClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> UnifiedOrder(string out_trade_no, string body, int total_fee, string spbill_create_ip, string notify_url, string trade_type)
-        {
-            var request = new QPayUnifiedOrderRequest()
-            {
-                OutTradeNo = out_trade_no,
-                Body = body,
-                TotalFee = total_fee,
-                SpbillCreateIp = spbill_create_ip,
-                NotifyUrl = notify_url,
-                TradeType = trade_type,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> OrderQuery(string transaction_id, string out_trade_no)
-        {
-            var request = new QPayOrderQueryRequest()
-            {
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> CloseOrder(string out_trade_no)
-        {
-            var request = new QPayCloseOrderRequest()
-            {
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund(string out_refund_no, string transaction_id, string out_trade_no, int refund_fee, string op_user_id, string op_user_passwd)
-        {
-            var request = new QPayRefundRequest()
-            {
-                OutRefundNo = out_refund_no,
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-                RefundFee = refund_fee,
-                OpUserId = op_user_id,
-                OpUserPasswd = op_user_passwd,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> RefundQuery(string refund_id, string out_refund_no, string transaction_id, string out_trade_no)
-        {
-            var request = new QPayRefundQueryRequest()
-            {
-                RefundId = refund_id,
-                OutRefundNo = out_refund_no,
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-    }
-}

+ 0 - 337
samples/WebApplicationSample/Controllers/UnionPayController.cs

@@ -1,337 +0,0 @@
-using Essensoft.AspNetCore.Payment.UnionPay;
-using Essensoft.AspNetCore.Payment.UnionPay.Notify;
-using Essensoft.AspNetCore.Payment.UnionPay.Request;
-using Microsoft.AspNetCore.Mvc;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class UnionPayController : Controller
-    {
-        private readonly UnionPayClient _client = null;
-        private readonly UnionPayNotifyClient _notifyClient = null;
-
-        public UnionPayController(UnionPayClient client, UnionPayNotifyClient notifyClient)
-        {
-            _client = client;
-            _notifyClient = notifyClient;
-        }
-
-        #region 二维码支付
-
-        [HttpPost]
-        public async Task<IActionResult> PurchaseUndo(string orderId, string txnTime, string txnAmt, string origQryId, string origOrderId, string origTxnTime, string backUrl)
-        {
-            var request = new UnionPayUpacpPurchaseUndoRequest()
-            {
-                TxnType = "31",
-                TxnSubType = "00",
-                BizType = "000000",
-                ChannelType = "08",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                OrigOrderId = origOrderId,
-                OrigTxnTime = origTxnTime,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund(string orderId, string txnTime, string txnAmt, string origQryId, string origOrderId, string origTxnTime, string backUrl)
-        {
-            var request = new UnionPayUpacpRefundRequest()
-            {
-                TxnType = "04",
-                TxnSubType = "00",
-                BizType = "000000",
-                ChannelType = "08",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                OrigOrderId = origOrderId,
-                OrigTxnTime = origTxnTime,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> ApplyQrCode(string orderId, string txnTime, string txnAmt, string currencyCode, string backUrl)
-        {
-            var request = new UnionPayForm05_6_1_ApplyQrCodeRequest()
-            {
-                TxnType = "01",
-                TxnSubType = "07",
-                BizType = "000000",
-                ChannelType = "08",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                BackUrl = backUrl,
-                CurrencyCode = currencyCode
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AppConsume(string orderId, string qrNo, string txnTime, string txnAmt, string currencyCode, string backUrl)
-        {
-            var request = new UnionPayForm05_6_2_AppConsumeRequest()
-            {
-                TxnType = "01",
-                TxnSubType = "06",
-                BizType = "000000",
-                ChannelType = "08",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                CurrencyCode = currencyCode,
-                QrNo = qrNo,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Query563(string orderId, string txnTime)
-        {
-            var request = new UnionPayForm05_6_3_QueryRequest()
-            {
-                TxnType = "00",
-                TxnSubType = "00",
-                BizType = "000201",
-                OrderId = orderId,
-                TxnTime = txnTime,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Reversal0565(string orderId, string txnTime)
-        {
-            var request = new UnionPayForm05_6_5_ReversalRequest()
-            {
-                TxnType = "99",
-                TxnSubType = "01",
-                BizType = "000000",
-                ChannelType = "08",
-                OrderId = orderId,
-                TxnTime = txnTime,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> FileTransfer057(string fileType, string txnTime, string settleDate)
-        {
-            var request = new UnionPayForm05_7_FileTransferRequest()
-            {
-                TxnType = "76",
-                TxnSubType = "01",
-                BizType = "000000",
-                FileType = fileType,
-                TxnTime = txnTime,
-                SettleDate = settleDate,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        #endregion
-
-        #region 网关支付
-
-        [HttpPost]
-        public async Task<IActionResult> FrontConsume62(string orderId, string txnTime, string txnAmt, string currencyCode, string payTimeout, string frontUrl, string backUrl)
-        {
-            var request = new UnionPayForm_6_2_FrontConsumeRequest()
-            {
-                TxnType = "01",
-                TxnSubType = "01",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                CurrencyCode = currencyCode,
-                PayTimeout = payTimeout,
-                FrontUrl = frontUrl,
-                BackUrl = backUrl,
-            };
-            var response = await _client.PageExecuteAsync(request, "POST");
-            return Content(response.Body, "text/html");
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> FrontConsume62Return()
-        {
-            try
-            {
-                var notify = await _notifyClient.ExecuteAsync<UnionPayForm_6_2_FrontConsumeReturnResponse>(Request);
-                return Content("ok", "text/plain");
-            }
-            catch
-            {
-                return Content("error", "text/plain");
-            }
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> ConsumeUndo63(string orderId, string txnTime, string txnAmt, string origQryId, string backUrl)
-        {
-            var request = new UnionPayForm_6_3_ConsumeUndoRequest()
-            {
-                TxnType = "31",
-                TxnSubType = "00",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund64(string orderId, string txnTime, string txnAmt, string origQryId, string backUrl)
-        {
-            var request = new UnionPayForm_6_4_RefundRequest()
-            {
-                TxnType = "04",
-                TxnSubType = "00",
-                BizType = "000301",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Query65(string orderId, string txnTime)
-        {
-            var request = new UnionPayForm_6_5_QueryRequest()
-            {
-                TxnType = "00",
-                TxnSubType = "00",
-                BizType = "000201",
-                OrderId = orderId,
-                TxnTime = txnTime,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthDealFront671(string orderId, string txnTime, string txnAmt, string currencyCode, string payTimeout, string frontUrl, string backUrl)
-        {
-            var request = new UnionPayForm_6_7_1_AuthDeal_FrontRequest()
-            {
-                TxnType = "02",
-                TxnSubType = "01",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                CurrencyCode = currencyCode,
-                PayTimeout = payTimeout,
-                FrontUrl = frontUrl,
-                BackUrl = backUrl,
-            };
-            var response = await _client.PageExecuteAsync(request, "POST");
-            return Content(response.Body, "text/html");
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthUndo672(string orderId, string txnTime, string txnAmt, string origQryId, string backUrl)
-        {
-            var request = new UnionPayForm_6_7_2_AuthUndoRequest()
-            {
-                TxnType = "32",
-                TxnSubType = "00",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthFinish673(string orderId, string txnTime, string txnAmt, string origQryId, string backUrl)
-        {
-            var request = new UnionPayForm_6_7_3_AuthFinishRequest()
-            {
-                TxnType = "03",
-                TxnSubType = "00",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AuthFinishUndo674(string orderId, string txnTime, string txnAmt, string origQryId, string backUrl)
-        {
-            var request = new UnionPayForm_6_7_4_AuthFinishUndoRequest()
-            {
-                TxnType = "03",
-                TxnSubType = "00",
-                BizType = "000201",
-                ChannelType = "07",
-                OrderId = orderId,
-                TxnTime = txnTime,
-                TxnAmt = txnAmt,
-                OrigQryId = origQryId,
-                BackUrl = backUrl,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> FileTransfer66(string fileType, string txnTime, string settleDate)
-        {
-            var request = new UnionPayForm_6_6_FileTransferRequest()
-            {
-                TxnType = "76",
-                TxnSubType = "01",
-                BizType = "000000",
-                FileType = fileType,
-                TxnTime = txnTime,
-                SettleDate = settleDate,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-        #endregion
-    }
-}

+ 0 - 269
samples/WebApplicationSample/Controllers/WeChatPayController.cs

@@ -1,269 +0,0 @@
-using Essensoft.AspNetCore.Payment.WeChatPay;
-using Essensoft.AspNetCore.Payment.WeChatPay.Parser;
-using Essensoft.AspNetCore.Payment.WeChatPay.Request;
-using Essensoft.AspNetCore.Payment.WeChatPay.Response;
-using Essensoft.AspNetCore.Payment.WeChatPay.Utility;
-using Microsoft.AspNetCore.Mvc;
-using System;
-using System.Threading.Tasks;
-
-namespace WebApplicationSample.Controllers
-{
-    public class WeChatPayController : Controller
-    {
-        private readonly WeChatPayClient _client = null;
-
-        public WeChatPayController(WeChatPayClient client)
-        {
-            _client = client;
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> UnifiedOrder(string out_trade_no, string body, int total_fee, string spbill_create_ip, string notify_url, string trade_type, string openid)
-        {
-            var request = new WeChatPayUnifiedOrderRequest()
-            {
-                OutTradeNo = out_trade_no,
-                Body = body,
-                TotalFee = total_fee,
-                SpbillCreateIp = spbill_create_ip,
-                NotifyUrl = notify_url,
-                TradeType = trade_type,
-                OpenId = openid,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> AppOrder(string out_trade_no, string body, int total_fee, string spbill_create_ip, string notify_url, string trade_type)
-        {
-            var request = new WeChatPayUnifiedOrderRequest()
-            {
-                OutTradeNo = out_trade_no,
-                Body = body,
-                TotalFee = total_fee,
-                SpbillCreateIp = spbill_create_ip,
-                NotifyUrl = notify_url,
-                TradeType = trade_type,
-            };
-            var response = await _client.ExecuteAsync(request);
-
-            // 组合"调起支付接口"所需参数 :
-
-            var unixEpoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
-            var timeStamp = (long)((DateTime.Now - unixEpoch).TotalSeconds);
-
-            var dic = new WeChatPayDictionary
-            {
-                { "appid", _client.Options.AppId },
-                { "partnerid",_client.Options.MchId  },
-                { "prepayid", response.PrepayId },
-                { "package", "Sign=WXPay" },
-                { "noncestr", Guid.NewGuid().ToString("N") },
-                { "timestamp", timeStamp }
-            };
-            // 将这些参数签名
-            dic.Add("sign", WeChatPaySignature.SignWithKey(dic, _client.Options.Key));
-
-            // 将签名后的参数(dic)给 ios/android端 由其去调起微信APP(https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5)
-            return Ok(dic);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> OrderQuery(string transaction_id, string out_trade_no)
-        {
-            var request = new WeChatPayOrderQueryRequest()
-            {
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> CloseOrder(string out_trade_no)
-        {
-            var request = new WeChatPayCloseOrderRequest()
-            {
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Refund(string out_refund_no, string transaction_id, string out_trade_no, int total_fee, int refund_fee, string refund_desc, string notify_url)
-        {
-            var request = new WeChatPayRefundRequest()
-            {
-                OutRefundNo = out_refund_no,
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-                TotalFee = total_fee,
-                RefundFee = refund_fee,
-                RefundDesc = refund_desc,
-                NotifyUrl = notify_url,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> RefundQuery(string refund_id, string out_refund_no, string transaction_id, string out_trade_no)
-        {
-            var request = new WeChatPayRefundQueryRequest()
-            {
-                RefundId = refund_id,
-                OutRefundNo = out_refund_no,
-                TransactionId = transaction_id,
-                OutTradeNo = out_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> DownloadBill(string bill_date, string bill_type, string tar_type)
-        {
-            var request = new WeChatPayDownloadBillRequest()
-            {
-                BillDate = bill_date,
-                BillType = bill_type,
-                TarType = tar_type,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> Transfers(string partner_trade_no, string openid, string check_name, string re_user_name, int amount, string desc, string spbill_create_ip)
-        {
-            var request = new WeChatPayTransfersRequest()
-            {
-                PartnerTradeNo = partner_trade_no,
-                OpenId = openid,
-                CheckName = check_name,
-                ReUserName = re_user_name,
-                Amount = amount,
-                Desc = desc,
-                SpbillCreateIp = spbill_create_ip
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> GetTransferInfo(string partner_trade_no)
-        {
-            var request = new WeChatPayGetTransferInfoRequest()
-            {
-                PartnerTradeNo = partner_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> GetPublicKey()
-        {
-            var request = new WeChatPayGetPublicKeyRequest();
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> PayBank(string partner_trade_no, string bank_no, string true_name, string bank_code, int amount, string desc)
-        {
-            var request = new WeChatPayPayBankRequest()
-            {
-                PartnerTradeNo = partner_trade_no,
-                EncBankNo = bank_no,
-                EncTrueName = true_name,
-                BankCode = bank_code,
-                Amount = amount,
-                Desc = desc,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> QueryBank(string partner_trade_no)
-        {
-            var request = new WeChatPayQueryBankRequest()
-            {
-                PartnerTradeNo = partner_trade_no,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> DownloadFundFlow(string bill_date, string account_type, string tar_type)
-        {
-            var request = new WeChatPayDownloadFundFlowRequest()
-            {
-                BillDate = bill_date,
-                AccountType = account_type,
-                TarType = tar_type,
-            };
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> SendRedPack(string mch_billno, string send_name, string re_openid, int total_amount, string wishing, string client_ip, string act_name, string remark)
-        {
-            var request = new WeChatPaySendRedPackRequest()
-            {
-                MchBillNo = mch_billno,
-                SendName = send_name,
-                ReOpenId = re_openid,
-                TotalAmount = total_amount,
-                TotalNum = 1,
-                Wishing = wishing,
-                ClientIp = client_ip,
-                ActName = act_name,
-                Remark = remark,
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> SendGroupRedPack(string mch_billno, string send_name, string re_openid, int total_amount, string wishing, string act_name, string remark)
-        {
-            var request = new WeChatPaySendGroupRedPackRequest()
-            {
-                MchBillNo = mch_billno,
-                SendName = send_name,
-                ReOpenId = re_openid,
-                TotalAmount = total_amount,
-                TotalNum = 1,
-                AmtType = "ALL_RAND",
-                Wishing = wishing,
-                ActName = act_name,
-                Remark = remark,
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-
-        [HttpPost]
-        public async Task<IActionResult> GetHBInfo(string mch_billno, string bill_type)
-        {
-            var request = new WeChatPayGetHBInfoRequest()
-            {
-                MchBillNo = mch_billno,
-                BillType = bill_type
-            };
-
-            var response = await _client.ExecuteAsync(request);
-            return Ok(response.Body);
-        }
-    }
-}

+ 0 - 9
samples/WebApplicationSample/Models/ErrorViewModel.cs

@@ -1,9 +0,0 @@
-namespace WebApplicationSample.Models
-{
-    public class ErrorViewModel
-    {
-        public string RequestId { get; set; }
-
-        public bool ShowRequestId => !string.IsNullOrEmpty(RequestId);
-    }
-}

+ 0 - 19
samples/WebApplicationSample/Program.cs

@@ -1,19 +0,0 @@
-using Microsoft.AspNetCore;
-using Microsoft.AspNetCore.Hosting;
-
-namespace WebApplicationSample
-{
-    public class Program
-    {
-        public static void Main(string[] args)
-        {
-            BuildWebHost(args).Run();
-        }
-
-        public static IWebHost BuildWebHost(string[] args) =>
-            WebHost.CreateDefaultBuilder(args)
-                .UseStartup<Startup>()
-            .UseUrls("http://*:5000")
-                .Build();
-    }
-}

+ 0 - 19
samples/WebApplicationSample/Properties/PublishProfiles/FolderProfile.pubxml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-此文件由 Web 项目的发布/打包过程使用。可以通过编辑此 MSBuild 文件
-自定义此过程的行为。为了解与此相关的更多内容,请访问 https://go.microsoft.com/fwlink/?LinkID=208121。 
--->
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <WebPublishMethod>FileSystem</WebPublishMethod>
-    <PublishProvider>FileSystem</PublishProvider>
-    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
-    <LastUsedPlatform>Any CPU</LastUsedPlatform>
-    <SiteUrlToLaunchAfterPublish />
-    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
-    <ExcludeApp_Data>False</ExcludeApp_Data>
-    <ProjectGuid>a4d0312b-d877-4bbe-a530-c5b5e417f577</ProjectGuid>
-    <publishUrl>bin\Release\PublishOutput</publishUrl>
-    <DeleteExistingFiles>False</DeleteExistingFiles>
-  </PropertyGroup>
-</Project>

+ 0 - 27
samples/WebApplicationSample/Properties/launchSettings.json

@@ -1,27 +0,0 @@
-{
-  "iisSettings": {
-    "windowsAuthentication": false,
-    "anonymousAuthentication": true,
-    "iisExpress": {
-      "applicationUrl": "http://localhost:5000/",
-      "sslPort": 0
-    }
-  },
-  "profiles": {
-    "IIS Express": {
-      "commandName": "IISExpress",
-      "launchBrowser": true,
-      "environmentVariables": {
-        "ASPNETCORE_ENVIRONMENT": "Development"
-      }
-    },
-    "WebApplicationSample": {
-      "commandName": "Project",
-      "launchBrowser": true,
-      "environmentVariables": {
-        "ASPNETCORE_ENVIRONMENT": "Development"
-      },
-      "applicationUrl": "http://localhost:5000/"
-    }
-  }
-}

+ 0 - 117
samples/WebApplicationSample/Startup.cs

@@ -1,117 +0,0 @@
-using Essensoft.AspNetCore.Payment.Alipay;
-using Essensoft.AspNetCore.Payment.JDPay;
-using Essensoft.AspNetCore.Payment.LianLianPay;
-using Essensoft.AspNetCore.Payment.QPay;
-using Essensoft.AspNetCore.Payment.UnionPay;
-using Essensoft.AspNetCore.Payment.WeChatPay;
-using Microsoft.AspNetCore.Builder;
-using Microsoft.AspNetCore.Hosting;
-using Microsoft.Extensions.Configuration;
-using Microsoft.Extensions.DependencyInjection;
-using System.Text.Encodings.Web;
-using System.Text.Unicode;
-
-namespace WebApplicationSample
-{
-    public class Startup
-    {
-        public Startup(IConfiguration configuration)
-        {
-            Configuration = configuration;
-        }
-
-        public IConfiguration Configuration { get; }
-
-        // This method gets called by the runtime. Use this method to add services to the container.
-        public void ConfigureServices(IServiceCollection services)
-        {
-            services.AddMvc();
-
-            // 参数配置 可参考以下两篇文章.
-
-            // ASP.NET Core Web 支付功能接入 微信-扫码支付篇
-            // http://www.cnblogs.com/essenroc/p/8630730.html
-            // ASP.NET Core Web 支付功能接入 支付宝-电脑网页支付篇
-            // https://www.cnblogs.com/essenroc/p/8627775.html
-
-            services.AddAlipay();
-            services.AddJDPay();
-            services.AddQPay();
-            services.AddUnionPay();
-            services.AddWeChatPay();
-            services.AddLianLianPay();
-
-            services.Configure<AlipayOptions>(Configuration.GetSection("Alipay"));
-            services.Configure<JDPayOptions>(Configuration.GetSection("JDPay"));
-            services.Configure<QPayOptions>(Configuration.GetSection("QPay"));
-            services.Configure<UnionPayOptions>(Configuration.GetSection("UnionPay"));
-            services.Configure<WeChatPayOptions>(Configuration.GetSection("WeChatPay"));
-            services.Configure<LianLianPayOptions>(Configuration.GetSection("LianLianPay"));
-
-            services.AddWebEncoders(opt =>
-            {
-                opt.TextEncoderSettings = new TextEncoderSettings(UnicodeRanges.All);
-            });
-
-            // Json格式 配置参数. 具体参数见 AlipayOptions、JDPayOptions、QPayOptions、UnionPayOptions、WeChatPayOptions类
-            //{
-            //  "Alipay": {
-            //    "AppId": "xxx",
-            //    "RsaPublicKey": "xxx",
-            //    "RsaPrivateKey": "xxx",
-            //    "SignType" : "RSA2"
-            //  },
-            //  "JDPay": {
-            //    "Merchant": "xxx",
-            //    "RsaPublicKey": "xxx",
-            //    "RsaPrivateKey": "xxx",
-            //    "DesKey": "xxx"
-            //  },
-            //  "QPay": {
-            //    "MchId": "xxx",
-            //    "Key": "xxx",
-            //    "Certificate": "xxx",
-            //  },
-            //  "UnionPay": {
-            //    "MerId": "xxx",
-            //    "SignCert": "xxx",
-            //    "SignCertPassword": "xxx",
-            //    "EncryptCert": "xxx",
-            //    "MiddleCert": "xxx",
-            //    "RootCert": "xxx",
-            //    "TestMode": "true",
-            //  },
-            //  "WeChatPay": {
-            //    "AppId": "xxx",
-            //    "MchId": "xxx",
-            //    "Key": "xxx",
-            //    "Certificate": "xxx",
-            //    "RsaPublicKey": "xxx",
-            //  }
-            //}
-        }
-
-        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
-        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
-        {
-            if (env.IsDevelopment())
-            {
-                app.UseBrowserLink();
-                app.UseDeveloperExceptionPage();
-            }
-            else
-            {
-                app.UseExceptionHandler("/Home/Error");
-            }
-
-            app.UseStaticFiles();
-
-            app.UseMvc(routes =>
-            {
-                routes.MapRoute(
-                    name: "default",
-                    template: "{controller=Home}/{action=Index}/{id?}");
-            });
-        }
-    }
-}

+ 0 - 2091
samples/WebApplicationSample/Views/Home/Index.cshtml

@@ -1,2091 +0,0 @@
-@{
-    ViewData["Title"] = "Payment 示例";
-}
-<div id="wrapper">
-
-    <div id="header">
-        <h2>@ViewData["Title"]</h2>
-    </div>
-
-    <div id="tabs-api">
-        <ul>
-            <li><a href="#tabs-api-1">前言</a></li>
-            <li><a href="#tabs-api-alipay">支付宝</a></li>
-            <li><a href="#tabs-api-wechatpay">微信支付</a></li>
-            <li><a href="#tabs-api-qpay">QQ钱包</a></li>
-            <li><a href="#tabs-api-jdpay">京东支付</a></li>
-            <li><a href="#tabs-api-unionpay">银联支付</a></li>
-            <li><a href="#tabs-api-LianLianPay">连连支付</a></li>
-        </ul>
-        <div id="tabs-api-1">
-            <h3>支付平台 官方文档:</h3>
-            <p>支付宝:<a href="https://openhome.alipay.com/developmentDocument.htm" target="_blank">文档中心</a>、<a href="https://open.alipay.com/support/supportCenter.htm" target="_blank">技术支持中心</a>、<a href="https://openclub.alipay.com/index.php" target="_blank">开发者社区</a></p>
-            <p>微信支付:<a href="https://pay.weixin.qq.com/wiki/doc/api/index.html" target="_blank">开发文档</a>、<a href="http://wxpay.wxutil.com/qa/index.php" target="_blank">问答中心</a>、<a href="http://kf.qq.com/product/wechatpaymentmerchant.html" target="_blank">帮助中心</a></p>
-            <p>QQ钱包:<a href="https://qpay.qq.com/qpaywiki.shtml" target="_blank">开发文档</a>、<a href="http://kf.qq.com/product/qq_enterprise.html" target="_blank">帮助中心</a></p>
-            <p>京东支付:<a href="http://payapi.jd.com/" target="_blank">开发文档</a></p>
-            <p>银联支付:<a href="https://open.unionpay.com/ajweb/product" target="_blank">开放平台</a></p>
-            <p>连连支付:<a href="http://open.LianLianPay.com/" target="_blank">开放平台</a></p>
-            <h3>Payment:</h3>
-            <p>QQ交流群:<a target="_blank" href="//shang.qq.com/wpa/qunwpa?idkey=aac56c8f02f54893267d3ac90787c1794a7687f3c31a923812a36b67c4ee6271">522457525</a></p>
-            <h3>使用方式</h3>
-            <p>见示例项目:WebApplicationSample</p>
-        </div>
-        <div id="tabs-api-alipay">
-            <div id="tabs-purchase-alipay">
-                <ul>
-                    <li><a href="#tabs-purchase-1">电脑网站支付</a></li>
-                    <li><a href="#tabs-purchase-2">手机网站支付</a></li>
-                    <li><a href="#tabs-purchase-3">扫码支付</a></li>
-                    <li><a href="#tabs-purchase-4">条码支付</a></li>
-                    <li><a href="#tabs-purchase-5">交易查询</a></li>
-                    <li><a href="#tabs-purchase-6">交易退款</a></li>
-                    <li><a href="#tabs-purchase-7">退款查询</a></li>
-                    <li><a href="#tabs-purchase-8">交易关闭</a></li>
-                    <li><a href="#tabs-purchase-9">单笔转账</a></li>
-                    <li><a href="#tabs-purchase-10">转账查询</a></li>
-                    <li><a href="#tabs-purchase-11">对账查询</a></li>
-                </ul>
-
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="Alipay" asp-action="PagePay" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>subject:</label>
-                            <input type="text" name="subject" value="支付宝电脑网站支付测试">
-                        </p>
-                        <p>
-                            <label>total_amount:</label>
-                            <input type="text" name="total_amount" value="0.01" title="单位为元,精确至小数点后2位。">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body">
-                        </p>
-                        <p>
-                            <label>product_code:</label>
-                            <input type="text" name="product_code" value="FAST_INSTANT_TRADE_PAY">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/alipay/pagepay">
-                        </p>
-                        <p>
-                            <label>return_url:</label>
-                            <input type="text" name="return_url" value="http://www.baidu.com/alipay/pagepayreturn">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/270/alipay.trade.page.pay" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="Alipay" asp-action="WapPay" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>subject:</label>
-                            <input type="text" name="subject" value="支付宝手机网站支付测试">
-                        </p>
-                        <p>
-                            <label>total_amount:</label>
-                            <input type="text" name="total_amount" value="0.01" title="单位为元,精确至小数点后2位。">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body">
-                        </p>
-                        <p>
-                            <label>product_code:</label>
-                            <input type="text" name="product_code" value="QUICK_WAP_WAY">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/alipay/wappay">
-                        </p>
-                        <p>
-                            <label>return_url:</label>
-                            <input type="text" name="return_url" value="http://www.baidu.com/alipay/wappayreturn">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/203/107090/" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="Alipay" asp-action="PreCreate" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>subject:</label>
-                            <input type="text" name="subject" value="支付宝扫码支付测试">
-                        </p>
-                        <p>
-                            <label>total_amount:</label>
-                            <input type="text" name="total_amount" value="0.01" title="单位为元,精确至小数点后2位。">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/alipay/precreate">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.precreate" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="Alipay" asp-action="Pay" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>scene:</label>
-                            <input type="text" name="scene" value="bar_code">
-                        </p>
-                        <p>
-                            <label>auth_code:</label>
-                            <input type="text" name="auth_code" value="">
-                        </p>
-                        <p>
-                            <label>subject:</label>
-                            <input type="text" name="subject" value="支付宝条码支付测试">
-                        </p>
-                        <p>
-                            <label>total_amount:</label>
-                            <input type="text" name="total_amount" value="0.01" title="单位为元,精确至小数点后2位。">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/alipay/pay">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.pay" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="Alipay" asp-action="Query" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>trade_no:</label>
-                            <input type="text" name="trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.query" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-6">
-                    <form class="api-form" asp-controller="Alipay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>trade_no:</label>
-                            <input type="text" name="trade_no">
-                        </p>
-                        <p>
-                            <label>out_request_no:</label>
-                            <input type="text" name="out_request_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>refund_amount:</label>
-                            <input type="text" name="refund_amount">
-                        </p>
-                        <p>
-                            <label>refund_reason:</label>
-                            <input type="text" name="refund_reason">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.refund" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-7">
-                    <form class="api-form" asp-controller="Alipay" asp-action="RefundQuery" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>trade_no:</label>
-                            <input type="text" name="trade_no">
-                        </p>
-                        <p>
-                            <label>out_request_no:</label>
-                            <input type="text" name="out_request_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.fastpay.refund.query" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-8">
-                    <form class="api-form" asp-controller="Alipay" asp-action="Close" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>trade_no:</label>
-                            <input type="text" name="trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_1/alipay.trade.close" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-9">
-                    <form class="api-form" asp-controller="Alipay" asp-action="Trans" method="post" target="_blank">
-                        <p>
-                            <label>out_biz_no:</label>
-                            <input type="text" name="out_biz_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>payee_type:</label>
-                            <input type="text" name="payee_type" value="ALIPAY_LOGONID">
-                        </p>
-                        <p>
-                            <label>payee_account:</label>
-                            <input type="text" name="payee_account">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount">
-                        </p>
-                        <p>
-                            <label>remark:</label>
-                            <input type="text" name="remark">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-10">
-                    <form class="api-form" asp-controller="Alipay" asp-action="TransQuery" method="post" target="_blank">
-                        <p>
-                            <label>out_biz_no:</label>
-                            <input type="text" name="out_biz_no">
-                        </p>
-                        <p>
-                            <label>order_id:</label>
-                            <input type="text" name="order_id">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_28/alipay.fund.trans.order.query" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-11">
-                    <form class="api-form" asp-controller="Alipay" asp-action="BillDownloadurlQuery" method="post" target="_blank">
-                        <p>
-                            <label>bill_date:</label>
-                            <input type="text" name="bill_date">
-                        </p>
-                        <p>
-                            <label>bill_type:</label>
-                            <input type="text" name="bill_type">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://docs.open.alipay.com/api_15/alipay.data.dataservice.bill.downloadurl.query" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-            </div>
-        </div>
-        <div id="tabs-api-wechatpay">
-            <div id="tabs-purchase-wechatpay">
-                <ul>
-                    <li><a href="#tabs-purchase-1">扫码支付</a></li>
-                    <li><a href="#tabs-purchase-2">公众号支付</a></li>
-                    <li><a href="#tabs-purchase-3">APP支付</a></li>
-                    <li><a href="#tabs-purchase-4">查询订单</a></li>
-                    <li><a href="#tabs-purchase-5">关闭订单</a></li>
-                    <li><a href="#tabs-purchase-6">申请退款</a></li>
-                    <li><a href="#tabs-purchase-7">查询退款</a></li>
-                    <li><a href="#tabs-purchase-8">下载对账单</a></li>
-                    <li><a href="#tabs-purchase-9">企业付款到零钱</a></li>
-                    <li><a href="#tabs-purchase-10">查询付款</a></li>
-                    <li><a href="#tabs-purchase-11">获取RSA加密公钥</a></li>
-                    <li><a href="#tabs-purchase-12">企业付款到银行卡</a></li>
-                    <li><a href="#tabs-purchase-13">查询企业付款银行卡</a></li>
-                    <li><a href="#tabs-purchase-14">下载资金账单</a></li>
-                </ul>
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="UnifiedOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body" value="微信扫码支付测试">
-                        </p>
-                        <p>
-                            <label>total_fee:</label>
-                            <input type="text" name="total_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>spbill_create_ip:</label>
-                            <input type="text" name="spbill_create_ip" value="127.0.0.1">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/wechatpay">
-                        </p>
-                        <p>
-                            <label>trade_type:</label>
-                            <input type="text" name="trade_type" value="NATIVE">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_1" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="UnifiedOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body" value="微信公众号支付支付测试">
-                        </p>
-                        <p>
-                            <label>total_fee:</label>
-                            <input type="text" name="total_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>spbill_create_ip:</label>
-                            <input type="text" name="spbill_create_ip" value="127.0.0.1">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/wechatpay">
-                        </p>
-                        <p>
-                            <label>trade_type:</label>
-                            <input type="text" name="trade_type" value="JSAPI">
-                        </p>
-                        <p>
-                            <label>openid:</label>
-                            <input type="text" name="openid" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="AppOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body" value="微信APP支付支付测试">
-                        </p>
-                        <p>
-                            <label>total_fee:</label>
-                            <input type="text" name="total_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>spbill_create_ip:</label>
-                            <input type="text" name="spbill_create_ip" value="127.0.0.1">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/wechatpay">
-                        </p>
-                        <p>
-                            <label>trade_type:</label>
-                            <input type="text" name="trade_type" value="APP">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="OrderQuery" method="post" target="_blank">
-                        <p>
-                            <label>transaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_2" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="CloseOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_3" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-6">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>out_refund_no:</label>
-                            <input type="text" name="out_refund_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>transaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>total_fee:</label>
-                            <input type="text" name="total_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>refund_fee:</label>
-                            <input type="text" name="refund_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>refund_desc:</label>
-                            <input type="text" name="refund_desc">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/wechatpay/refund">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_4" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-7">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="RefundQuery" method="post" target="_blank">
-                        <p>
-                            <label>refund_id:</label>
-                            <input type="text" name="refund_id">
-                        </p>
-                        <p>
-                            <label>out_refund_no:</label>
-                            <input type="text" name="out_refund_no">
-                        </p>
-                        <p>
-                            <label>transaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_5" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-8">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="DownloadBill" method="post" target="_blank">
-                        <p>
-                            <label>bill_date:</label>
-                            <input type="text" name="bill_date">
-                        </p>
-                        <p>
-                            <label>bill_type:</label>
-                            <input type="text" name="bill_type">
-                        </p>
-                        <p>
-                            <label>tar_type:</label>
-                            <input type="text" name="tar_type">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_6" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-9">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="Transfers" method="post" target="_blank">
-                        <p>
-                            <label>partner_trade_no:</label>
-                            <input type="text" name="partner_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>openid:</label>
-                            <input type="text" name="openid">
-                        </p>
-                        <p>
-                            <label>check_name:</label>
-                            <input type="text" name="check_name" value="NO_CHECK">
-                        </p>
-                        <p>
-                            <label>re_user_name:</label>
-                            <input type="text" name="re_user_name">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="100">
-                        </p>
-                        <p>
-                            <label>desc:</label>
-                            <input type="text" name="desc" value="企业付款测试">
-                        </p>
-                        <p>
-                            <label>spbill_create_ip:</label>
-                            <input type="text" name="spbill_create_ip" value="127.0.0.1">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-10">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="GetTransferInfo" method="post" target="_blank">
-                        <p>
-                            <label>partner_trade_no:</label>
-                            <input type="text" name="partner_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_3" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-11">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="GetPublicKey" method="post" target="_blank">
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=24_7&index=4" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-12">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="PayBank" method="post" target="_blank">
-                        <p>
-                            <label>partner_trade_no:</label>
-                            <input type="text" name="partner_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>bank_no:</label>
-                            <input type="text" name="bank_no">
-                        </p>
-                        <p>
-                            <label>true_name:</label>
-                            <input type="text" name="true_name">
-                        </p>
-                        <p>
-                            <label>bank_code:</label>
-                            <input type="text" name="bank_code">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="1">
-                        </p>
-                        <p>
-                            <label>desc:</label>
-                            <input type="text" name="desc" value="企业付款到银行卡测试">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=24_2" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-13">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="QueryBank" method="post" target="_blank">
-                        <p>
-                            <label>partner_trade_no:</label>
-                            <input type="text" name="partner_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=24_3" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-14">
-                    <form class="api-form" asp-controller="WeChatPay" asp-action="DownloadFundFlow" method="post" target="_blank">
-                        <p>
-                            <label>bill_date:</label>
-                            <input type="text" name="bill_date">
-                        </p>
-                        <p>
-                            <label>account_type:</label>
-                            <input type="text" name="account_type">
-                        </p>
-                        <p>
-                            <label>tar_type:</label>
-                            <input type="text" name="tar_type">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=9_18&index=7" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-            </div>
-        </div>
-        <div id="tabs-api-qpay">
-            <div id="tabs-purchase-qpay">
-                <ul>
-                    <li><a href="#tabs-purchase-1">扫码支付</a></li>
-                    <li><a href="#tabs-purchase-2">查询订单</a></li>
-                    <li><a href="#tabs-purchase-3">关闭订单</a></li>
-                    <li><a href="#tabs-purchase-4">申请退款</a></li>
-                    <li><a href="#tabs-purchase-5">查询退款</a></li>
-                </ul>
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="QPay" asp-action="UnifiedOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>body:</label>
-                            <input type="text" name="body" value="QQ钱包扫码支付测试">
-                        </p>
-                        <p>
-                            <label>total_fee:</label>
-                            <input type="text" name="total_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>spbill_create_ip:</label>
-                            <input type="text" name="spbill_create_ip" value="127.0.0.1">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/qpay">
-                        </p>
-                        <p>
-                            <label>trade_type:</label>
-                            <input type="text" name="trade_type" value="NATIVE">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://qpay.qq.com/qpaywiki/showdocument.php?pid=38&docid=58" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="QPay" asp-action="OrderQuery" method="post" target="_blank">
-                        <p>
-                            <label>transaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://qpay.qq.com/qpaywiki/showdocument.php?pid=38&docid=60" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="QPay" asp-action="CloseOrder" method="post" target="_blank">
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://qpay.qq.com/qpaywiki/showdocument.php?pid=38&docid=61" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="QPay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>out_refund_no:</label>
-                            <input type="text" name="out_refund_no" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>QQtransaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>refund_fee:</label>
-                            <input type="text" name="refund_fee" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>op_user_idID:</label>
-                            <input type="text" name="op_user_id">
-                        </p>
-                        <p>
-                            <label>op_user_passwd:</label>
-                            <input type="text" name="op_user_passwd">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://qpay.qq.com/qpaywiki/showdocument.php?pid=38&docid=62" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="QPay" asp-action="RefundQuery" method="post" target="_blank">
-                        <p>
-                            <label>refund_id:</label>
-                            <input type="text" name="refund_id">
-                        </p>
-                        <p>
-                            <label>out_refund_no:</label>
-                            <input type="text" name="out_refund_no">
-                        </p>
-                        <p>
-                            <label>transaction_id:</label>
-                            <input type="text" name="transaction_id">
-                        </p>
-                        <p>
-                            <label>out_trade_no:</label>
-                            <input type="text" name="out_trade_no">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://qpay.qq.com/qpaywiki/showdocument.php?pid=38&docid=63" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-            </div>
-        </div>
-        <div id="tabs-api-jdpay">
-            <div id="tabs-purchase-jdpay">
-                <ul>
-                    <li><a href="#tabs-purchase-1">电脑网站支付</a></li>
-                    <li><a href="#tabs-purchase-2">手机网站支付</a></li>
-                    <li><a href="#tabs-purchase-3">扫码支付</a></li>
-                    <li><a href="#tabs-purchase-4">交易查询</a></li>
-                    <li><a href="#tabs-purchase-5">退款申请</a></li>
-                    <li><a href="#tabs-purchase-6">退款查询</a></li>
-                </ul>
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="JDPay" asp-action="SaveOrderPC" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>tradeName:</label>
-                            <input type="text" name="tradeName" value="京东电脑网站支付测试">
-                        </p>
-                        <p>
-                            <label>tradeDesc:</label>
-                            <input type="text" name="tradeDesc" value="交易描述">
-                        </p>
-                        <p>
-                            <label>tradeTime:</label>
-                            <input type="text" name="tradeTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="1">
-                        </p>
-                        <p>
-                            <label>orderType:</label>
-                            <input type="text" name="orderType" value="1">
-                        </p>
-                        <p>
-                            <label>currency:</label>
-                            <input type="text" name="currency" value="CNY">
-                        </p>
-                        <p>
-                            <label>note:</label>
-                            <input type="text" name="note" value="备注">
-                        </p>
-                        <p>
-                            <label>callbackUrl:</label>
-                            <input type="text" name="callbackUrl" value="http://www.baidu.com/jdpay/return">
-                        </p>
-                        <p>
-                            <label>notifyUrl:</label>
-                            <input type="text" name="notifyUrl" value="http://www.baidu.com/notify/jdpay">
-                        </p>
-                        <p>
-                            <label>tradeType:</label>
-                            <input type="text" name="tradeType" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="JDPay" asp-action="SaveOrderH5" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>tradeName:</label>
-                            <input type="text" name="tradeName" value="京东手机网站支付测试">
-                        </p>
-                        <p>
-                            <label>tradeDesc:</label>
-                            <input type="text" name="tradeDesc" value="交易描述">
-                        </p>
-                        <p>
-                            <label>tradeTime:</label>
-                            <input type="text" name="tradeTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="1">
-                        </p>
-                        <p>
-                            <label>orderType:</label>
-                            <input type="text" name="orderType" value="1">
-                        </p>
-                        <p>
-                            <label>currency:</label>
-                            <input type="text" name="currency" value="CNY">
-                        </p>
-                        <p>
-                            <label>note:</label>
-                            <input type="text" name="note" value="备注">
-                        </p>
-                        <p>
-                            <label>callbackUrl:</label>
-                            <input type="text" name="callbackUrl" value="http://www.baidu.com/jdpay/return">
-                        </p>
-                        <p>
-                            <label>notifyUrl:</label>
-                            <input type="text" name="notifyUrl" value="http://www.baidu.com/notify/jdpay">
-                        </p>
-                        <p>
-                            <label>tradeType:</label>
-                            <input type="text" name="tradeType" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="JDPay" asp-action="Uniorder" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>tradeName:</label>
-                            <input type="text" name="tradeName" value="京东扫码支付测试">
-                        </p>
-                        <p>
-                            <label>tradeDesc:</label>
-                            <input type="text" name="tradeDesc" value="交易描述">
-                        </p>
-                        <p>
-                            <label>tradeTime:</label>
-                            <input type="text" name="tradeTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="1">
-                        </p>
-                        <p>
-                            <label>orderType:</label>
-                            <input type="text" name="orderType" value="1">
-                        </p>
-                        <p>
-                            <label>currency:</label>
-                            <input type="text" name="currency" value="CNY">
-                        </p>
-                        <p>
-                            <label>note:</label>
-                            <input type="text" name="note" value="备注">
-                        </p>
-                        <p>
-                            <label>notifyUrl:</label>
-                            <input type="text" name="notifyUrl" value="http://www.baidu.com/notify/jdpay">
-                        </p>
-                        <p>
-                            <label>tradeType:</label>
-                            <input type="text" name="tradeType" value="QR">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="JDPay" asp-action="OrderQuery" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum">
-                        </p>
-                        <p>
-                            <label>oTradeNum:</label>
-                            <input type="text" name="oTradeNum">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="JDPay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>oTradeNum:</label>
-                            <input type="text" name="oTradeNum">
-                        </p>
-                        <p>
-                            <label>amount:</label>
-                            <input type="text" name="amount" value="1">
-                        </p>
-                        <p>
-                            <label>currency:</label>
-                            <input type="text" name="currency" value="CNY">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notifyUrl" value="http://www.baidu.com/notify/jdpay">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-                <div id="tabs-purchase-6">
-                    <form class="api-form" asp-controller="JDPay" asp-action="RefundQuery" method="post" target="_blank">
-                        <p>
-                            <label>tradeNum:</label>
-                            <input type="text" name="tradeNum">
-                        </p>
-                        <p>
-                            <label>oTradeNum:</label>
-                            <input type="text" name="oTradeNum">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="http://payapi.jd.com/docList.html" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-
-            </div>
-        </div>
-        <div id="tabs-api-unionpay">
-            <div id="tabs-purchase-unionpay">
-                <ul>
-                    <li><a>二维码支付产品</a></li>
-                    <li><a href="#tabs-purchase-1">二维码消费(被扫)</a></li>
-                    <li><a href="#tabs-purchase-2">申请二维码(主扫)</a></li>
-                    <li><a href="#tabs-purchase-3">消费撤销</a></li>
-                    <li><a href="#tabs-purchase-4">退货</a></li>
-                    <li><a href="#tabs-purchase-5">交易状态查询</a></li>
-                    <li><a href="#tabs-purchase-6">对账文件下载</a></li>
-                    <li><a>网关支付产品</a></li>
-                    <li><a href="#tabs-purchase-10">跳转网关页面支付</a></li>
-                    <li><a href="#tabs-purchase-11">交易状态查询</a></li>
-                    <li><a href="#tabs-purchase-12">消费撤销</a></li>
-                    <li><a href="#tabs-purchase-13">退货</a></li>
-                    <li><a href="#tabs-purchase-14">对账文件下载</a></li>
-                    <li><a>网关支付产品-预授权</a></li>
-                    <li><a href="#tabs-purchase-20">跳转网关页面预授权</a></li>
-                    <li><a href="#tabs-purchase-21">预授权撤销</a></li>
-                    <li><a href="#tabs-purchase-22">预授权完成</a></li>
-                    <li><a href="#tabs-purchase-23">预授权完成撤销</a></li>
-                </ul>
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="AppConsume" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>qrNo:</label>
-                            <input type="text" name="qrNo" value="">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>currencyCode:</label>
-                            <input type="text" name="currencyCode" value="156">
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/appconsume">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/help/qrcodeFormPage" target="_blank">二维码仿真</a>
-                        <br />
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=55" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="ApplyQrCode" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>currencyCode:</label>
-                            <input type="text" name="currencyCode" value="156">
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/applyqrcode">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/help/qrcodeFormPage" target="_blank">二维码仿真</a>
-                        <br />
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=57" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="PurchaseUndo" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>origOrderId:</label>
-                            <input type="text" name="origOrderId" value="" />
-                        </p>
-                        <p>
-                            <label>origTxnTime:</label>
-                            <input type="text" name="origTxnTime" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/purchaseundo">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=58" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>origOrderId:</label>
-                            <input type="text" name="origOrderId" value="" />
-                        </p>
-
-                        <p>
-                            <label>origTxnTime:</label>
-                            <input type="text" name="origTxnTime" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/refund">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=59" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="Query563" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=60" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-6">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="FileTransfer057" method="post" target="_blank">
-                        <p>
-                            <label>fileType:</label>
-                            <input type="text" name="fileType" value="00">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>settleDate:</label>
-                            <input type="text" name="settleDate" value="0119">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=61" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-10">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="FrontConsume62" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>currencyCode:</label>
-                            <input type="text" name="currencyCode" value="156">
-                        </p>
-                        <p>
-                            <label>payTimeout:</label>
-                            <input type="text" name="payTimeout" value="@DateTime.Now.AddMinutes(15).ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>frontUrl:</label>
-                            <input type="text" name="frontUrl" value="http://www.baidu.com/unionpay/frontconsume62return">
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/frontconsume62">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=63" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-11">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="Query65" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=66" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-12">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="ConsumeUndo63" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/consumeundo63">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=64" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-13">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="Refund64" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/refund64">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=65" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-14">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="FileTransfer66" method="post" target="_blank">
-                        <p>
-                            <label>fileType:</label>
-                            <input type="text" name="fileType" value="00">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>settleDate:</label>
-                            <input type="text" name="settleDate" value="0119">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=89&apiId=61" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-20">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="AuthDealFront671" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>currencyCode:</label>
-                            <input type="text" name="currencyCode" value="156">
-                        </p>
-                        <p>
-                            <label>payTimeout:</label>
-                            <input type="text" name="payTimeout" value="@DateTime.Now.AddMinutes(15).ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>frontUrl:</label>
-                            <input type="text" name="frontUrl" value="http://www.baidu.com/unionpay/authdealfront671return">
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/authdealfront671">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=68" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-21">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="AuthUndo672" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/authundo672">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=69" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-22">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="AuthFinish673" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/authfinish673">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=70" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-                <div id="tabs-purchase-23">
-                    <form class="api-form" asp-controller="UnionPay" asp-action="AuthFinishUndo674" method="post" target="_blank">
-                        <p>
-                            <label>orderId:</label>
-                            <input type="text" name="orderId" value="@DateTime.Now.ToString("yyyyMMddHHmmssfff")">
-                        </p>
-                        <p>
-                            <label>txnTime:</label>
-                            <input type="text" name="txnTime" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>txnAmt:</label>
-                            <input type="text" name="txnAmt" value="1" title="单位为分。">
-                        </p>
-                        <p>
-                            <label>origQryId:</label>
-                            <input type="text" name="origQryId" value="" />
-                        </p>
-                        <p>
-                            <label>backUrl:</label>
-                            <input type="text" name="backUrl" value="http://www.baidu.com/notify/unionpay/authfinishundo674">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                    <hr />
-                    <p class="faq">
-                        <a href="https://open.unionpay.com/ajweb/product/newProApiShow?proId=1&apiId=71" target="_blank">* 查看接口 请求参数、响应参数</a>
-                    </p>
-                </div>
-            </div>
-        </div>
-        <div id="tabs-api-LianLianPay">
-            <div id="tabs-purchase-LianLianPay">
-                <ul>
-                    <li><a href="#tabs-purchase-1">快捷支付</a></li>
-                    <li><a href="#tabs-purchase-2">网银支付</a></li>
-                    <li><a href="#tabs-purchase-3">认证支付</a></li>
-                    <li><a href="#tabs-purchase-4">订单查询</a></li>
-                    <li><a href="#tabs-purchase-5">银行卡卡bin查询</a></li>
-                    <li><a href="#tabs-purchase-6">用户签约信息查询</a></li>
-                    <li><a href="#tabs-purchase-7">银行卡解约</a></li>
-                    <li><a href="#tabs-purchase-8">银行支持查询</a></li>
-                    <li><a href="#tabs-purchase-9">更换手机号申请</a></li>
-                    <li><a href="#tabs-purchase-10">更换手机号验证</a></li>
-                    <li><a href="#tabs-purchase-11">退款</a></li>
-                    <li><a href="#tabs-purchase-12">退款查询</a></li>
-                </ul>
-                <div id="tabs-purchase-1">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="QuickPay" method="post" target="_blank">
-                        <p>
-                            <label>no_order:</label>
-                            <input type="text" name="no_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>dt_order:</label>
-                            <input type="text" name="dt_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>money_order:</label>
-                            <input type="text" name="money_order" value="0.01">
-                        </p>
-                        <p>
-                            <label>name_goods:</label>
-                            <input type="text" name="name_goods" value="连连支付快捷支付测试">
-                        </p>
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="1080088">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/LianLianPay/quickpay">
-                        </p>
-                        <p>
-                            <label>url_return:</label>
-                            <input type="text" name="url_return" value="http://www.baidu.com/LianLianPay/quickpayreturn">
-                        </p>
-                        <p>
-                            <label>bank_code:</label>
-                            <input type="text" name="bank_code" value="">
-                        </p>
-                        <p>
-                            <label>pay_type:</label>
-                            <input type="text" name="pay_type" value="2">
-                        </p>
-                        <p>
-                            <label>no_agree:</label>
-                            <input type="text" name="no_agree" value="">
-                        </p>
-                        <p>
-                            <label>risk_item:</label>
-                            <input type="text" name="risk_item" value='{"frms_ware_category":"1999","user_info_full_name":"你好"}'>
-                        </p>
-                        <p>
-                            <label>id_type:</label>
-                            <input type="text" name="id_type" value="0">
-                        </p>
-                        <p>
-                            <label>id_no:</label>
-                            <input type="text" name="id_no" value="">
-                        </p>
-                        <p>
-                            <label>acct_name:</label>
-                            <input type="text" name="acct_name" value="">
-                        </p>
-                        <p>
-                            <label>card_no:</label>
-                            <input type="text" name="card_no" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-2">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="BankPay" method="post" target="_blank">
-                        <p>
-                            <label>no_order:</label>
-                            <input type="text" name="no_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>dt_order:</label>
-                            <input type="text" name="dt_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>money_order:</label>
-                            <input type="text" name="money_order" value="0.01">
-                        </p>
-                        <p>
-                            <label>name_goods:</label>
-                            <input type="text" name="name_goods" value="连连支付网银支付测试">
-                        </p>
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="1080088">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/LianLianPay/bankpay">
-                        </p>
-                        <p>
-                            <label>url_return:</label>
-                            <input type="text" name="url_return" value="http://www.baidu.com/LianLianPay/bankpayreturn">
-                        </p>
-                        <p>
-                            <label>risk_item:</label>
-                            <input type="text" name="risk_item" value='{"frms_ware_category":"1999","user_info_full_name":"你好"}'>
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-3">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="AuthPay" method="post" target="_blank">
-                        <p>
-                            <label>no_order:</label>
-                            <input type="text" name="no_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>dt_order:</label>
-                            <input type="text" name="dt_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>money_order:</label>
-                            <input type="text" name="money_order" value="0.01">
-                        </p>
-                        <p>
-                            <label>name_goods:</label>
-                            <input type="text" name="name_goods" value="连连支付认证支付测试">
-                        </p>
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="1080088">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/LianLianPay/authpay">
-                        </p>
-                        <p>
-                            <label>url_return:</label>
-                            <input type="text" name="url_return" value="http://www.baidu.com/LianLianPay/authpayreturn">
-                        </p>
-                        <p>
-                            <label>bank_code:</label>
-                            <input type="text" name="bank_code" value="">
-                        </p>
-                        <p>
-                            <label>pay_type:</label>
-                            <input type="text" name="pay_type" value="D">
-                        </p>
-                        <p>
-                            <label>no_agree:</label>
-                            <input type="text" name="no_agree" value="">
-                        </p>
-                        <p>
-                            <label>risk_item:</label>
-                            <input type="text" name="risk_item" value='{"frms_ware_category":"1999","user_info_full_name":"你好"}'>
-                        </p>
-                        <p>
-                            <label>id_type:</label>
-                            <input type="text" name="id_type" value="0">
-                        </p>
-                        <p>
-                            <label>id_no:</label>
-                            <input type="text" name="id_no" value="">
-                        </p>
-                        <p>
-                            <label>acct_name:</label>
-                            <input type="text" name="acct_name" value="">
-                        </p>
-                        <p>
-                            <label>card_no:</label>
-                            <input type="text" name="card_no" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-4">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="OrderQuery" method="post" target="_blank">
-                        <p>
-                            <label>no_order:</label>
-                            <input type="text" name="no_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>dt_order:</label>
-                            <input type="text" name="dt_order" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>oid_paybill:</label>
-                            <input type="text" name="oid_paybill" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-5">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="QueryBankCarBin" method="post" target="_blank">
-                        <p>
-                            <label>card_no:</label>
-                            <input type="text" name="card_no" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-6">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="QueryBankCarBindList" method="post" target="_blank">
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="">
-                        </p>
-                        <p>
-                            <label>offset:</label>
-                            <input type="text" name="offset" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-7">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="BankCardUnbind" method="post" target="_blank">
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="">
-                        </p>
-                        <p>
-                            <label>pay_type:</label>
-                            <input type="text" name="pay_type" value="">
-                        </p>
-                        <p>
-                            <label>no_agree:</label>
-                            <input type="text" name="no_agree" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-8">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="SupportBankQuery" method="post" target="_blank">
-                        <p>
-                            <label>bank_code:</label>
-                            <input type="text" name="bank_code" value="">
-                        </p>
-                        <p>
-                            <label>card_type:</label>
-                            <input type="text" name="card_type" value="">
-                        </p>
-                        <p>
-                            <label>product_type:</label>
-                            <input type="text" name="product_type" value="">
-                        </p>
-                        <p>
-                            <label>pay_chnl:</label>
-                            <input type="text" name="pay_chnl" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-9">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="ModifyPhone" method="post" target="_blank">
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="">
-                        </p>
-                        <p>
-                            <label>no_agree:</label>
-                            <input type="text" name="no_agree" value="">
-                        </p>
-                        <p>
-                            <label>pay_type:</label>
-                            <input type="text" name="pay_type" value="">
-                        </p>
-                        <p>
-                            <label>card_no:</label>
-                            <input type="text" name="card_no" value="">
-                        </p>
-                        <p>
-                            <label>bind_mob:</label>
-                            <input type="text" name="bind_mob" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-10">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="ModifyPhoneCheck" method="post" target="_blank">
-                        <p>
-                            <label>user_id:</label>
-                            <input type="text" name="user_id" value="">
-                        </p>
-                        <p>
-                            <label>token:</label>
-                            <input type="text" name="token" value="">
-                        </p>
-                        <p>
-                            <label>verify_code:</label>
-                            <input type="text" name="verify_code" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-11">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="Refund" method="post" target="_blank">
-                        <p>
-                            <label>no_refund:</label>
-                            <input type="text" name="no_refund" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>dt_refund:</label>
-                            <input type="text" name="dt_refund" value="@DateTime.Now.ToString("yyyyMMddHHmmss")">
-                        </p>
-                        <p>
-                            <label>money_refund:</label>
-                            <input type="text" name="money_refund" value="0.01">
-                        </p>
-                        <p>
-                            <label>no_order:</label>
-                            <input type="text" name="no_order" value="">
-                        </p>
-                        <p>
-                            <label>dt_order:</label>
-                            <input type="text" name="dt_order" value="">
-                        </p>
-                        <p>
-                            <label>oid_paybill:</label>
-                            <input type="text" name="oid_paybill" value="">
-                        </p>
-                        <p>
-                            <label>notify_url:</label>
-                            <input type="text" name="notify_url" value="http://www.baidu.com/notify/LianLianPay/refund">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-                <div id="tabs-purchase-12">
-                    <form class="api-form" asp-controller="LianLianPay" asp-action="RefundQuery" method="post" target="_blank">
-                        <p>
-                            <label>no_refund:</label>
-                            <input type="text" name="no_refund" value="">
-                        </p>
-                        <p>
-                            <label>dt_refund:</label>
-                            <input type="text" name="dt_refund" value="">
-                        </p>
-                        <p>
-                            <label>oid_refundno:</label>
-                            <input type="text" name="oid_refundno" value="">
-                        </p>
-                        <p>
-                            <label>&nbsp;</label>
-                            <input type="submit" class="button" value="提交">
-                        </p>
-                    </form>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-
-@section Scripts {
-    <script src="~/demo.js" asp-append-version="true"></script>
-}
-@section Styles {
-    <link rel="stylesheet" href="~/demo.css" asp-append-version="true">
-}

+ 0 - 22
samples/WebApplicationSample/Views/Shared/Error.cshtml

@@ -1,22 +0,0 @@
-@model ErrorViewModel
-@{
-    ViewData["Title"] = "Error";
-}
-
-<h1 class="text-danger">Error.</h1>
-<h2 class="text-danger">An error occurred while processing your request.</h2>
-
-@if (Model.ShowRequestId)
-{
-    <p>
-        <strong>Request ID:</strong> <code>@Model.RequestId</code>
-    </p>
-}
-
-<h3>Development Mode</h3>
-<p>
-    Swapping to <strong>Development</strong> environment will display more detailed information about the error that occurred.
-</p>
-<p>
-    <strong>Development environment should not be enabled in deployed applications</strong>, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the <strong>ASPNETCORE_ENVIRONMENT</strong> environment variable to <strong>Development</strong>, and restarting the application.
-</p>

+ 0 - 16
samples/WebApplicationSample/Views/Shared/_Layout.cshtml

@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <meta charset="utf-8" />
-    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <title>@ViewData["Title"] - WebApplicationSample</title>
-    <link rel="stylesheet" href="~/jquery-ui.min.css" asp-append-version="true">
-    @RenderSection("Styles", required: false)
-</head>
-<body style="background-color:#e5eecc;">
-    @RenderBody()
-    <script src="~/jquery.min.js" asp-append-version="true"></script>
-    <script src="~/jquery-ui.min.js" asp-append-version="true"></script>
-    @RenderSection("Scripts", required: false)
-</body>
-</html>

+ 0 - 3
samples/WebApplicationSample/Views/_ViewImports.cshtml

@@ -1,3 +0,0 @@
-@using WebApplicationSample
-@using WebApplicationSample.Models
-@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

+ 0 - 3
samples/WebApplicationSample/Views/_ViewStart.cshtml

@@ -1,3 +0,0 @@
-@{
-    Layout = "_Layout";
-}

+ 0 - 27
samples/WebApplicationSample/WebApplicationSample.csproj

@@ -1,27 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk.Web">
-
-  <PropertyGroup>
-    <TargetFramework>netcoreapp2.0</TargetFramework>
-    <UserSecretsId>a59ca38e-9b52-44fe-b3d2-8cb5a1641623</UserSecretsId>
-    <Version>1.2.1</Version>
-    <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
-  </PropertyGroup>
-
-  <ItemGroup>
-    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.7" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.2" />
-  </ItemGroup>
-
-  <ItemGroup>
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.Alipay\Essensoft.AspNetCore.Payment.Alipay.csproj" />
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.JDPay\Essensoft.AspNetCore.Payment.JDPay.csproj" />
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.LianLianPay\Essensoft.AspNetCore.Payment.LianLianPay.csproj" />
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.QPay\Essensoft.AspNetCore.Payment.QPay.csproj" />
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.UnionPay\Essensoft.AspNetCore.Payment.UnionPay.csproj" />
-    <ProjectReference Include="..\..\src\Essensoft.AspNetCore.Payment.WeChatPay\Essensoft.AspNetCore.Payment.WeChatPay.csproj" />
-  </ItemGroup>
-
-</Project>

+ 0 - 10
samples/WebApplicationSample/appsettings.Development.json

@@ -1,10 +0,0 @@
-{
-  "Logging": {
-    "IncludeScopes": false,
-    "LogLevel": {
-      "Default": "Debug",
-      "System": "Information",
-      "Microsoft": "Information"
-    }
-  }
-}

+ 0 - 8
samples/WebApplicationSample/appsettings.json

@@ -1,8 +0,0 @@
-{
-  "Logging": {
-    "IncludeScopes": false,
-    "LogLevel": {
-      "Default": "Warning"
-    }
-  }
-}

+ 0 - 142
samples/WebApplicationSample/wwwroot/demo.css

@@ -1,142 +0,0 @@
-@CHARSET "UTF-8";
-/*! index页面 */
-.ui-tabs-vertical {
-    width: 51.5em;
-}
-
-    .ui-tabs-vertical .ui-tabs-nav {
-        padding: .2em .1em .2em .2em;
-        float: left;
-        width: 11em;
-    }
-
-        .ui-tabs-vertical .ui-tabs-nav li {
-            clear: left;
-            width: 100%;
-            border-bottom-width: 1px !important;
-            border-right-width: 0 !important;
-            margin: 0 -1px .2em 0;
-        }
-
-            .ui-tabs-vertical .ui-tabs-nav li a {
-                display: block;
-            }
-
-            .ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
-                padding-bottom: 0;
-                padding-right: .1em;
-                border-right-width: 1px;
-                border-right-width: 1px;
-            }
-
-    .ui-tabs-vertical .ui-tabs-panel {
-        padding: 1.2em;
-        float: right;
-        width: 37.5em;
-    }
-
-.ui-tabs {
-    font-family: 微软雅黑;
-}
-
-div#header {
-    width: inherit;
-    height: 3em;
-}
-
-div#wrapper {
-    font-family: 微软雅黑;
-    width: 62em;
-    margin: 0 auto;
-    font-size: 16px;
-    color: #5E5E5E;
-}
-
-h1, h2, h3, h4, h5, h6, h7, .ui-tooltip {
-    font-family: 微软雅黑 !important;
-    color: #555 !important;
-}
-
-
-/*! 各个接口的页面 */
-hr {
-    height: 1px;
-    border: none;
-    border-top: 1px dashed #9DC45F;
-}
-
-.api-form {
-    margin-left: auto;
-    margin-right: auto;
-    background: #F8F8F8;
-    padding: 30px 30px 20px 30px;
-    color: #666;
-    border-radius: 5px;
-    -webkit-border-radius: 5px;
-    -moz-border-radius: 5px;
-}
-
-    .api-form p {
-        display: block;
-        margin: 0px 0px 5px;
-    }
-
-        .api-form p > label {
-            float: left;
-            width: 10em;
-            text-align: right;
-            padding-right: 0.5em;
-            margin-top: .1em;
-            color: #5E5E5E;
-        }
-
-    .api-form input[type="text"] {
-        border: 1px solid #E5E5E5;
-        ;
-        color: #555;
-        height: 20px;
-        line-height: 15px;
-        margin-bottom: 16px;
-        margin-right: 6px;
-        margin-top: 2px;
-        outline: 0 none;
-        padding: 5px 0px 5px 5px;
-        width: 65%;
-        border-radius: 4px;
-        -webkit-border-radius: 4px;
-        -moz-border-radius: 4px;
-        -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-        -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-    }
-
-    .api-form input.button {
-        font-family: 微软雅黑;
-        background-color: #9DC45F;
-        border-radius: 5px;
-        -webkit-border-radius: 5px;
-        -moz-border-border-radius: 5px;
-        border: none;
-        padding: 10px 25px 10px 25px;
-        color: #FFF;
-        text-shadow: 1px 1px 1px #949494;
-    }
-
-        .api-form input.button:hover {
-            font-family: 微软雅黑;
-            background-color: #80A24A;
-        }
-
-    .api-form .showFaqBtn {
-        font-family: 微软雅黑;
-        float: right;
-        background-color: transparent;
-        color: inherit;
-        border: none;
-        padding: 10px 25px 10px 25px;
-    }
-
-.faq {
-    font-size: 14px;
-    font-weight: normal;
-}

+ 0 - 23
samples/WebApplicationSample/wwwroot/demo.js

@@ -1,23 +0,0 @@
-$(function () {
-    $("#tabs-api").tabs();
-    setApiDemoTabs("#tabs-purchase-alipay");
-    setApiDemoTabs("#tabs-purchase-wechatpay");
-    setApiDemoTabs("#tabs-purchase-qpay");
-    setApiDemoTabs("#tabs-purchase-jdpay");
-    setApiDemoTabs("#tabs-purchase-unionpay");
-    setApiDemoTabs("#tabs-purchase-LianLianPay");
-    $(document).tooltip();
-});
-
-function setApiDemoTabs(selector) {
-    $(selector).tabs({
-        beforeLoad: function (event, ui) {
-            ui.jqXHR.error(function () { ui.panel.html("加载中"); });
-        }, load: function (event, ui) {
-            $(".question").hide();
-            $(".showFaqBtn").click(
-                function () { $(".question").toggle(); });
-        }
-    }).addClass("ui-tabs-vertical ui-helper-clearfix");
-    $(selector + " li").removeClass("ui-corner-top").addClass("ui-corner-left");
-}

BIN
samples/WebApplicationSample/wwwroot/favicon.ico


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 6
samples/WebApplicationSample/wwwroot/jquery-ui.min.css


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 5
samples/WebApplicationSample/wwwroot/jquery-ui.min.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 1
samples/WebApplicationSample/wwwroot/jquery.min.js


Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно