diff --git a/Dockerfile b/Dockerfile
index 6241920..65ed22b 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,5 +1,5 @@
-# 使用OpenJDK 8作为基础镜像
-FROM openjdk:8-jre-alpine
+# 使用OpenJDK 17作为基础镜像
+FROM openjdk:17-jre-alpine
# 设置工作目录
WORKDIR /app
diff --git a/pom.xml b/pom.xml
index ddae36c..3bca112 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,7 +18,9 @@
- 1.8
+ 17
+ 17
+ 17
UTF-8
UTF-8
@@ -340,8 +342,8 @@
org.apache.maven.plugins
maven-compiler-plugin
- 16
- 16
+ 17
+ 17
diff --git a/scripts/WechatAutoTest.java b/scripts/WechatAutoTest.java
new file mode 100644
index 0000000..cec8464
--- /dev/null
+++ b/scripts/WechatAutoTest.java
@@ -0,0 +1,55 @@
+package com.gxwebsoft;
+
+import com.wechat.pay.java.core.Config;
+import com.wechat.pay.java.core.RSAAutoCertificateConfig;
+
+public class WechatAutoTest {
+ public static void main(String[] args) {
+ String merchantId = args[0];
+ String privateKeyPath = args[1];
+ String serialNumber = args[2];
+ String apiV3Key = args[3];
+
+ try {
+ System.out.println("🔧 正在创建 RSAAutoCertificateConfig...");
+
+ Config config = new RSAAutoCertificateConfig.Builder()
+ .merchantId(merchantId)
+ .privateKeyFromPath(privateKeyPath)
+ .merchantSerialNumber(serialNumber)
+ .apiV3Key(apiV3Key)
+ .build();
+
+ System.out.println("✅ 微信支付证书配置成功!");
+ System.out.println("");
+ System.out.println("📋 配置信息:");
+ System.out.println(" 商户号: " + merchantId);
+ System.out.println(" 证书序列号: " + serialNumber);
+ System.out.println(" 私钥路径: " + privateKeyPath);
+ System.out.println("");
+ System.out.println("🎉 RSAAutoCertificateConfig 已成功初始化");
+ System.out.println("📥 系统将自动下载微信支付平台证书");
+ System.out.println("🔄 证书过期时将自动更新");
+ System.out.println("🚫 无需手动下载 wechatpay_cert.pem");
+ System.out.println("");
+ System.out.println("✨ 您的微信支付证书配置已完成!");
+
+ } catch (Exception e) {
+ System.err.println("❌ 证书配置失败: " + e.getMessage());
+ System.err.println("");
+ System.err.println("🔍 可能的原因:");
+ System.err.println("1. 商户平台未开启API安全功能");
+ System.err.println("2. APIv3密钥不正确");
+ System.err.println("3. 证书序列号不匹配");
+ System.err.println("4. 网络连接问题");
+ System.err.println("");
+ System.err.println("💡 解决方案:");
+ System.err.println("1. 登录微信商户平台 -> 账户中心 -> API安全");
+ System.err.println("2. 确认已申请使用微信支付公钥");
+ System.err.println("3. 检查APIv3密钥和证书序列号");
+
+ e.printStackTrace();
+ System.exit(1);
+ }
+ }
+}
diff --git a/src/main/java/com/gxwebsoft/common/core/security/SecurityConfig.java b/src/main/java/com/gxwebsoft/common/core/security/SecurityConfig.java
index 0626cd3..63b9c19 100644
--- a/src/main/java/com/gxwebsoft/common/core/security/SecurityConfig.java
+++ b/src/main/java/com/gxwebsoft/common/core/security/SecurityConfig.java
@@ -79,7 +79,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/api/system/user-referee/getRefereeNumByUidList",
"/api/system/setting/getByKey/**",
"/api/system/setting/updateByKey/**",
- "/lvQ4EoivKJ.txt"
+ "/lvQ4EoivKJ.txt",
+ "/api/wechat-cert-test"
)
.permitAll()
.anyRequest()
diff --git a/src/main/java/com/gxwebsoft/oa/param/OaAppParam.java b/src/main/java/com/gxwebsoft/oa/param/OaAppParam.java
index ba85ee6..a34c3f8 100644
--- a/src/main/java/com/gxwebsoft/oa/param/OaAppParam.java
+++ b/src/main/java/com/gxwebsoft/oa/param/OaAppParam.java
@@ -243,4 +243,8 @@ public class OaAppParam extends BaseParam {
@TableField(exist = false)
private Set appIds;
+ @ApiModelProperty(value = "访问令牌")
+ @TableField(exist = false)
+ private String token;
+
}