From d4f6d9632d5405a0153b124c5047b82efbd26649 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期三, 24 五月 2023 11:21:20 +0800
Subject: [PATCH] 用户重构
---
ruoyi-auth/src/main/java/com/ruoyi/auth/service/QywxInnerService.java | 25 +++++++++++++++++--------
1 files changed, 17 insertions(+), 8 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 6cdbed9..eab02d3 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
@@ -127,14 +127,14 @@
- 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("获取票据异常");
}
@@ -156,8 +156,8 @@
try {
String unEncryptStr = String.format(unEncryptStrBase, ticket, nonceStr, timestamp, url);
- logger.info("----------------unEncryptStrBase-------------");
- logger.info(unEncryptStrBase);
+ logger.info("----------------unEncryptStr-------------");
+ logger.info(unEncryptStr);
MessageDigest digest = MessageDigest.getInstance("SHA-1");
// 调用digest方法,进行加密操作
@@ -178,13 +178,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 +204,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