From 75d471b1b6b67c9383ef03d543ee722b1e853bb7 Mon Sep 17 00:00:00 2001 From: XiaoLFeng Date: Wed, 17 Apr 2024 01:09:42 +0800 Subject: [PATCH] =?UTF-8?q?patch:=20=E8=A1=A5=E4=B8=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/jsl/oa/dao/PermissionDAO.java | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/jsl/oa/dao/PermissionDAO.java b/src/main/java/com/jsl/oa/dao/PermissionDAO.java index e03b62a..1c31dbc 100644 --- a/src/main/java/com/jsl/oa/dao/PermissionDAO.java +++ b/src/main/java/com/jsl/oa/dao/PermissionDAO.java @@ -45,17 +45,27 @@ public class PermissionDAO { public List getPermission(@NotNull Long uid) { // 查询用户所在角色组 RoleDO getRole = roleMapper.getRoleByUserId(uid); - List getPermissionForString; - String permissionRedisString = roleRedisUtil.getData(BusinessConstants.NONE, uid.toString()); - if (permissionRedisString == null) { - String permissionList = permissionMapper.getPermissionByRole(getRole.getRoleName()); - getPermissionForString = gson.fromJson(permissionList, new TypeToken>() { }.getType()); - // 存入 Redis - roleRedisUtil.setData(BusinessConstants.NONE, uid.toString(), gson.toJson(getPermissionForString), 1440); + if (getRole != null) { + List getPermissionForString; + String permissionRedisString = roleRedisUtil.getData(BusinessConstants.NONE, uid.toString()); + if (permissionRedisString == null) { + String permissionList = permissionMapper.getPermissionByRole(getRole.getRoleName()); + getPermissionForString = gson.fromJson(permissionList, new TypeToken>() { }.getType()); + // 存入 Redis + roleRedisUtil.setData( + BusinessConstants.NONE, + uid.toString(), + gson.toJson(getPermissionForString), + 1440 + ); + } else { + getPermissionForString = gson + .fromJson(permissionRedisString, new TypeToken>() { }.getType()); + } + return getPermissionForString; } else { - getPermissionForString = gson.fromJson(permissionRedisString, new TypeToken>() { }.getType()); + return null; } - return getPermissionForString; } public List getAllPermissionBuildString() {