From c9982b7204590b5d1f4ce60bcae5ec3954e9763c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A6=82=E6=A2=A6=E6=8A=80=E6=9C=AF?= <596392912@qq.com> Date: Sat, 12 Dec 2020 17:30:05 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E8=B0=83=E6=95=B4=E8=87=AA?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E5=8A=A0=E8=BD=BD=E5=99=A8=EF=BC=8C=E6=96=B9?= =?UTF-8?q?=E4=BE=BF=E8=87=AA=E5=AE=9A=E4=B9=89=E9=85=8D=E7=BD=AE=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mica-weixin/gradle.properties | 2 +- .../weixin/config/WeixinAppConfig.java | 41 ++++++++++++------- .../dreamlu/weixin/config/WxConfigLoader.java | 7 +++- 3 files changed, 32 insertions(+), 18 deletions(-) diff --git a/mica-weixin/gradle.properties b/mica-weixin/gradle.properties index 62b6c1b..125206e 100644 --- a/mica-weixin/gradle.properties +++ b/mica-weixin/gradle.properties @@ -1,4 +1,4 @@ -VERSION=2.0.3 +VERSION=2.0.4 GROUPID=net.dreamlu userName=chunmeng diff --git a/mica-weixin/src/main/java/net/dreamlu/weixin/config/WeixinAppConfig.java b/mica-weixin/src/main/java/net/dreamlu/weixin/config/WeixinAppConfig.java index de4b044..cd1e148 100644 --- a/mica-weixin/src/main/java/net/dreamlu/weixin/config/WeixinAppConfig.java +++ b/mica-weixin/src/main/java/net/dreamlu/weixin/config/WeixinAppConfig.java @@ -25,22 +25,16 @@ import java.util.List; @Configuration @RequiredArgsConstructor public class WeixinAppConfig implements SmartInitializingSingleton { - private final DreamWeixinProperties weixinProperties; + private final DreamWeixinProperties weiXinProperties; private final SpringAccessTokenCache accessTokenCache; private final ObjectProvider provider; @Override public void afterSingletonsInstantiated() { - boolean isdev = weixinProperties.isDevMode(); - ApiConfigKit.setDevMode(isdev); + boolean isDev = weiXinProperties.isDevMode(); + ApiConfigKit.setDevMode(isDev); ApiConfigKit.setAccessTokenCache(accessTokenCache); - WxConfigLoader configLoader = provider.getIfAvailable(); - // 兼容老板 spring boot - if (configLoader == null) { - configLoader = WxConfigLoader.DEFAULT; - } - List wxConfList = new ArrayList<>(weixinProperties.getWxConfigs()); - wxConfList.addAll(configLoader.loadWx()); + List wxConfList = new ArrayList<>(weiXinProperties.getWxConfigs()); for (WxConf conf : wxConfList) { ApiConfig config = new ApiConfig(); if (StrKit.notBlank(conf.getAppId())) { @@ -58,8 +52,7 @@ public class WeixinAppConfig implements SmartInitializingSingleton { config.setEncryptMessage(conf.isMessageEncrypt()); ApiConfigKit.putApiConfig(config); } - List wxaConfList = new ArrayList<>(weixinProperties.getWxaConfigs()); - wxaConfList.addAll(configLoader.loadWxa()); + List wxaConfList = new ArrayList<>(weiXinProperties.getWxaConfigs()); for (WxaConf conf : wxaConfList) { WxaConfig config = new WxaConfig(); if (StrKit.notBlank(conf.getAppId())) { @@ -77,13 +70,31 @@ public class WeixinAppConfig implements SmartInitializingSingleton { config.setMessageEncrypt(conf.isMessageEncrypt()); WxaConfigKit.setWxaConfig(config); } - WxaConfigKit.setDevMode(isdev); - if (WxaMsgParser.JSON == weixinProperties.getWxaMsgParser()) { + WxaConfigKit.setDevMode(isDev); + if (WxaMsgParser.JSON == weiXinProperties.getWxaMsgParser()) { WxaConfigKit.useJsonMsgParser(); } - if ("jackson".equalsIgnoreCase(weixinProperties.getJsonType())) { + if ("jackson".equalsIgnoreCase(weiXinProperties.getJsonType())) { JsonUtils.setJsonFactory(JacksonFactory.me()); } + // 自定义的加载器 + WxConfigLoader configLoader = provider.getIfAvailable(); + // 兼容老板 spring boot + if (configLoader == null) { + configLoader = WxConfigLoader.DEFAULT; + } + List apiConfigList = configLoader.loadWx(); + if (apiConfigList != null && !apiConfigList.isEmpty()) { + for (ApiConfig config : apiConfigList) { + ApiConfigKit.putApiConfig(config); + } + } + List wxaConfigList = configLoader.loadWxa(); + if (wxaConfigList != null && !wxaConfigList.isEmpty()) { + for (WxaConfig config : wxaConfigList) { + WxaConfigKit.setWxaConfig(config); + } + } } } diff --git a/mica-weixin/src/main/java/net/dreamlu/weixin/config/WxConfigLoader.java b/mica-weixin/src/main/java/net/dreamlu/weixin/config/WxConfigLoader.java index d7bb022..0e7421d 100644 --- a/mica-weixin/src/main/java/net/dreamlu/weixin/config/WxConfigLoader.java +++ b/mica-weixin/src/main/java/net/dreamlu/weixin/config/WxConfigLoader.java @@ -1,5 +1,8 @@ package net.dreamlu.weixin.config; +import com.jfinal.weixin.sdk.api.ApiConfig; +import com.jfinal.wxaapp.WxaConfig; + import java.util.Collections; import java.util.List; @@ -16,7 +19,7 @@ public interface WxConfigLoader { * * @return 微信配置列表 */ - default List loadWx() { + default List loadWx() { return Collections.emptyList(); } @@ -25,7 +28,7 @@ public interface WxConfigLoader { * * @return 小程序配置列表 */ - default List loadWxa() { + default List loadWxa() { return Collections.emptyList(); } -- GitLab