mirror of
https://github.com/continew-org/continew-admin.git
synced 2025-10-20 07:01:31 +08:00
fix(system/user):修复新建租户的管理员用户角色回显错误
This commit is contained in:
@@ -16,7 +16,6 @@
|
|||||||
|
|
||||||
package top.continew.admin.system.service.impl;
|
package top.continew.admin.system.service.impl;
|
||||||
|
|
||||||
import cn.dev33.satoken.stp.StpUtil;
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.alicp.jetcache.anno.CacheInvalidate;
|
import com.alicp.jetcache.anno.CacheInvalidate;
|
||||||
@@ -36,8 +35,8 @@ import top.continew.admin.system.constant.SystemConstants;
|
|||||||
import top.continew.admin.system.mapper.RoleMapper;
|
import top.continew.admin.system.mapper.RoleMapper;
|
||||||
import top.continew.admin.system.model.entity.RoleDO;
|
import top.continew.admin.system.model.entity.RoleDO;
|
||||||
import top.continew.admin.system.model.query.RoleQuery;
|
import top.continew.admin.system.model.query.RoleQuery;
|
||||||
import top.continew.admin.system.model.req.RoleReq;
|
|
||||||
import top.continew.admin.system.model.req.RolePermissionUpdateReq;
|
import top.continew.admin.system.model.req.RolePermissionUpdateReq;
|
||||||
|
import top.continew.admin.system.model.req.RoleReq;
|
||||||
import top.continew.admin.system.model.resp.MenuResp;
|
import top.continew.admin.system.model.resp.MenuResp;
|
||||||
import top.continew.admin.system.model.resp.role.RoleDetailResp;
|
import top.continew.admin.system.model.resp.role.RoleDetailResp;
|
||||||
import top.continew.admin.system.model.resp.role.RoleResp;
|
import top.continew.admin.system.model.resp.role.RoleResp;
|
||||||
@@ -51,7 +50,6 @@ import java.util.Collections;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 角色业务实现
|
* 角色业务实现
|
||||||
@@ -137,13 +135,10 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, RoleDO, RoleRes
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<LabelValueResp> dict(RoleQuery query, SortQuery sortQuery) {
|
public List<LabelValueResp> dict(RoleQuery query, SortQuery sortQuery) {
|
||||||
List<String> currentUserRoleCodes = StpUtil.getRoleList();
|
boolean isTenantAdmin = UserContextHolder.isTenantAdmin();
|
||||||
final List<String> superRoleCodes = RoleCodeEnum.getSuperRoleCodes();
|
query.setExcludeRoleCodes(isTenantAdmin
|
||||||
// dict查询的时候,需要查询当前用户拥有的角色而不是排除,避免前端显示角色数字而不是角色名称
|
? List.of(RoleCodeEnum.SUPER_ADMIN.getCode())
|
||||||
final List<String> excludeRoleCodes = superRoleCodes.stream()
|
: RoleCodeEnum.getSuperRoleCodes());
|
||||||
.filter(roleCode -> !currentUserRoleCodes.contains(roleCode))
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
query.setExcludeRoleCodes(CollUtil.defaultIfEmpty(excludeRoleCodes, superRoleCodes));
|
|
||||||
return super.dict(query, sortQuery);
|
return super.dict(query, sortQuery);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user