From 30e4f87fa78a57a3626c56ef3c7b7b3d35650b4d Mon Sep 17 00:00:00 2001 From: zhuxinru Date: Mon, 2 Feb 2026 17:47:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E9=9C=80=E6=B1=82=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=9D=83=E9=99=90=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DemandServiceImpl.java | 50 ++++++++----------- 1 file changed, 20 insertions(+), 30 deletions(-) diff --git a/project/src/main/java/com/sdm/project/service/impl/DemandServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/DemandServiceImpl.java index 16a84f87..163c31ee 100644 --- a/project/src/main/java/com/sdm/project/service/impl/DemandServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/DemandServiceImpl.java @@ -689,20 +689,10 @@ public class DemandServiceImpl extends BaseService implements IDemandService { taskMemberNode.setType(MemberTypeEnum.PRINCIPAL.getCode()); projectNodeMemberList.add(taskMemberNode); // 更新任务仿真负责人对任务文件夹的权限 - BatchUpdatePermissionReq.FilePermissionItem item = new BatchUpdatePermissionReq.FilePermissionItem(); - item.setUuid(task.getUuid()); - Map userPermissions = new HashMap<>(); - userPermissions.put(Long.valueOf(userId), FilePermissionEnum.ALL.getValue()); - item.setUserPermissions(userPermissions); - filePermissions.add(item); + filePermissions.add(buildFilePermissionItem(task.getUuid(), Long.valueOf(userId), FilePermissionEnum.ALL)); // 更新任务仿真负责人对关联的需求文件夹权限 - BatchUpdatePermissionReq.FilePermissionItem item1 = new BatchUpdatePermissionReq.FilePermissionItem(); - item1.setUuid(demandId); - Map userPermissions1 = new HashMap<>(); - userPermissions1.put(Long.valueOf(userId), FilePermissionEnum.BASE.getValue()); - item1.setUserPermissions(userPermissions1); - filePermissions.add(item1); + filePermissions.add(buildFilePermissionItem(demandId, Long.valueOf(userId), FilePermissionEnum.BASE)); } } if (StringUtils.isNotBlank(eUserIdStr)) { @@ -717,29 +707,20 @@ public class DemandServiceImpl extends BaseService implements IDemandService { // 发送消息通知 sendMessage(MessageTemplateEnum.TASK_ISSUE, task.getNodeName(), userId, task.getUuid()); // 更新任务仿真执行人对任务文件夹权限 - BatchUpdatePermissionReq.FilePermissionItem item = new BatchUpdatePermissionReq.FilePermissionItem(); - item.setUuid(task.getUuid()); - Map userPermissions = new HashMap<>(); - userPermissions.put(Long.valueOf(userId), FilePermissionEnum.ALL_EXCLUDE_DELETE.getValue()); - item.setUserPermissions(userPermissions); - filePermissions.add(item); + filePermissions.add(buildFilePermissionItem(task.getUuid(), Long.valueOf(userId), FilePermissionEnum.ALL_EXCLUDE_DELETE)); // 更新任务仿真执行人对关联的需求文件夹权限 - BatchUpdatePermissionReq.FilePermissionItem item1 = new BatchUpdatePermissionReq.FilePermissionItem(); - item1.setUuid(demandId); - Map userPermissions1 = new HashMap<>(); - userPermissions1.put(Long.valueOf(userId), FilePermissionEnum.BASE.getValue()); - item1.setUserPermissions(userPermissions1); - filePermissions.add(item1); + filePermissions.add(buildFilePermissionItem(demandId, Long.valueOf(userId), FilePermissionEnum.BASE)); } } // 更新需求创建人对任务文件夹的权限 - BatchUpdatePermissionReq.FilePermissionItem demandItem = new BatchUpdatePermissionReq.FilePermissionItem(); - demandItem.setUuid(task.getUuid()); - Map demandUserPermissions = new HashMap<>(); - demandUserPermissions.put(demandCreator, FilePermissionEnum.BASE.getValue()); - demandItem.setUserPermissions(demandUserPermissions); - filePermissions.add(demandItem); + filePermissions.add(buildFilePermissionItem(task.getUuid(), demandCreator, FilePermissionEnum.BASE)); + + // 更新任务创建人对任务文件夹的权限 + filePermissions.add(buildFilePermissionItem(task.getUuid(), jobNumber, FilePermissionEnum.READ)); + + // 更新任务创建人对需求文件夹的权限 + filePermissions.add(buildFilePermissionItem(demandId, jobNumber, FilePermissionEnum.READ)); List extraList = task.getExtras(); if (CollectionUtils.isNotEmpty(extraList)) { @@ -893,6 +874,15 @@ public class DemandServiceImpl extends BaseService implements IDemandService { return response; } + private BatchUpdatePermissionReq.FilePermissionItem buildFilePermissionItem(String uuid, Long userId, FilePermissionEnum filePermissionEnum) { + BatchUpdatePermissionReq.FilePermissionItem item = new BatchUpdatePermissionReq.FilePermissionItem(); + item.setUuid(uuid); + Map userPermissions = new HashMap<>(); + userPermissions.put(userId, filePermissionEnum.getValue()); + item.setUserPermissions(userPermissions); + return item; + } + private void sendMessage(MessageTemplateEnum templateEnum, String taskName, String userId, String uuid) { SendMsgReq req = new SendMsgReq(); req.setTitle(templateEnum.getTitle());