From 9a6ce5f7180a4e8c9e8dfd4ea5232052d9220b3a Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 25 五月 2023 16:57:19 +0800
Subject: [PATCH] 修改司机端支付

---
 driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/DriverServiceImpl.java |  217 +++++++++++++++++++++++++++++-------------
 driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/api/DriverController.java           |   34 ++++++
 driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/IDriverService.java         |    2 
 driver/guns-admin/src/main/resources/application.yml                                                       |    8 
 driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/util/PayMoneyUtil.java              |   16 +-
 5 files changed, 195 insertions(+), 82 deletions(-)

diff --git a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/api/DriverController.java b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/api/DriverController.java
index c1e7500..90ca640 100644
--- a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/api/DriverController.java
+++ b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/api/DriverController.java
@@ -651,18 +651,22 @@
     @ApiOperation(value = "账户余额充值", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "充值金额", name = "amount", required = true, dataType = "double"),
+            @ApiImplicitParam(value = "支付方式(1=微信,2=支付宝)", name = "type", required = true, dataType = "int"),
             @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResponseWarpper balanceRecharge(Double amount){
+    public ResponseWarpper balanceRecharge(Integer type, Double amount){
         if(null == amount){
             return ResponseWarpper.success(ResultUtil.paranErr("amount"));
+        }
+        if(null == type){
+            return ResponseWarpper.success(ResultUtil.paranErr("type"));
         }
         try {
             Integer uid = driverService.getUserByRequest();
             if(null == uid){
                 return ResponseWarpper.tokenErr();
             }
-            ResultUtil resultUtil = driverService.balanceRecharge(uid, amount);
+            ResultUtil resultUtil = driverService.balanceRecharge(uid, type, amount);
             return ResponseWarpper.success(resultUtil);
         }catch (Exception e){
             e.printStackTrace();
@@ -698,6 +702,32 @@
     }
 
 
+    /**
+     * 账户余额充值支付回调
+     * @param request
+     * @param response
+     */
+    @ResponseBody
+    @PostMapping("/base/driver/balanceRechargeCallbackAli")
+    public void balanceRechargeCallbackAli(HttpServletRequest request, HttpServletResponse response){
+        try {
+            Map<String, String> map = payMoneyUtil.alipayCallback(request);
+            if(null != map){
+                String out_trade_no = map.get("out_trade_no");
+                String transaction_id = map.get("trade_no");
+                String orderId = out_trade_no.substring(17);
+                driverService.balanceRechargeCallback(out_trade_no, transaction_id);
+                response.setContentType("text/html;charset=UTF-8");
+                PrintWriter out;
+                out = response.getWriter();
+                out.println("success"); // 请不要修改或删除
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+
     @ResponseBody
     @PostMapping("/api/driver/queryPerformanceSummary")
 //    @ServiceLog(name = "获取业绩排行", url = "/api/driver/queryPerformanceSummary")
diff --git a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/IDriverService.java b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/IDriverService.java
index fe82d90..ed7f305 100644
--- a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/IDriverService.java
+++ b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/IDriverService.java
@@ -129,7 +129,7 @@
      * @return
      * @throws Exception
      */
-    ResultUtil balanceRecharge(Integer uid, Double amount) throws Exception;
+    ResultUtil balanceRecharge(Integer uid, Integer type, Double amount) throws Exception;
 
 
     /**
diff --git a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/DriverServiceImpl.java b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/DriverServiceImpl.java
index 8779229..b004e9e 100644
--- a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/DriverServiceImpl.java
+++ b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/service/impl/DriverServiceImpl.java
@@ -502,7 +502,7 @@
     @Override
     public PromotionWarpper queryPromotionQRCode(Integer uid) throws Exception {
         PromotionWarpper promotionWarpper = new PromotionWarpper();
-        promotionWarpper.setUrl("http://121.37.15.157/share/driverShare/index.html?inviterId=" + uid);
+        promotionWarpper.setUrl("http://139.9.238.199/share/driverShare/index.html?inviterId=" + uid);
         int user = appUserService.selectCount(new EntityWrapper<AppUser>().eq("inviterType", 2).eq("inviterId", uid).eq("status", 1));
         int driver = this.selectCount(new EntityWrapper<Driver>().eq("inviterType", 2).eq("inviterId", uid).eq("approvalStatus", 2).eq("status", 1));
         promotionWarpper.setTotal(user + driver);
@@ -679,7 +679,7 @@
 
 
     @Override
-    public ResultUtil balanceRecharge(Integer uid, Double amount) throws Exception {
+    public ResultUtil balanceRecharge(Integer uid, Integer type, Double amount) throws Exception {
         Driver driver = this.selectById(uid);
         //调起微信
         SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
@@ -695,82 +695,163 @@
         rechargeRecord.setAgentId(driver.getAgentId());
         rechargeRecordService.insert(rechargeRecord);
 
-
-        ResultUtil weixinpay = payMoneyUtil.weixinpay("余额充值", "", out_trade_no, amount.toString(), "/base/driver/balanceRechargeCallback", "APP");
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    int num = 1;
-                    int wait = 0;
-                    while (num <= 10){
-                        int min = 5000;
-                        wait += (min * num);
-                        RechargeRecord rechargeRecord1 = rechargeRecordService.selectOne(new EntityWrapper<RechargeRecord>().eq("code", out_trade_no));
-                        if(rechargeRecord1.getPayStatus() != 1){
-                            return;
-                        }
-
-                        /**
-                         * SUCCESS--支付成功
-                         * REFUND--转入退款
-                         * NOTPAY--未支付
-                         * CLOSED--已关闭
-                         * REVOKED--已撤销(刷卡支付)
-                         * USERPAYING--用户支付中
-                         * PAYERROR--支付失败(其他原因,如银行返回失败)
-                         * ACCEPT--已接收,等待扣款
-                         */
-                        ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryWXOrder(out_trade_no, "");
-                        if(resultUtil.getCode() == 200){
-                            Map<String, String> map = resultUtil.getData();
-                            String trade_type = map.get("trade_type");
-                            String trade_state = map.get("trade_state");
-                            String transaction_id = map.get("transaction_id");
-                            if("REFUND".equals(trade_state) || "NOTPAY".equals(trade_state) || "CLOSED".equals(trade_state) || "REVOKED".equals(trade_state) || "PAYERROR".equals(trade_state)){
-                                rechargeRecordService.deleteById(rechargeRecord1.getId());
+        if(type == 1){
+            ResultUtil weixinpay = payMoneyUtil.weixinpay("余额充值", "", out_trade_no, amount.toString(), "/base/driver/balanceRechargeCallback", "APP");
+            if(weixinpay.getCode() != 200){
+                return weixinpay;
+            }
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        int num = 1;
+                        int wait = 0;
+                        while (num <= 10){
+                            int min = 5000;
+                            wait += (min * num);
+                            RechargeRecord rechargeRecord1 = rechargeRecordService.selectOne(new EntityWrapper<RechargeRecord>().eq("code", out_trade_no));
+                            if(rechargeRecord1.getPayStatus() != 1){
                                 return;
                             }
-                            if("SUCCESS".equals(trade_state)){
-                                Driver driver1 = DriverServiceImpl.this.selectById(uid);
-                                AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
-                                accountChangeDetail.setUserType(2);
-                                accountChangeDetail.setUserId(uid);
-                                accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
-                                accountChangeDetail.setChangeType(3);
-                                accountChangeDetail.setType(1);
-                                accountChangeDetail.setCreateTime(new Date());
-                                accountChangeDetail.setExplain("余额充值");
-                                accountChangeDetail.setOldData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
-                                driver1.setBalance(driver1.getBalance() + amount);
-                                accountChangeDetail.setNewData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
-                                DriverServiceImpl.this.updateById(driver1);
-                                accountChangeDetailService.saveData(accountChangeDetail);
 
-                                rechargeRecord1.setPayTime(new Date());
-                                rechargeRecord1.setPayStatus(2);
-                                rechargeRecord1.setOrderNumber(transaction_id);
-                                rechargeRecordService.updateById(rechargeRecord1);
-                                return;
-                            }
-                            if("USERPAYING".equals(trade_state) || "ACCEPT".equals(trade_state)){
+                            /**
+                             * SUCCESS--支付成功
+                             * REFUND--转入退款
+                             * NOTPAY--未支付
+                             * CLOSED--已关闭
+                             * REVOKED--已撤销(刷卡支付)
+                             * USERPAYING--用户支付中
+                             * PAYERROR--支付失败(其他原因,如银行返回失败)
+                             * ACCEPT--已接收,等待扣款
+                             */
+                            ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryWXOrder(out_trade_no, "");
+                            if(resultUtil.getCode() == 200){
+                                Map<String, String> map = resultUtil.getData();
+                                String trade_type = map.get("trade_type");
+                                String trade_state = map.get("trade_state");
+                                String transaction_id = map.get("transaction_id");
+                                if("REFUND".equals(trade_state) || "NOTPAY".equals(trade_state) || "CLOSED".equals(trade_state) || "REVOKED".equals(trade_state) || "PAYERROR".equals(trade_state)){
+                                    rechargeRecordService.deleteById(rechargeRecord1.getId());
+                                    return;
+                                }
+                                if("SUCCESS".equals(trade_state)){
+                                    Driver driver1 = DriverServiceImpl.this.selectById(uid);
+                                    AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
+                                    accountChangeDetail.setUserType(2);
+                                    accountChangeDetail.setUserId(uid);
+                                    accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
+                                    accountChangeDetail.setChangeType(3);
+                                    accountChangeDetail.setType(1);
+                                    accountChangeDetail.setCreateTime(new Date());
+                                    accountChangeDetail.setExplain("余额充值");
+                                    accountChangeDetail.setOldData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
+                                    driver1.setBalance(driver1.getBalance() + amount);
+                                    accountChangeDetail.setNewData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
+                                    DriverServiceImpl.this.updateById(driver1);
+                                    accountChangeDetailService.saveData(accountChangeDetail);
+
+                                    rechargeRecord1.setPayTime(new Date());
+                                    rechargeRecord1.setPayStatus(2);
+                                    rechargeRecord1.setOrderNumber(transaction_id);
+                                    rechargeRecordService.updateById(rechargeRecord1);
+                                    return;
+                                }
+                                if("USERPAYING".equals(trade_state) || "ACCEPT".equals(trade_state)){
+                                    Thread.sleep(wait);
+                                    num++;
+                                }
+                            }else{
                                 Thread.sleep(wait);
                                 num++;
                             }
-                        }else{
-                            Thread.sleep(wait);
-                            num++;
+                            if(10 == num){
+                                rechargeRecordService.deleteById(rechargeRecord1.getId());
+                            }
                         }
-                        if(10 == num){
-                            rechargeRecordService.deleteById(rechargeRecord1.getId());
-                        }
+                    }catch (Exception e){
+                        e.printStackTrace();
                     }
-                }catch (Exception e){
-                    e.printStackTrace();
                 }
+            }).start();
+            return weixinpay;
+        }
+        if(type == 2){
+            ResultUtil<String> alipay = payMoneyUtil.alipay("余额充值", "余额充值", out_trade_no, amount.toString(), "/base/driver/balanceRechargeCallbackAli");
+            if(alipay.getCode() != 200){
+                return alipay;
             }
-        }).start();
-        return weixinpay;
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        int num = 1;
+                        int wait = 0;
+                        while (num <= 10){
+                            int min = 5000;
+                            wait += (min * num);
+                            RechargeRecord rechargeRecord1 = rechargeRecordService.selectOne(new EntityWrapper<RechargeRecord>().eq("code", out_trade_no));
+                            if(rechargeRecord1.getPayStatus() != 1){
+                                return;
+                            }
+
+                            /**
+                             * 交易状态:
+                             * WAIT_BUYER_PAY(交易创建,等待买家付款)、
+                             * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、
+                             * TRADE_SUCCESS(交易支付成功)、
+                             * TRADE_FINISHED(交易结束,不可退款)
+                             */
+                            ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryALIOrder(out_trade_no);
+                            if(resultUtil.getCode() == 200){
+                                Map<String, String> map = resultUtil.getData();
+                                String tradeStatus = map.get("tradeStatus");
+                                String tradeNo = map.get("tradeNo");
+                                if("TRADE_CLOSED".equals(tradeStatus) || "TRADE_FINISHED".equals(tradeStatus)){
+                                    rechargeRecordService.deleteById(rechargeRecord1.getId());
+                                    return;
+                                }
+                                if("TRADE_SUCCESS".equals(tradeStatus)){
+                                    Driver driver1 = DriverServiceImpl.this.selectById(uid);
+                                    AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
+                                    accountChangeDetail.setUserType(2);
+                                    accountChangeDetail.setUserId(uid);
+                                    accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
+                                    accountChangeDetail.setChangeType(3);
+                                    accountChangeDetail.setType(1);
+                                    accountChangeDetail.setCreateTime(new Date());
+                                    accountChangeDetail.setExplain("余额充值");
+                                    accountChangeDetail.setOldData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
+                                    driver1.setBalance(driver1.getBalance() + amount);
+                                    accountChangeDetail.setNewData(driver1.getBalance() + driver1.getBackgroundBalance() + driver1.getCouponBalance() + driver1.getCommission());
+                                    DriverServiceImpl.this.updateById(driver1);
+                                    accountChangeDetailService.saveData(accountChangeDetail);
+
+                                    rechargeRecord1.setPayTime(new Date());
+                                    rechargeRecord1.setPayStatus(2);
+                                    rechargeRecord1.setOrderNumber(tradeNo);
+                                    rechargeRecordService.updateById(rechargeRecord1);
+                                    return;
+                                }
+                                if("WAIT_BUYER_PAY".equals(tradeStatus)){
+                                    Thread.sleep(wait);
+                                    num++;
+                                }
+                            }else{
+                                Thread.sleep(wait);
+                                num++;
+                            }
+                            if(10 == num){
+                                rechargeRecordService.deleteById(rechargeRecord1.getId());
+                            }
+                        }
+                    }catch (Exception e){
+                        e.printStackTrace();
+                    }
+                }
+            }).start();
+            return alipay;
+        }
+        return ResultUtil.success();
     }
 
 
diff --git a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/util/PayMoneyUtil.java b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/util/PayMoneyUtil.java
index 3b818a9..5eeefc7 100644
--- a/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/util/PayMoneyUtil.java
+++ b/driver/guns-admin/src/main/java/com/agentdriving/driver/modular/system/util/PayMoneyUtil.java
@@ -87,7 +87,7 @@
     /**
      * 支付宝支付
      */
-    public ResultUtil alipay(String body, String subject, String outTradeNo, String amount, String notifyUrl){
+    public ResultUtil<String> alipay(String body, String subject, String outTradeNo, String amount, String notifyUrl){
         //实例化客户端
         AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", aliAppid, appPrivateKey, "json", "UTF-8", alipayPublicKey, "RSA2");
         //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
@@ -105,10 +105,8 @@
         try {
             //这里和普通的接口调用不同,使用的是sdkExecute
             AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
-            Map<String, String> map = new HashMap<>();
-            map.put("orderString", response.getBody());
-            System.out.println(map);//就是orderString 可以直接给客户端请求,无需再做处理。
-            return ResultUtil.success(map);
+            System.out.println(response.getBody());//就是orderString 可以直接给客户端请求,无需再做处理。
+            return ResultUtil.success(response.getBody());
         } catch (AlipayApiException e) {
             e.printStackTrace();
         }
@@ -199,7 +197,7 @@
      * @return
      * @throws Exception
      */
-    public ResultUtil queryALIOrder(String out_trade_no) throws Exception{
+    public ResultUtil<Map<String, String>> queryALIOrder(String out_trade_no) throws Exception{
         AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",aliAppid, appPrivateKey,"json","UTF-8", alipay_public_key,"RSA2");
         AlipayTradeQueryRequest request = new AlipayTradeQueryRequest();
         request.setBizContent("{" +
@@ -208,7 +206,11 @@
         AlipayTradeQueryResponse response = alipayClient.execute(request);
         if(response.isSuccess()){
             String tradeStatus = response.getTradeStatus();//交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功)、TRADE_FINISHED(交易结束,不可退款)
-            return ResultUtil.success(tradeStatus);
+            String tradeNo = response.getTradeNo();
+            Map<String, String> map = new HashMap<>();
+            map.put("tradeStatus", tradeStatus);
+            map.put("tradeNo", tradeNo);
+            return ResultUtil.success(map);
         } else {
             return ResultUtil.error(response.getMsg());
         }
diff --git a/driver/guns-admin/src/main/resources/application.yml b/driver/guns-admin/src/main/resources/application.yml
index dd26d12..d2cf298 100644
--- a/driver/guns-admin/src/main/resources/application.yml
+++ b/driver/guns-admin/src/main/resources/application.yml
@@ -88,10 +88,10 @@
 ---
 
 alipay:
-  appid: 111  #应用程序唯一标识
-  appPrivateKey: 111 #开发者应用私钥
-  alipayPublicKey: 111 #应用公钥
-  alipay_public_key: 111 #支付宝公钥
+  appid: 2021003194663664  #应用程序唯一标识
+  appPrivateKey: MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCK0Y+UltYRXULYxSfcayIxWw86/xqm93q7ymLpp1+XfrhZdgT81AbY1/FNPmR+TNV56W6Lt3D4AoInpby1eN+frfULyyFxDW8BcahsYm75mpaiJFzdogSUs0BecHK6AxgWrskPRa0hCy7RW6CsXx3n2N0mzfj5fibvcU9GrYz8AxE9GfB5OVAqNSBa7u/win1YttqZVSaa1Wn49omUwIG66efAymTRUwo2G8PGhWAzMSAoj7LufCQtAxsXXI6cmcDYSY7qK09dT7H7+kIXjqHqFjzHdV7xr9uBqUjewdQabYraXfECzXHjigaTHrXWmq9Et7QA5al2NT1OXg4Uz2cjAgMBAAECggEAG13k6G40FYhFPWbgzNtyCjjhb8gLAQ+Y6pyjk1yjw8H/peNWaGGEWAt6TrgWJ7AOBdK3MGQhqUMVVaue4EfMDjbFMGYDWb5EPAykH3noVtzbBWwVwrvGG2qbLgMNGw6xGQesK46Y6wLBYBSoQFMgGizurE++3bC5DEtSTaS5PpUuwReUMj8exjklQhK1rzNFybezSP0qES781Jf+pgdChFTrYFvMbj5T05QkUk94Cbo5gT0wdWja1CSsvb7I6gb9+QF4/YmGp8DAWitJFNXYuvuq8RcgIod4JY3QDq4vwcy9Wk2Fm4vJd2c7yIgvVMiwPHTOCwXEw1gkvKO1dONvgQKBgQD71pXKYqM506/UtPtF5HOaoXJuRYIMuX0+OdHVFNizqmJeKykaIjhxWx83Zf1r+43fPpTSNDoJIQzlzfe0dRtilCWM3E05QIiAZOCJPCxdMLQjpAk7vReurQBcjLgIFQj5bV/76NvfU78jwiyiLr3HW0LXkr99MIdQ8s4j7tZqqwKBgQCNHNca9MHRHrmx03IpxYgfzarh7l3mFDTck8YCDVdjUENh2fdFGHYExACr87clBBNq2f73L1++N5AbjzqONcMBN/Ix8etRh6DUzT17WeYzRWwgLV4p/R9VoLUtEEovQEVbjMveaaYFQzdnp8/XKdgND473YY0Nf5koBcwbwFj1aQKBgFXEz18OGOko30liGfHDzFttgLttkM0knzMCHiSj5OnLrZTEvkrYPMDed9M2OQj9s2PEvIqanuldCDd73lDnUVxReDhxDxvgjpyrvoz+oV1bqP46b6qYy+gBo43hnwuhnlzUk0wIEloM+5wCFZFmudubiThCElVgobU//FTgksXhAoGAZGVneSs4FfNZRHZem++I2K+360RvE/m+XkzYrK8XRHZfamfsMAGmPd/BZpVf8PsEYZo1d2ICKVBYu/LcQz9mvSAztWsb9Aad26kmG/Oq/0FeG0qL2y3WtFJBdI1JanK8pdT3WwcpckcPTTUsfzWrHCe8nK6P71GgAsSVIg1ofTkCgYEA7B04BBRZ3HKnSnXBWMEhW5Tk2H2mLn3Dp4vj+rsNzDBiyJMGjmmWCxyfhR9E5TKTSSiYL36aC4Ee5RXOG2bIGFhWNSX8e97X2LwPzm1L2HPML/V6nOdhm9RBqASlBayajNQWQ7xiUViATn1v/XZeY0HKOUCLsfD5GhoRIXMgAz0= #开发者应用私钥
+  alipayPublicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAitGPlJbWEV1C2MUn3GsiMVsPOv8apvd6u8pi6adfl364WXYE/NQG2NfxTT5kfkzVeelui7dw+AKCJ6W8tXjfn631C8shcQ1vAXGobGJu+ZqWoiRc3aIElLNAXnByugMYFq7JD0WtIQsu0VugrF8d59jdJs34+X4m73FPRq2M/AMRPRnweTlQKjUgWu7v8Ip9WLbamVUmmtVp+PaJlMCBuunnwMpk0VMKNhvDxoVgMzEgKI+y7nwkLQMbF1yOnJnA2EmO6itPXU+x+/pCF46h6hY8x3Ve8a/bgalI3sHUGm2K2l3xAs1x44oGkx611pqvRLe0AOWpdjU9Tl4OFM9nIwIDAQAB #应用公钥
+  alipay_public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAglHWHEp1X1ZmwlGGEsBS7T4/5CmC3BI1L4nloVUa205TqhUrrHBPmxfjwH11iX3IXL654dmbArtFWAdzMEp54i9qWBnSYcUvj/HUwPwZyQLxiB3aTsS6ZZnis60XWiouFq4Z1ChPiyCLhpL3eRTaEtVJl0+N/GFy38y04GRslyufPO8CBz3M8twXuYFHWcYgI4txmLXgDdP1bPBnAZrqQW+GvuoJNrUMEaNhtIrQUrbvZYzNDWZDLO17pUjseHI+Kyq5zjBh5ocLLCJcbdPSigYzzamxMgt10jEjqIbmK8ytXt6gVR7/1gYBnX1FrvHY7j9uWYWllfi4Kd5Mg+nEqwIDAQAB #支付宝公钥
 
 
 ---

--
Gitblit v1.7.1