优化代码
This commit is contained in:
parent
46dc09ffe8
commit
e1c73f2584
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import com.electromagnetic.industry.software.common.cons.ElectromagneticConstants;
|
||||||
import com.electromagnetic.industry.software.common.enums.DataOwnEnum;
|
import com.electromagnetic.industry.software.common.enums.DataOwnEnum;
|
||||||
import com.electromagnetic.industry.software.common.enums.EffectFlagEnum;
|
import com.electromagnetic.industry.software.common.enums.EffectFlagEnum;
|
||||||
import com.electromagnetic.industry.software.common.enums.EleDataStatusEnum;
|
import com.electromagnetic.industry.software.common.enums.EleDataStatusEnum;
|
||||||
|
|
@ -83,25 +84,25 @@ public class PermissionServiceImpl implements PermissionService {
|
||||||
String userId = UserThreadLocal.getUserId();
|
String userId = UserThreadLocal.getUserId();
|
||||||
List<String> roleIds = getRoles(userId);
|
List<String> roleIds = getRoles(userId);
|
||||||
|
|
||||||
if (roleIds == null || roleIds.isEmpty()) {
|
if (CollUtil.isEmpty(roleIds)) {
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
LambdaQueryWrapper<RolePermission> queryWrapper1 = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<RolePermission> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||||
queryWrapper1.select(RolePermission::getFileId)
|
queryWrapper1.select(RolePermission::getFileId)
|
||||||
.in(RolePermission::getRoleId, roleIds)
|
.in(RolePermission::getRoleId, roleIds)
|
||||||
.eq(RolePermission::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
.eq(RolePermission::getEffectFlag, EffectFlagEnum.EFFECT.code)
|
||||||
.eq(RolePermission::getPermissionCode, FilePermission.VIEW.getCode());
|
.eq(RolePermission::getPermissionCode, FilePermission.VIEW.getCode());
|
||||||
List<String> ids = rolePermissionService.listObjs(queryWrapper1).stream().map(Object::toString).toList();
|
List<String> ids = rolePermissionService.listObjs(queryWrapper1).stream().map(Object::toString).toList();
|
||||||
|
|
||||||
if (CollUtil.isEmpty(ids)) {
|
if (CollUtil.isEmpty(ids)) {
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
Set<String> result = new HashSet<>();
|
Set<String> result = new HashSet<>();
|
||||||
// 把父亲节点加上
|
// 把父亲节点加上
|
||||||
List<EdFileInfo> edFileInfos = edFileInfoMapper.selectList(Wrappers.lambdaQuery(EdFileInfo.class).in(EdFileInfo::getId, ids));
|
List<EdFileInfo> edFileInfos = edFileInfoMapper.selectList(Wrappers.lambdaQuery(EdFileInfo.class)
|
||||||
|
.select(EdFileInfo::getFilePath)
|
||||||
|
.in(EdFileInfo::getId, ids));
|
||||||
for (EdFileInfo file : edFileInfos) {
|
for (EdFileInfo file : edFileInfos) {
|
||||||
String[] parentIds = file.getFilePath().split("_");
|
String[] parentIds = file.getFilePath().split(ElectromagneticConstants.MYSQL_FILE_PATH_SPLIT);
|
||||||
result.addAll(Arrays.asList(parentIds));
|
result.addAll(Arrays.asList(parentIds));
|
||||||
}
|
}
|
||||||
return new ArrayList<>(result);
|
return new ArrayList<>(result);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue