Commit 933ed16c authored by 唐峰's avatar 唐峰

微信配置走实时生效

parent 6d597b12
...@@ -16,18 +16,33 @@ import java.util.Optional; ...@@ -16,18 +16,33 @@ import java.util.Optional;
@Getter @Getter
public class WechatConfiguration { public class WechatConfiguration {
private final List<WechatConfigBean> list; //private final List<WechatConfigBean> list;
private final List<WechatAppNameMapping> wechatAppNameMappingList; //private final List<WechatAppNameMapping> wechatAppNameMappingList;
public List<WechatConfigBean> getWechatConfig() {
public WechatConfiguration() {
String data = ConfigService.getAppConfig().getProperty("wechat.configs", "[]"); String data = ConfigService.getAppConfig().getProperty("wechat.configs", "[]");
List<WechatConfigBean> list = JSONArray.parseArray(data, WechatConfigBean.class);
return list;
}
public List<WechatAppNameMapping> appNameMappingList() {
String data2 = ConfigService.getAppConfig().getProperty("wechat.appName.mapping", "[]"); String data2 = ConfigService.getAppConfig().getProperty("wechat.appName.mapping", "[]");
List<WechatAppNameMapping> wechatAppNameMappingList = JSONArray.parseArray(data2, WechatAppNameMapping.class);
return wechatAppNameMappingList;
}
//变更为在以下代码中实时获取
/*public WechatConfiguration() {
String data = ConfigService.getAppConfig().getProperty("wechat.configs", "[]");
list = JSONArray.parseArray(data, WechatConfigBean.class); list = JSONArray.parseArray(data, WechatConfigBean.class);
String data2 = ConfigService.getAppConfig().getProperty("wechat.appName.mapping", "[]");
wechatAppNameMappingList = JSONArray.parseArray(data2, WechatAppNameMapping.class); wechatAppNameMappingList = JSONArray.parseArray(data2, WechatAppNameMapping.class);
} }*/
public WechatConfigBean getByAppIdAndTenantId(String appId, Integer tenantId) { public WechatConfigBean getByAppIdAndTenantId(String appId, Integer tenantId) {
List<WechatConfigBean> list = getWechatConfig();
Optional<WechatConfigBean> optional = list.stream().filter(i -> i.getAppId().equals(appId) && i.getTenantId().equals(tenantId)).findFirst(); Optional<WechatConfigBean> optional = list.stream().filter(i -> i.getAppId().equals(appId) && i.getTenantId().equals(tenantId)).findFirst();
if (!optional.isPresent()) { if (!optional.isPresent()) {
throw new BizException(BizExceptionEnum.ERROR_WECHAT_APP_ID); throw new BizException(BizExceptionEnum.ERROR_WECHAT_APP_ID);
...@@ -37,10 +52,12 @@ public class WechatConfiguration { ...@@ -37,10 +52,12 @@ public class WechatConfiguration {
} }
public WechatConfigBean getDefault() { public WechatConfigBean getDefault() {
List<WechatConfigBean> list = getWechatConfig();
return list.stream().filter(WechatConfigBean::isDefaultMini).findFirst().get(); return list.stream().filter(WechatConfigBean::isDefaultMini).findFirst().get();
} }
public WechatAppNameMapping getByAppName(String appName) { public WechatAppNameMapping getByAppName(String appName) {
List<WechatAppNameMapping> wechatAppNameMappingList = appNameMappingList();
Optional<WechatAppNameMapping> optional = wechatAppNameMappingList.stream().filter(i -> i.getAppName().equals(appName)).findFirst(); Optional<WechatAppNameMapping> optional = wechatAppNameMappingList.stream().filter(i -> i.getAppName().equals(appName)).findFirst();
if (!optional.isPresent()) { if (!optional.isPresent()) {
throw new BizException(BizExceptionEnum.ERROR_WECHAT_APP_ID); throw new BizException(BizExceptionEnum.ERROR_WECHAT_APP_ID);
...@@ -48,4 +65,6 @@ public class WechatConfiguration { ...@@ -48,4 +65,6 @@ public class WechatConfiguration {
return optional.get(); return optional.get();
} }
} }
} }
...@@ -36,7 +36,7 @@ public class WechatTokenReloadJobHandler { ...@@ -36,7 +36,7 @@ public class WechatTokenReloadJobHandler {
@XxlJob(value = "wechatTokenReloadJobHandler") @XxlJob(value = "wechatTokenReloadJobHandler")
public void execute() { public void execute() {
configuration.getList().stream().filter(i->i.getType()==0).forEach(i->{ configuration.getWechatConfig().stream().filter(i->i.getType()==0).forEach(i->{
Map<String,String > result = wechatRemoteService.getAccessToken(i.getAppId(),i.getAppSecret()); Map<String,String > result = wechatRemoteService.getAccessToken(i.getAppId(),i.getAppSecret());
result.put("initial_time", LocalDateTime.now().toString()); result.put("initial_time", LocalDateTime.now().toString());
if (result.containsKey("errcode")) { if (result.containsKey("errcode")) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment