xuhy
2024-12-16 7ea8d1c6da749da69516f47593ae47546a0d3d4c
applet/src/main/java/com/jilongda/applet/wx/utils/WxAppletTools.java
@@ -3,7 +3,9 @@
import com.jilongda.applet.wx.body.resp.AccessTokenRespBody;
import com.jilongda.applet.wx.body.resp.Code2SessionRespBody;
import com.jilongda.applet.wx.body.resq.Code2SessionResqBody;
import com.jilongda.common.redis.RedisAutoTemplate;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.cache.RedisCache;
import org.springframework.util.StringUtils;
import org.springframework.web.client.RestTemplate;
@@ -55,12 +57,12 @@
    public static String ACCESS_TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";
    private WeixinProperties wxConfig;
    private RestTemplate wxRestTemplate;
    private WxCacheTemplate<String> wxCacheTemplate;
    private RedisAutoTemplate redisAutoTemplate;
    public WxAppletTools(RestTemplate wxRestTemplate, WeixinProperties wxConfig, WxCaffineCache wxCacheTemplate) {
    public WxAppletTools(RestTemplate wxRestTemplate, WeixinProperties wxConfig, RedisAutoTemplate redisAutoTemplate) {
        this.wxRestTemplate = wxRestTemplate;
        this.wxCacheTemplate = wxCacheTemplate;
        this.wxConfig = wxConfig;
        this.redisAutoTemplate = redisAutoTemplate;
    }
    public WxAppletTools(RestTemplate wxRestTemplate, WeixinProperties wxConfig) {
@@ -105,7 +107,7 @@
     * @return
     */
    public String getAccessToken() {
        String accessToken = wxCacheTemplate.getKey(ACCESSTOKEN_CACHE_KEY);
        String accessToken = redisAutoTemplate.getStr(ACCESSTOKEN_CACHE_KEY);
        if (StringUtils.hasLength(accessToken)) {
            return accessToken;
        }
@@ -117,7 +119,7 @@
            // 抛出错误
            throw new WxException(accessTokenRespBody.getErrorCode() + ":" + accessTokenRespBody.getErrorMsg());
        }
        wxCacheTemplate.setKey(ACCESSTOKEN_CACHE_KEY, accessTokenRespBody.getAccessToken());
        redisAutoTemplate.setStr(ACCESSTOKEN_CACHE_KEY, accessTokenRespBody.getAccessToken());
        return accessTokenRespBody.getAccessToken();
    }