From bd6229ebd9cb543a22944ecb1142fad92b675dce Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 13 十月 2025 14:26:25 +0800
Subject: [PATCH] bug 修复

---
 server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java |   71 +++++++++++++++++++++++------------
 1 files changed, 47 insertions(+), 24 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java b/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
index e0b82bb..e9edac5 100644
--- a/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
+++ b/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
@@ -12,6 +12,9 @@
 import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl;
 import com.wechat.pay.java.core.Config;
 import com.wechat.pay.java.core.RSAAutoCertificateConfig;
+import com.wechat.pay.java.core.RSAPublicKeyConfig;
+import com.wechat.pay.java.core.http.HostName;
+import com.wechat.pay.java.core.notification.RSAPublicKeyNotificationConfig;
 import com.wechat.pay.java.service.billdownload.BillDownloadService;
 import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiService;
 import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiServiceExtension;
@@ -31,7 +34,7 @@
     public static WxMaService wxMaService;
     /********寰俊灏忕▼搴忔敮浠�**********/
     public static JsapiService wxPayService;
-    public static WxPayService wxPayV2Service;
+//    public static WxPayService wxPayV2Service;
     public static RefundService refundService;
     public static JsapiServiceExtension jsapiExtService;
     public static BillDownloadService billDownloadService;
@@ -48,8 +51,7 @@
     void init() {
         this.load_WxMaService();
         this.load_wxPayService();
-        this.load_wxPayV2Service();
-        this.load_transferToUser();
+//        this.load_wxPayV2Service();
         this.load_transferToUser();
         this.wxProperties = wxPayProperties;
     }
@@ -63,8 +65,8 @@
             config.setAppid(StringUtils.trimToNull(wxPayProperties.getSubAppId()));
             config.setSecret(StringUtils.trimToNull(wxPayProperties.getSubAppSecret()));
         }else {
-            config.setAppid(StringUtils.trimToNull(wxPayProperties.getAppId()));
-            config.setSecret(StringUtils.trimToNull(wxPayProperties.getAppSecret()));
+//            config.setAppid(StringUtils.trimToNull(wxPayProperties.getAppId()));
+//            config.setSecret(StringUtils.trimToNull(wxPayProperties.getAppSecret()));
         }
         config.setMsgDataFormat("JSON");
         //config.setToken("");
@@ -80,13 +82,26 @@
     public void load_wxPayService()   {
         try {
             Config config =
-                    new RSAAutoCertificateConfig.Builder()
+                    new RSAPublicKeyConfig.Builder()
                             .merchantId(wxPayProperties.getMchId())
                             .privateKeyFromPath(wxPayProperties.getPrivateKeyPath())
+                            .publicKeyFromPath(wxPayProperties.getPubKeyPath())
+                            .publicKeyId(wxPayProperties.getPayPublicKeyId())
                             .merchantSerialNumber(wxPayProperties.getSerialNumer())
                             .apiV3Key(wxPayProperties.getApiV3Key())
                             .build();
-            this.wxPayService =  new JsapiService.Builder().config(config).build();
+
+
+//            Config config =
+//                    new RSAAutoCertificateConfig.Builder()
+//                            .merchantId(wxPayProperties.getMchId())
+//                            .privateKeyFromPath(wxPayProperties.getPrivateKeyPath())
+////                            .publicKeyFromPath(wxPayProperties.getPubKeyPath())
+////                            .publicKeyId("PUB_KEY_ID_0117000719222024112700219100000508")
+//                            .merchantSerialNumber(wxPayProperties.getSerialNumer())
+//                            .apiV3Key(wxPayProperties.getApiV3Key())
+//                            .build();
+//            this.wxPayService =  new JsapiService.Builder().config(config).build();
 
             this.jsapiExtService =  new JsapiServiceExtension.Builder().config(config).build();
             this.refundService = new RefundService.Builder().config(config).build();
@@ -100,22 +115,22 @@
     /**
      * 鍒濆鍖栧井淇″皬绋嬪簭鏀粯
      */
-    public void load_wxPayV2Service()
-    {
-        WxPayConfig payConfig = new WxPayConfig();
-        payConfig.setTradeType(WxPayConstants.TradeType.JSAPI);
-        payConfig.setSignType(WxPayConstants.SignType.MD5);
-        payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId()));
-        payConfig.setSubAppId(StringUtils.trimToNull(wxPayProperties.getSubAppId()));
-        payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId()));
-        payConfig.setSubMchId(StringUtils.trimToNull(wxPayProperties.getSubMchId()));
-        payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey()));
-//        payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath()));
-        payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl()));
-        WxPayService wxPayService = new WxPayServiceImpl();
-        wxPayService.setConfig(payConfig);
-        this.wxPayV2Service = wxPayService;
-    }
+//    public void load_wxPayV2Service()
+//    {
+//        WxPayConfig payConfig = new WxPayConfig();
+//        payConfig.setTradeType(WxPayConstants.TradeType.JSAPI);
+//        payConfig.setSignType(WxPayConstants.SignType.MD5);
+//        payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId()));
+//        payConfig.setSubAppId(StringUtils.trimToNull(wxPayProperties.getSubAppId()));
+//        payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId()));
+//        payConfig.setSubMchId(StringUtils.trimToNull(wxPayProperties.getSubMchId()));
+//        payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey()));
+////        payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath()));
+//        payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl()));
+//        WxPayService wxPayService = new WxPayServiceImpl();
+//        wxPayService.setConfig(payConfig);
+//        this.wxPayV2Service = wxPayService;
+//    }
 
 
     /**
@@ -136,16 +151,24 @@
 //    }
 
 
+    //杞处涓氬姟
     public void load_transferToUser()
     {
         TransferToUser transferToUser = new TransferToUser(
-                StringUtils.trimToNull(wxPayProperties.getMchId()), //鍟嗘埛id
+                StringUtils.trimToNull(wxPayProperties.getSubMchId()), //鍟嗘埛id
                 StringUtils.trimToNull(wxPayProperties.getWechatSerialNumer()), //鍟嗘埛API璇佷功搴忓垪鍙凤紝濡備綍鑾峰彇璇峰弬鑰� https://pay.weixin.qq.com/doc/v3/merchant/4013053053
                 StringUtils.trimToNull(wxPayProperties.getWechatPrivateKeyPath()), // 鍟嗘埛API璇佷功绉侀挜鏂囦欢璺緞锛屾湰鍦版枃浠惰矾寰�
                 StringUtils.trimToNull(wxPayProperties.getWechatPayPublicKeyId()),   // 寰俊鏀粯鍏挜ID锛屽浣曡幏鍙栬鍙傝�� https://pay.weixin.qq.com/doc/v3/merchant/4013038816
                 StringUtils.trimToNull(wxPayProperties.getWechatPubKeyPath()) // 寰俊鏀粯鍏挜鏂囦欢璺緞锛屾湰鍦版枃浠惰矾寰�
         );
 
+//        TransferToUser client = new TransferToUser(
+//                "1229817002",                    // 鍟嗘埛鍙凤紝鏄敱寰俊鏀粯绯荤粺鐢熸垚骞跺垎閰嶇粰姣忎釜鍟嗘埛鐨勫敮涓�鏍囪瘑绗︼紝鍟嗘埛鍙疯幏鍙栨柟寮忓弬鑰� https://pay.weixin.qq.com/doc/v3/merchant/4013070756
+//                "3FE90C2F3D40A56E1C51926F31B8A8D22426CCE0",         // 鍟嗘埛API璇佷功搴忓垪鍙凤紝濡備綍鑾峰彇璇峰弬鑰� https://pay.weixin.qq.com/doc/v3/merchant/4013053053
+//                "d://wechatApiclient_key.pem",    // 鍟嗘埛API璇佷功绉侀挜鏂囦欢璺緞锛屾湰鍦版枃浠惰矾寰�
+//                "PUB_KEY_ID_0112298170022025071700291836000600",      // 寰俊鏀粯鍏挜ID锛屽浣曡幏鍙栬鍙傝�� https://pay.weixin.qq.com/doc/v3/merchant/4013038816
+//                "d://pub_key.pem"          // 寰俊鏀粯鍏挜鏂囦欢璺緞锛屾湰鍦版枃浠惰矾寰�
+//        );
         this.transferToUser = transferToUser;
     }
 

--
Gitblit v1.9.3