From d549cc6b7375d8f6e78c47f34f131fbf0939a0c9 Mon Sep 17 00:00:00 2001 From: s2042968 Date: Wed, 5 Mar 2025 15:42:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=94=B6=E8=97=8F=E9=A1=B5=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=8E=A5=E5=8F=A3=E8=AE=BE=E7=BD=AE=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../software/manage/pojo/other/FileInfoVO.java | 4 ++++ .../software/manage/service/PermissionService.java | 8 ++++++++ .../service/serviceimpl/EdFileInfoServiceImpl.java | 6 ++++++ .../service/serviceimpl/PermissionServiceImpl.java | 11 ++++++++++- 4 files changed, 28 insertions(+), 1 deletion(-) diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/pojo/other/FileInfoVO.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/pojo/other/FileInfoVO.java index 9ec59fc..bb7098c 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/pojo/other/FileInfoVO.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/pojo/other/FileInfoVO.java @@ -6,6 +6,7 @@ import lombok.Data; import java.util.Date; import java.util.List; +import java.util.Map; @Data public class FileInfoVO { @@ -53,4 +54,7 @@ public class FileInfoVO { // 是否是个人数据,1是,0否 private Integer isPersonal; + + // 文件权限 + private Map permissions; } diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/PermissionService.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/PermissionService.java index 5884e78..b2a6bcf 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/PermissionService.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/PermissionService.java @@ -1,10 +1,18 @@ package com.electromagnetic.industry.software.manage.service; +import com.electromagnetic.industry.software.common.enums.FilePermission; + import java.util.List; import java.util.Map; public interface PermissionService { + /** + * 用户对个人数据拥有所有权限 + * @return + */ + Map getPersonalPermission(); + /** * 查询当前用户在当前目录的功能权限 * diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java index f572f33..c95a694 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java @@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.electromagnetic.industry.software.common.enums.*; +import com.electromagnetic.industry.software.common.enums.FilePermission; import com.electromagnetic.industry.software.common.exception.BizException; import com.electromagnetic.industry.software.common.exception.PermissionDeniedException; import com.electromagnetic.industry.software.common.resp.ElectromagneticResult; @@ -1420,6 +1421,11 @@ public class EdFileInfoServiceImpl extends ServiceImpl permissions = (e.getIsPersonal() == 1) + ? permissionService.getPersonalPermission() + : permissionService.getUserPermission(UserThreadLocal.getUserId(), e.getId(), false); + e.setPermissions(permissions); }); UserThreadLocal.setSuccessInfo("", "", "查询了收藏列表"); return fileInfoVOIPage; 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 f7afd72..b17a0fa 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 @@ -30,6 +30,15 @@ public class PermissionServiceImpl implements PermissionService { @Resource EdFileInfoMapper edFileInfoMapper; + /** + * 用户对个人数据拥有所有权限 + * @return + */ + @Override + public Map getPersonalPermission() { + return transToMap(FilePermission.getAllCodes(), true); + } + /** * 查询当前用户在当前目录的功能权限 * @@ -122,7 +131,7 @@ public class PermissionServiceImpl implements PermissionService { @Override public Map transToMap(List permissionCodes, Boolean includeView) { Map result = new HashMap<>(); - List allCodes = new ArrayList<>(); + List allCodes; if (includeView.equals(Boolean.TRUE)) { allCodes = FilePermission.getAllCodes(); } else {