mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
权限问题修复:executor、report权限缓存清空感知补充
This commit is contained in:
-15
@@ -1,15 +0,0 @@
|
||||
package com.cf.imes.module.system.dal.redis;
|
||||
|
||||
/**
|
||||
* system redis监听刷新通道名称 常量
|
||||
*
|
||||
* @author Gqr
|
||||
* @since 2024/6/13 14:55
|
||||
*/
|
||||
public class RedisRefreshChannelTopicConstants {
|
||||
|
||||
/**
|
||||
* 刷新权限
|
||||
*/
|
||||
public static final String PERMISSION_REFRESH = "PERMISSION_REFRESH";
|
||||
}
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
package com.cf.imes.module.system.dal.redis.listener;
|
||||
|
||||
import com.cf.imes.framework.mq.redis.core.pubsub.AbstractRedisSimpleMessageListener;
|
||||
import com.cf.imes.framework.redis.constants.RedisKeyConstants;
|
||||
import com.cf.imes.framework.security.core.service.SecurityFrameworkService;
|
||||
import com.cf.imes.module.system.dal.redis.RedisRefreshChannelTopicConstants;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.redis.connection.Message;
|
||||
import org.springframework.data.redis.listener.ChannelTopic;
|
||||
@@ -21,7 +21,7 @@ public class SystemPermissionRefreshRedisListener extends AbstractRedisSimpleMes
|
||||
private final SecurityFrameworkService securityFrameworkService;
|
||||
|
||||
public SystemPermissionRefreshRedisListener(SecurityFrameworkService securityFrameworkService) {
|
||||
super.setTopic(new ChannelTopic(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH));
|
||||
super.setTopic(new ChannelTopic(RedisKeyConstants.PERMISSION_REFRESH));
|
||||
this.securityFrameworkService = securityFrameworkService;
|
||||
}
|
||||
|
||||
|
||||
+2
-3
@@ -9,7 +9,6 @@ import com.cf.imes.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
|
||||
import com.cf.imes.module.system.dal.dataobject.permission.MenuDO;
|
||||
import com.cf.imes.module.system.dal.mysql.permission.MenuMapper;
|
||||
import com.cf.imes.module.system.dal.redis.RedisKeyConstants;
|
||||
import com.cf.imes.module.system.dal.redis.RedisRefreshChannelTopicConstants;
|
||||
import com.cf.imes.module.system.enums.permission.MenuTypeEnum;
|
||||
import com.cf.imes.module.system.service.organ.OrganService;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
@@ -160,9 +159,9 @@ public class MenuServiceImpl implements MenuService {
|
||||
}
|
||||
|
||||
// 清空本地缓存
|
||||
redisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
redisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
}).exceptionally(e -> {
|
||||
log.error("[deleteMenu] redis 清空PERMISSION_MENU_ID_LIST或message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, e);
|
||||
log.error("[deleteMenu] redis 清空PERMISSION_MENU_ID_LIST或message发送失败, topic:{}, 异常:{}", com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, e);
|
||||
return null;
|
||||
});
|
||||
}
|
||||
|
||||
+6
-7
@@ -29,7 +29,6 @@ import com.cf.imes.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import com.cf.imes.module.system.dal.mysql.permission.RoleMenuMapper;
|
||||
import com.cf.imes.module.system.dal.mysql.permission.UserRoleMapper;
|
||||
import com.cf.imes.module.system.dal.redis.RedisKeyConstants;
|
||||
import com.cf.imes.module.system.dal.redis.RedisRefreshChannelTopicConstants;
|
||||
import com.cf.imes.module.system.enums.ErrorCodeConstants;
|
||||
import com.cf.imes.module.system.enums.permission.DataScopeEnum;
|
||||
import com.cf.imes.module.system.service.dept.DeptService;
|
||||
@@ -255,7 +254,7 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
log.info("[assignRoleMenu] 批量删除redis[{}]数量:{}", patternKey, batchDelNum);
|
||||
});
|
||||
}
|
||||
stringRedisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
stringRedisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
})
|
||||
.thenRunAsync(() -> {
|
||||
// 清空角色下用户的token缓存
|
||||
@@ -508,9 +507,9 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
log.info("[batchAssignRoleUsers] 批量删除redis[{}]数量:{}", patternKey, batchDelNum);
|
||||
});
|
||||
}
|
||||
stringRedisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
stringRedisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
}).exceptionally(e -> {
|
||||
log.error("[batchAssignRoleUsers] redis 清空USER_ROLE_ID_LIST或message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, e);
|
||||
log.error("[batchAssignRoleUsers] redis 清空USER_ROLE_ID_LIST或message发送失败, topic:{}, 异常:{}", com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, e);
|
||||
return null;
|
||||
});
|
||||
}
|
||||
@@ -590,9 +589,9 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
CompletableFuture.runAsync(() -> {
|
||||
// 移除redis中的缓存
|
||||
stringRedisTemplate.delete(String.format(String.valueOf(new StringBuffer(RedisKeyConstants.USER_ROLE_ID_LIST).append(":%s:%s")), organId, userId));
|
||||
stringRedisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
stringRedisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
}).exceptionally(e -> {
|
||||
log.error("[assignUserRole] redis message发送失败, topic:{}, 异常:{}", RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, e);
|
||||
log.error("[assignUserRole] redis message发送失败, topic:{}, 异常:{}", com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, e);
|
||||
return null;
|
||||
});
|
||||
}
|
||||
@@ -764,7 +763,7 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
})
|
||||
.thenRunAsync(() -> {
|
||||
//通知刷新本地权限缓存
|
||||
stringRedisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
stringRedisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
})
|
||||
.exceptionally(e -> {
|
||||
log.error("[PermissionService][flushCacheWhenTenantPackageChange]失败, 异常:{}", e);
|
||||
|
||||
+1
-2
@@ -19,7 +19,6 @@ import com.cf.imes.module.system.controller.admin.permission.vo.role.RoleSaveReq
|
||||
import com.cf.imes.module.system.dal.dataobject.permission.RoleDO;
|
||||
import com.cf.imes.module.system.dal.mysql.permission.RoleMapper;
|
||||
import com.cf.imes.module.system.dal.redis.RedisKeyConstants;
|
||||
import com.cf.imes.module.system.dal.redis.RedisRefreshChannelTopicConstants;
|
||||
import com.cf.imes.module.system.enums.ErrorCodeConstants;
|
||||
import com.cf.imes.module.system.enums.permission.DataScopeEnum;
|
||||
import com.cf.imes.module.system.enums.permission.RoleCodeEnum;
|
||||
@@ -178,7 +177,7 @@ public class RoleServiceImpl implements RoleService {
|
||||
}
|
||||
}
|
||||
// 通知刷新本地缓存
|
||||
stringRedisTemplate.convertAndSend(RedisRefreshChannelTopicConstants.PERMISSION_REFRESH, "");
|
||||
stringRedisTemplate.convertAndSend(com.cf.imes.framework.redis.constants.RedisKeyConstants.PERMISSION_REFRESH, "");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user