From 0310bd4a15d5d4fae13ffd756b1fa0a0ae6c048d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=BE=E6=96=87=E8=B1=AA?= <980287353@qq.com> Date: Tue, 27 Aug 2024 13:38:57 +0800 Subject: [PATCH] =?UTF-8?q?perf=EF=BC=9A=E6=9B=B4=E6=96=B0=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=81=8C=E4=BD=8D=E7=9A=84=E6=97=B6=E5=80=99=EF=BC=8C?= =?UTF-8?q?=E6=B8=85=E9=99=A4=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../login/service/CorePlatformUniqueService.java | 2 +- .../com/tiesheng/role/service/CoreRoleService.java | 13 +++++++++---- .../com/tiesheng/util/service/TsCacheService.java | 6 +++--- .../util/service/role/TsAuthorityHandler.java | 2 +- .../web/config/role/RoleAuthorityAspect.java | 2 +- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/springboot-login/src/main/java/com/tiesheng/login/service/CorePlatformUniqueService.java b/springboot-login/src/main/java/com/tiesheng/login/service/CorePlatformUniqueService.java index 79c98e1..a248915 100644 --- a/springboot-login/src/main/java/com/tiesheng/login/service/CorePlatformUniqueService.java +++ b/springboot-login/src/main/java/com/tiesheng/login/service/CorePlatformUniqueService.java @@ -53,7 +53,7 @@ public class CorePlatformUniqueService extends TsServiceBase TsCacheService.of().remove(key)); + if (StrUtil.isEmpty(roleId)) { + TsCacheService.of().keys(StrUtil.replace(TsAuthorityHandler.CACHE_AUTHORITY, + ":{}", "")).forEach(key -> TsCacheService.of().remove(key)); + } else { + TsCacheService.of().keys(StrUtil.format(TsAuthorityHandler.CACHE_AUTHORITY, + roleId, userId)).forEach(key -> TsCacheService.of().remove(key)); + } } diff --git a/springboot-util/src/main/java/com/tiesheng/util/service/TsCacheService.java b/springboot-util/src/main/java/com/tiesheng/util/service/TsCacheService.java index 2dcff9c..58f5bb0 100644 --- a/springboot-util/src/main/java/com/tiesheng/util/service/TsCacheService.java +++ b/springboot-util/src/main/java/com/tiesheng/util/service/TsCacheService.java @@ -68,11 +68,11 @@ public class TsCacheService { /** * 获取key * - * @param pattern + * @param prefix * @return */ - public Set keys(String pattern) { - return tsCacheHandler.keys(pattern); + public Set keys(String prefix) { + return tsCacheHandler.keys(prefix); } diff --git a/springboot-util/src/main/java/com/tiesheng/util/service/role/TsAuthorityHandler.java b/springboot-util/src/main/java/com/tiesheng/util/service/role/TsAuthorityHandler.java index 679c172..5603a23 100644 --- a/springboot-util/src/main/java/com/tiesheng/util/service/role/TsAuthorityHandler.java +++ b/springboot-util/src/main/java/com/tiesheng/util/service/role/TsAuthorityHandler.java @@ -9,7 +9,7 @@ import java.util.List; @Service public interface TsAuthorityHandler { - String CACHE_HAS_AUTHORITY = "CACHE:HAS_AUTHORITY:{}:{}"; + String CACHE_AUTHORITY = "CACHE:AUTHORITY:{}:{}"; /** diff --git a/springboot-web/src/main/java/com/tiesheng/web/config/role/RoleAuthorityAspect.java b/springboot-web/src/main/java/com/tiesheng/web/config/role/RoleAuthorityAspect.java index 7e852b5..15d8dd0 100644 --- a/springboot-web/src/main/java/com/tiesheng/web/config/role/RoleAuthorityAspect.java +++ b/springboot-web/src/main/java/com/tiesheng/web/config/role/RoleAuthorityAspect.java @@ -56,7 +56,7 @@ public class RoleAuthorityAspect { HttpServletRequest request = ServletKit.getRequest(); TokenBean tokenBean = tsTokenConfig.validToken(request, true); - String cacheKey = StrUtil.format(TsAuthorityHandler.CACHE_HAS_AUTHORITY, tokenBean.getRoleId(), tokenBean.getId()); + String cacheKey = StrUtil.format(TsAuthorityHandler.CACHE_AUTHORITY, tokenBean.getRoleId(), tokenBean.getId()); List authorityList = StrUtil.split(TsCacheService.of().get(cacheKey), ";") .stream().filter(StrUtil::isNotEmpty).collect(Collectors.toList()); if (CollUtil.isEmpty(authorityList)) {