Compare commits

...

2 Commits

3 changed files with 12 additions and 10 deletions

View File

@ -101,7 +101,7 @@ public class UserController {
} }
} }
// @RequiredRole(AdminTypeEnum.SYSTEM) // @RequiredRole(AdminTypeEnum.SYSTEM)
@PutMapping("/changePassword") @PutMapping("/changePassword")
@UserOperation(value = "修改用户密码", modelName = UserOperationModuleEnum.USER) @UserOperation(value = "修改用户密码", modelName = UserOperationModuleEnum.USER)
public ElectromagneticResult<?> changePassword(@RequestBody ChangePasswordRequest request) { public ElectromagneticResult<?> changePassword(@RequestBody ChangePasswordRequest request) {

View File

@ -1448,8 +1448,8 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
if (StringUtils.isNotBlank(parentId)) { if (StringUtils.isNotBlank(parentId)) {
LambdaQueryWrapper<EdFileInfo> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<EdFileInfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(EdFileInfo::getParentId, parentId) queryWrapper.eq(EdFileInfo::getParentId, parentId)
.eq(EdFileInfo::getSaveStatus, EleDataSaveStatusEnum.SUCCESS.code) .eq(EdFileInfo::getSaveStatus, EleDataSaveStatusEnum.SUCCESS.code)
.eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code); .eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code);
fileIds = this.baseMapper.selectList(queryWrapper).stream().map(EdFileInfo::getFileId).collect(Collectors.toList()); fileIds = this.baseMapper.selectList(queryWrapper).stream().map(EdFileInfo::getFileId).collect(Collectors.toList());
} else { } else {
LambdaQueryWrapper<EdFileFavorite> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<EdFileFavorite> queryWrapper = new LambdaQueryWrapper<>();
@ -1463,7 +1463,7 @@ public class EdFileInfoServiceImpl extends ServiceImpl<EdFileInfoMapper, EdFileI
fileInfoVOIPage.getRecords().forEach(e -> { fileInfoVOIPage.getRecords().forEach(e -> {
e.setFileSizeShow(EleCommonUtil.convertFileSize(e.getFileSize())); e.setFileSizeShow(EleCommonUtil.convertFileSize(e.getFileSize()));
e.setIsFavorite(isFavorite(UserThreadLocal.getUserId(), e.getId()) ? 1 : 0); e.setIsFavorite(isFavorite(UserThreadLocal.getUserId(), e.getId()) ? 1 : 0);
e.setIsPersonal( (String.valueOf(DataOwnEnum.USER_FILE.code).equals(e.getDataOwn()) && Objects.equals(e.getCreatedBy(), UserThreadLocal.getUserId())) ? 1 : 0); e.setIsPersonal((String.valueOf(DataOwnEnum.USER_FILE.code).equals(e.getDataOwn()) && Objects.equals(e.getCreatedBy(), UserThreadLocal.getUserId())) ? 1 : 0);
// 设置权限 // 设置权限
Map<String, Boolean> permissions = (e.getIsPersonal() == 1) Map<String, Boolean> permissions = (e.getIsPersonal() == 1)
? permissionService.getPersonalPermission() ? permissionService.getPersonalPermission()

View File

@ -86,6 +86,7 @@ public class FileRecycleServiceImpl implements FileRecycleService {
.orderByAsc(ObjUtil.equals(pars.getFileTypeSort(), 0), EdFileInfo::getSort) .orderByAsc(ObjUtil.equals(pars.getFileTypeSort(), 0), EdFileInfo::getSort)
.orderByDesc(ObjUtil.equals(pars.getFileTypeSort(), 1), EdFileInfo::getSort); .orderByDesc(ObjUtil.equals(pars.getFileTypeSort(), 1), EdFileInfo::getSort);
if (StrUtil.isNotEmpty(pars.getKeyword())) { if (StrUtil.isNotEmpty(pars.getKeyword())) {
queryWrapper.and(qr -> qr.like(EdFileInfo::getFileName, pars.getKeyword()) queryWrapper.and(qr -> qr.like(EdFileInfo::getFileName, pars.getKeyword())
.or() .or()
@ -95,17 +96,18 @@ public class FileRecycleServiceImpl implements FileRecycleService {
.or() .or()
.like(EdFileInfo::getFileContent, pars.getKeyword())); .like(EdFileInfo::getFileContent, pars.getKeyword()));
} }
// TODO 要考虑数据是个人数据还是库数据如果是管理员则展示全部数据其他用户则展示有权限的系统数据+用户个人数据+库数据
if (!UserThreadLocal.getAdminType().equals(AdminTypeEnum.SYSTEM.getValue())) { if (!UserThreadLocal.getAdminType().equals(AdminTypeEnum.SYSTEM.getValue())) {
List<String> ids = edFileInfoMapper.selectList(Wrappers.<EdFileInfo>lambdaQuery().select(EdFileInfo::getId).eq(EdFileInfo::getDataOwn, DataOwnEnum.USER_FILE.code))
.stream()
.map(EdFileInfo::getId)
.collect(Collectors.toList());
List<String> accessibleTree = permissionService.getAccessibleTree(); List<String> accessibleTree = permissionService.getAccessibleTree();
queryWrapper.and(qr -> qr.eq(EdFileInfo::getCreatedBy, UserThreadLocal.getUserId()).eq(EdFileInfo::getDataOwn, DataOwnEnum.USER_FILE.code)); accessibleTree.addAll(ids);
if (CollUtil.isNotEmpty(accessibleTree)) { if (CollUtil.isNotEmpty(accessibleTree)) {
for (String permission : accessibleTree) { queryWrapper.and(qr -> accessibleTree.forEach(e -> qr.or().likeRight(EdFileInfo::getFilePath, e)));
queryWrapper.or().likeRight(EdFileInfo::getFileCode, permission);
}
} }
} }
Page<EdFileInfo> edFileInfoPage = this.edFileInfoMapper.selectPage(new Page<>(pars.getPageNum(), pars.getPageSize()), queryWrapper); Page<EdFileInfo> edFileInfoPage = this.edFileInfoMapper.selectPage(new Page<>(pars.getPageNum(), pars.getPageSize()), queryWrapper);
long total = edFileInfoPage.getTotal(); long total = edFileInfoPage.getTotal();
List<FileRecycleQueryVO> records = BeanUtil.copyToList(edFileInfoPage.getRecords(), FileRecycleQueryVO.class); List<FileRecycleQueryVO> records = BeanUtil.copyToList(edFileInfoPage.getRecords(), FileRecycleQueryVO.class);