From 8f2544f1d0e5e82c0e7ee1d89abc1c916b0b9f9f Mon Sep 17 00:00:00 2001 From: yanghui <2536613402@qq.com> Date: 星期二, 01 十一月 2022 13:35:16 +0800 Subject: [PATCH] #feat 修改获取token --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WxMaConfiguration.java | 36 ++++++++++++++++++++++++++++++++++++ 1 files changed, 36 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WxMaConfiguration.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WxMaConfiguration.java index aa02505..459effe 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WxMaConfiguration.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WxMaConfiguration.java @@ -2,6 +2,14 @@ import javax.annotation.Resource; +import cn.binarywang.wx.miniapp.config.impl.WxMaRedisBetterConfigImpl; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.user.SysAppConfigVO; +import com.panzhihua.common.service.user.UserService; +import com.panzhihua.common.utlis.StringUtils; +import me.chanjar.weixin.common.redis.RedisTemplateWxRedisOps; +import me.chanjar.weixin.common.redis.WxRedisOps; +import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Component; import cn.binarywang.wx.miniapp.api.WxMaService; @@ -21,6 +29,12 @@ @Resource private WxMaProperties properties; + @Resource + private StringRedisTemplate stringRedisTemplate; + + @Resource + private UserService userService; + public WxMaService getMaService() { WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl(); @@ -31,4 +45,26 @@ wxMaService.setWxMaConfig(config); return wxMaService; } + + public WxMaService getMaService(String appid) { + WxRedisOps redisOps = new RedisTemplateWxRedisOps(stringRedisTemplate); + WxMaRedisBetterConfigImpl config = new WxMaRedisBetterConfigImpl(redisOps, "access_token"); + if(StringUtils.isNotEmpty(appid)){ + R<SysAppConfigVO> r=userService.selectByAppid(appid); + if(R.isOk(r)){ + SysAppConfigVO sysAppConfigVO= r.getData(); + config.setAppid(sysAppConfigVO.getAppId()); + config.setSecret(sysAppConfigVO.getSecret()); + config.setMsgDataFormat(properties.getMsgDataFormat()); + } + } + else{ + config.setAppid(properties.getAppid()); + config.setSecret(properties.getSecret()); + config.setMsgDataFormat(properties.getMsgDataFormat()); + } + WxMaService wxMaService = new WxMaServiceImpl(); + wxMaService.setWxMaConfig(config); + return wxMaService; + } } -- Gitblit v1.7.1