From b0a7148f1830eb544af588e49a36163ee5820c7c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 16 七月 2025 10:10:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java | 76 +++++++++++++++++++++++++++++++++++---
1 files changed, 70 insertions(+), 6 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 f93edef..3c9cf04 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
@@ -10,6 +10,12 @@
import com.github.binarywang.wxpay.constant.WxPayConstants;
import com.github.binarywang.wxpay.service.WxPayService;
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.service.billdownload.BillDownloadService;
+import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiService;
+import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiServiceExtension;
+import com.wechat.pay.java.service.refund.RefundService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
@@ -21,12 +27,18 @@
*/
@Configuration
public class WxMiniConfig {
- @Autowired
- private SystemDictDataBiz systemDictDataBiz;
/********寰俊灏忕▼搴忔湇鍔�**********/
public static WxMaService wxMaService;
/********寰俊灏忕▼搴忔敮浠�**********/
- public static WxPayService wxPayService;
+ public static JsapiService wxPayService;
+ public static WxPayService wxPayV2Service;
+ public static RefundService refundService;
+ public static JsapiServiceExtension jsapiExtService;
+ public static BillDownloadService billDownloadService;
+ public static WxPayProperties wxProperties;
+
+ @Autowired
+ private WxPayProperties wxPayProperties;
public static WxMiniConfig me() {
return SpringUtils.get().getBean(WxMiniConfig.class);
@@ -35,15 +47,23 @@
@PostConstruct
void init() {
this.load_WxMaService();
-// this.load_wxPayService();
+ this.load_wxPayService();
+ this.load_wxPayV2Service();
+ this.wxProperties = wxPayProperties;
}
/**
* 鍒濆鍖栧井淇″皬绋嬪簭
*/
public void load_WxMaService() {
WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
- config.setAppid(StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.WX_CONFIG,Constants.APPID).getCode()));
- config.setSecret(StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.WX_CONFIG,Constants.SECRET).getCode()));
+ if(wxPayProperties.getExistsSub() ==1){
+ //濡傛灉鏄湇鍔″晢鏀粯,鍙栧瓙鍟嗘埛淇℃伅
+ 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.setMsgDataFormat("JSON");
//config.setToken("");
//config.setAesKey("");
@@ -55,6 +75,50 @@
/**
* 鍒濆鍖栧井淇″皬绋嬪簭鏀粯
*/
+ public void load_wxPayService() {
+ try {
+ Config config =
+ new RSAAutoCertificateConfig.Builder()
+ .merchantId(wxPayProperties.getMchId())
+ .privateKeyFromPath(wxPayProperties.getPrivateKeyPath())
+ .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();
+ this.billDownloadService = new BillDownloadService.Builder().config(config).build();
+ }catch (Exception e){
+ e.printStackTrace();
+
+ }
+ }
+
+ /**
+ * 鍒濆鍖栧井淇″皬绋嬪簭鏀粯
+ */
+ 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_wxPayService() {
// WxPayConfig payConfig = new WxPayConfig();
// payConfig.setTradeType(WxPayConstants.TradeType.JSAPI);
--
Gitblit v1.9.3