From c9bdc58a6a9130f1c83962f114a9593a7af37014 Mon Sep 17 00:00:00 2001
From: huliguo <2023611923@qq.com>
Date: 星期一, 28 七月 2025 19:05:08 +0800
Subject: [PATCH] bug修改
---
ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java | 29 +++++++++++++++--------------
1 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
index b425ba0..7e2954f 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java
@@ -1,7 +1,6 @@
package com.ruoyi.auth.service;
import com.alibaba.fastjson.JSONObject;
-import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A;
import com.ruoyi.auth.config.QywxInnerConfig;
import com.ruoyi.auth.utils.RestUtils;
import com.ruoyi.common.core.constant.Constants;
@@ -9,20 +8,14 @@
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.system.api.model.AgentConfigVo;
import org.apache.commons.codec.binary.Hex;
-import org.apache.commons.lang3.ObjectUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.cache.RedisCache;
-import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.Map;
import java.util.concurrent.TimeUnit;
@Service
@@ -121,20 +114,19 @@
}
logger.info("----------------userinfo detail -------------");
logger.info(detailResponse.toString());
-
return detailResponse;
}
- public AgentConfigVo getAgentConfig(String url) {
+ public AgentConfigVo getAgentConfig(String url, String type) {
AgentConfigVo agentConfigVo = new AgentConfigVo();
agentConfigVo.setAgentid(qywxInnerConfig.getAgentId());
agentConfigVo.setCorpid(qywxInnerConfig.getCorpId());
//临时票据
- String ticket = getJsApiTicket();
+ String ticket = getJsApiTicket(type);
if (StringUtils.isEmpty(ticket)) {
throw new ServiceException("获取票据异常");
}
@@ -178,13 +170,22 @@
* @paran type
* @return
*/
- public String getJsApiTicket() {
+ public String getJsApiTicket(String type) {
String accessToken = getAccessToken();
- String ticket = redisTemplate.opsForValue().get(Constants.QY_WX_TICKET_KEY);
+ String ticketKey = Constants.QY_WX_TICKET_KEY;
+
+ String jsapiTicketUrl = qywxInnerConfig.getJsapiTicketUrl();
+ if("agent_config".equals(type)){
+ ticketKey = ticketKey + type;
+ jsapiTicketUrl = qywxInnerConfig.getJsapiTicketAgentUrl();
+ }
+
+ String ticket = redisTemplate.opsForValue().get(ticketKey);
if(!StringUtils.isEmpty(ticket)){
return ticket;
}
- String url = String.format(qywxInnerConfig.getJsapiTicketAgentUrl(), accessToken);
+
+ String url = String.format(jsapiTicketUrl, accessToken);
JSONObject response = RestUtils.get(url);
if(response.containsKey(Constants.QY_WX_ERR_CODE) && response.getInteger(Constants.QY_WX_ERR_CODE) != 0){
@@ -195,7 +196,7 @@
ticket = response.getString(Constants.QY_WX_TICKET);
Long expiresIn = response.getLong(Constants.QY_WX_EXPIRES_IN);
expiresIn = expiresIn - 100;
- redisTemplate.opsForValue().set(Constants.QY_WX_TICKET_KEY, ticket, expiresIn, TimeUnit.SECONDS);
+ redisTemplate.opsForValue().set(ticketKey, ticket, expiresIn, TimeUnit.SECONDS);
return ticket;
}
--
Gitblit v1.7.1