diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/config/LoginInterceptor.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/config/LoginInterceptor.java index 7d4ef20..13cd37e 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/config/LoginInterceptor.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/config/LoginInterceptor.java @@ -28,20 +28,21 @@ public class LoginInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { - // 首先校验token boolean isTokenValid = checkToken(request, response); if (!isTokenValid) { return false; } - return checkSysAdminOperation(request); + return checkSysAdminOperation(request, response); } - private boolean checkSysAdminOperation(HttpServletRequest request) { - String requestURI = request.getRequestURI(); - if (requestURI.startsWith("/data/ed/prj")) { - return UserThreadLocal.getAdminType().equals(AdminTypeEnum.SYSTEM.getValue()); - } + private boolean checkSysAdminOperation(HttpServletRequest request, HttpServletResponse response) { +// String requestURI = request.getRequestURI(); +// if (requestURI.startsWith("/data/ed/prj") && !UserThreadLocal.getAdminType().equals(AdminTypeEnum.SYSTEM.getValue())) { +// log.warn("{}没有层级操作权限,当前用户类型是{}", UserThreadLocal.getUsername(), UserThreadLocal.getAdminType()); +// response.setStatus(HttpServletResponse.SC_FORBIDDEN); +// return false; +// } return true; } @@ -49,7 +50,7 @@ public class LoginInterceptor implements HandlerInterceptor { String token = request.getHeader("Authorization"); if (token == null) { log.error("Authorization header is null"); - response.setStatus(401); + response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); return false; } else { token = token.substring(7); @@ -57,13 +58,13 @@ public class LoginInterceptor implements HandlerInterceptor { boolean result = isTokenValid(token); if (!result) { log.error("Invalid token"); - response.setStatus(401); + response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); return false; } else { Claims claims = TokenUtil.getLoginInfo(token); if (claims == null) { log.error("User info is missing"); - response.setStatus(401); + response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); return false; } else { UserLoginInfo userLoginInfo = new UserLoginInfo(); diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/CommonService.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/CommonService.java index 9471d0c..45545de 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/CommonService.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/CommonService.java @@ -184,6 +184,7 @@ public class CommonService { .setFileName(folderName) .setFileVersion(FILE_START_VERSION) .setParentId(parentId) + .setFileType("文件夹") .setFileCode(createFileCode(parentId, EleDataTypeEnum.FOLDER.desc, FILE_START_VERSION, nowTimeStr)) .setFileTime(nowTimeStr) .setPrjDir(isPrjDir) diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdPrjServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdPrjServiceImpl.java index b62ed06..5be0df9 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdPrjServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdPrjServiceImpl.java @@ -436,7 +436,7 @@ public class EdPrjServiceImpl extends ServiceImpl List edFileInfos = this.baseMapper.selectList(Wrappers.lambdaQuery(EdFileInfo.class).select(EdFileInfo::getFilePath) .eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code) .eq(EdFileInfo::getPrjDir, true) - .eq(EdFileInfo::getDataStatus, EleDataStatusEnum.NOT_PUBLISHED.code)); + .eq(EdFileInfo::getDataStatus, EleDataStatusEnum.NOT_PUBLISHED.code).or().eq(EdFileInfo::getDataStatus, EleDataStatusEnum.DELETED.code)); Set unpublishFiles = new HashSet<>(); for (EdFileInfo edFileInfo : edFileInfos) { String filePath = edFileInfo.getFilePath(); diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/PermissionServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/PermissionServiceImpl.java index e912cc4..fe22891 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/PermissionServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/PermissionServiceImpl.java @@ -1,5 +1,6 @@ package com.electromagnetic.industry.software.manage.service.serviceimpl; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.electromagnetic.industry.software.common.enums.FilePermission; import com.electromagnetic.industry.software.common.util.UserThreadLocal; @@ -36,8 +37,8 @@ public class PermissionServiceImpl implements PermissionService { List roleIds = getRoles(userId); // 只有当 roleIds 不为空且不为 null 时,才添加 in 条件 - if (roleIds == null || roleIds.isEmpty()) { - return transToMap(new ArrayList<>()); + if (CollUtil.isEmpty(roleIds)) { + return new HashMap<>(); } LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); queryWrapper1.select(RolePermission::getPermissionCode)