From 5a053a354602d384213b1716bd1567829e3d0a6d Mon Sep 17 00:00:00 2001 From: YXY <932687738@qq.com> Date: Mon, 24 Jul 2023 21:41:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B1=E4=BA=ABtoken?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/common/constant/RedisConstants.java | 1 + .../flyingbook/controller/EdiController.java | 1 + .../task/CJT/SyncAccountsJobAbstract.java | 25 +++++++++++-------- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/RedisConstants.java b/ruoyi-common/src/main/java/com/ruoyi/common/constant/RedisConstants.java index 6fc503c..d75f069 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/RedisConstants.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/constant/RedisConstants.java @@ -25,5 +25,6 @@ public class RedisConstants { * 畅捷通ticket缓存key */ public static final String CJT_TICKET_CACHE_KEY = "TICKET_KEY"; + public static final String CJT_TOKEN_CACHE_KEY = "OPEN_TOKEN"; } diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/EdiController.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/EdiController.java index 671a073..b9e6f5e 100644 --- a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/EdiController.java +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/EdiController.java @@ -76,6 +76,7 @@ public class EdiController extends BaseController { String appTicket = bizContent.getString("appTicket"); if (StringUtils.isNotBlank(appTicket)) { redisCache.setCacheObject(RedisConstants.CJT_TICKET_CACHE_KEY,appTicket,10, TimeUnit.MINUTES); + redisCache.deleteObject(CJT_TOKEN_CACHE_KEY); } }catch (Exception e){ log.error("receiveWscTicket error request:{}",JSONObject.toJSONString(request),e); diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java index 704e270..34b9f50 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/CJT/SyncAccountsJobAbstract.java @@ -27,6 +27,7 @@ import org.springframework.util.StringUtils; import java.time.LocalDateTime; import java.util.*; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import static com.ruoyi.quartz.helper.OkHttpHelper.post; @@ -325,16 +326,20 @@ public abstract class SyncAccountsJobAbstract { * 生成调用接口的token信息 */ private void generateToken(CJTJobContext context) { - CJTRequest cjtRequest = new CJTRequest(REQUEST_GENERATE_TOKEN_PATH - , context.getAppKey() - , context.getAppSecret() - , context.getTicket() - , CERTIFICATE); - cjtRequest.buildGenerateBody(); - JSONObject body = JSONObject.parseObject(post(cjtRequest)); - JSONObject value = body.getJSONObject("value"); - String token = value.getString("accessToken"); - context.setOpenToken(token); + String openToken = (String) redisCache.getCacheObject(RedisConstants.CJT_TOKEN_CACHE_KEY); + if (StringUtils.isEmpty(RedisConstants.CJT_TOKEN_CACHE_KEY)){ + CJTRequest cjtRequest = new CJTRequest(REQUEST_GENERATE_TOKEN_PATH + , context.getAppKey() + , context.getAppSecret() + , context.getTicket() + , CERTIFICATE); + cjtRequest.buildGenerateBody(); + JSONObject body = JSONObject.parseObject(post(cjtRequest)); + JSONObject value = body.getJSONObject("value"); + String token = value.getString("accessToken"); + context.setOpenToken(token); + redisCache.setCacheObject(RedisConstants.CJT_TOKEN_CACHE_KEY,token,10, TimeUnit.MINUTES); + } } /**