禅道#958、#956修复

This commit is contained in:
gaoqr
2024-12-13 16:56:11 +08:00
parent b57cf81de5
commit c53fbac707
@@ -261,14 +261,19 @@ public class RoleServiceImpl implements RoleService {
public List<RoleDO> getRoleListByStatus(Collection<Integer> statuses, Long organId) {
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
assert loginUser != null;
if (!loginUser.getIsSupAdmin()) {
return roleMapper.selectList(new LambdaQueryWrapperX<RoleDO>()
.in(RoleDO::getStatus, statuses)
.in(RoleDO::getOrganId, loginUser.getOrganId(), 0L)
.ne(RoleDO::getId, 1)
);
// 内置角色organId0L
Long[] roleOrganArr = new Long[2];
roleOrganArr[0] = 0L;
// 超管可查看其他组织角色,其余只看本机构下
Long currOrganId = (loginUser.getIsSupAdmin() && ObjectUtil.isNotNull(organId)) ? organId : loginUser.getOrganId();
if(ObjectUtil.isNotNull(currOrganId)) {
roleOrganArr[1] = currOrganId;
}
return roleMapper.selectListByStatus(statuses, ObjectUtil.isNotNull(organId) ? organId : loginUser.getOrganId());
return roleMapper.selectList(new LambdaQueryWrapperX<RoleDO>()
.in(RoleDO::getStatus, statuses)
.in(RoleDO::getOrganId, roleOrganArr)
.ne(RoleDO::getId, 1)
);
}
@Override