diff --git a/project/src/main/java/com/sdm/project/model/vo/SpdmDemandVo.java b/project/src/main/java/com/sdm/project/model/vo/SpdmDemandVo.java index 50f6709d..8db36db7 100644 --- a/project/src/main/java/com/sdm/project/model/vo/SpdmDemandVo.java +++ b/project/src/main/java/com/sdm/project/model/vo/SpdmDemandVo.java @@ -99,11 +99,21 @@ public class SpdmDemandVo extends BaseEntity { */ private String projectName; + /** + * 项目编号 + */ + private String projectCode; + /** * 阶段id */ private String phaseId; + /** + * 阶段编号 + */ + private String phaseCode; + /** * 阶段名称 */ @@ -119,6 +129,11 @@ public class SpdmDemandVo extends BaseEntity { */ private String machineName; + /** + * 机台编号 + */ + private String machineCode; + /** * 工位id */ @@ -129,6 +144,11 @@ public class SpdmDemandVo extends BaseEntity { */ private String workspaceName; + /** + * 工位编号 + */ + private String workspaceCode; + private String demandType; private String simType; 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 6d4499b0..f2c68a0f 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 @@ -659,15 +659,19 @@ public class DemandServiceImpl extends BaseService implements IDemandService { spdmDemandVo.setProgress(CollectionUtils.isEmpty(eachTaskList) ? 0 : eachTaskList.stream().mapToInt(SpdmTaskVo::getProgress).sum() / eachTaskList.size()); if (StringUtils.isNotBlank(spdmDemandVo.getProjectId())) { spdmDemandVo.setProjectName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getProjectId())) ? nodeMap.get(spdmDemandVo.getProjectId()).get(0).getNodeName() : ""); + spdmDemandVo.setProjectCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getProjectId())) ? nodeMap.get(spdmDemandVo.getProjectId()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getPhaseId())) { spdmDemandVo.setPhaseName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getPhaseId())) ? nodeMap.get(spdmDemandVo.getPhaseId()).get(0).getNodeName() : ""); + spdmDemandVo.setPhaseCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getPhaseId())) ? nodeMap.get(spdmDemandVo.getPhaseCode()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getMachineId())) { spdmDemandVo.setMachineName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getMachineId())) ? nodeMap.get(spdmDemandVo.getMachineId()).get(0).getNodeName() : ""); + spdmDemandVo.setMachineCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getMachineId())) ? nodeMap.get(spdmDemandVo.getMachineId()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getWorkspaceId())) { spdmDemandVo.setWorkspaceName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getWorkspaceId())) ? nodeMap.get(spdmDemandVo.getWorkspaceId()).get(0).getNodeName() : ""); + spdmDemandVo.setWorkspaceCode((CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getWorkspaceId())) ? nodeMap.get(spdmDemandVo.getWorkspaceId()).get(0).getNodeCode() : "")); } eachDemandMemberList = demandMemberMap.get(spdmDemandVo.getUuid()); if (CollectionUtils.isEmpty(eachDemandMemberList)) { @@ -1916,15 +1920,19 @@ public class DemandServiceImpl extends BaseService implements IDemandService { spdmDemandVo.setProgress(CollectionUtils.isEmpty(eachTaskList) ? 0 : eachTaskList.stream().mapToInt(SpdmTaskVo::getProgress).sum() / eachTaskList.size()); if (StringUtils.isNotBlank(spdmDemandVo.getProjectId())) { spdmDemandVo.setProjectName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getProjectId())) ? nodeMap.get(spdmDemandVo.getProjectId()).get(0).getNodeName() : ""); + spdmDemandVo.setProjectCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getProjectId())) ? nodeMap.get(spdmDemandVo.getProjectId()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getPhaseId())) { spdmDemandVo.setPhaseName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getPhaseId())) ? nodeMap.get(spdmDemandVo.getPhaseId()).get(0).getNodeName() : ""); + spdmDemandVo.setPhaseCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getPhaseId())) ? nodeMap.get(spdmDemandVo.getPhaseId()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getMachineId())) { spdmDemandVo.setMachineName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getMachineId())) ? nodeMap.get(spdmDemandVo.getMachineId()).get(0).getNodeName() : ""); + spdmDemandVo.setMachineCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getMachineId())) ? nodeMap.get(spdmDemandVo.getMachineId()).get(0).getNodeCode() : ""); } if (StringUtils.isNotBlank(spdmDemandVo.getWorkspaceId())) { spdmDemandVo.setWorkspaceName(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getWorkspaceId())) ? nodeMap.get(spdmDemandVo.getWorkspaceId()).get(0).getNodeName() : ""); + spdmDemandVo.setWorkspaceCode(CollectionUtils.isNotEmpty(nodeMap.get(spdmDemandVo.getWorkspaceId())) ? nodeMap.get(spdmDemandVo.getWorkspaceId()).get(0).getNodeCode() : ""); } eachDemandMemberList = demandMemberMap.get(spdmDemandVo.getUuid()); if (CollectionUtils.isEmpty(eachDemandMemberList)) { diff --git a/project/src/main/java/com/sdm/project/service/impl/LyricInternalServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/LyricInternalServiceImpl.java index fb0fea79..5994f506 100644 --- a/project/src/main/java/com/sdm/project/service/impl/LyricInternalServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/LyricInternalServiceImpl.java @@ -717,14 +717,20 @@ public class LyricInternalServiceImpl implements ILyricInternalService { } } + + // 批量更新权限 if (CollectionUtils.isNotEmpty(updatePermissionList)) { List filePermissions = new ArrayList<>(); - for (UpdatePermissionReq updatePermissionReq : updatePermissionList) { + Map> permissionMap = updatePermissionList.stream().collect(Collectors.groupingBy(UpdatePermissionReq::getUuid)); + for (Map.Entry> permissionEntry : permissionMap.entrySet()) { BatchUpdatePermissionReq.FilePermissionItem item = new BatchUpdatePermissionReq.FilePermissionItem(); - item.setUuid(updatePermissionReq.getUuid()); Map userPermissions = new HashMap<>(); - userPermissions.put(updatePermissionReq.getUserId(), FilePermissionEnum.ALL.getValue()); + String uuid = permissionEntry.getKey(); + item.setUuid(uuid); + for (UpdatePermissionReq updatePermissionReq : permissionEntry.getValue()) { + userPermissions.put(updatePermissionReq.getUserId(), updatePermissionReq.getPermission()); + } item.setUserPermissions(userPermissions); filePermissions.add(item); } diff --git a/project/src/main/java/com/sdm/project/service/impl/NodeServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/NodeServiceImpl.java index 780ab861..2ae3207c 100644 --- a/project/src/main/java/com/sdm/project/service/impl/NodeServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/NodeServiceImpl.java @@ -241,9 +241,9 @@ public class NodeServiceImpl extends ServiceImpl managerPermissions = new HashMap<>(); // 2026-02-02 项目创建人对项目文件夹只有预览权限,项目经理(仿真专项代表)对项目文件夹有所有权限 managerPermissions.put(Long.valueOf(manager), FilePermissionEnum.ALL.getValue()); @@ -3492,16 +3492,14 @@ public class NodeServiceImpl extends ServiceImpl filePermissions = new ArrayList<>(); - for (UpdatePermissionReq updatePermissionReq : permissionReqList) { + Map> permissionMap = permissionReqList.stream().collect(Collectors.groupingBy(UpdatePermissionReq::getUuid)); + for (Map.Entry> permissionEntry : permissionMap.entrySet()) { BatchUpdatePermissionReq.FilePermissionItem item = new BatchUpdatePermissionReq.FilePermissionItem(); - item.setUuid(updatePermissionReq.getUuid()); Map userPermissions = new HashMap<>(); - userPermissions.put(updatePermissionReq.getUserId(), updatePermissionReq.getPermission()); - // 项目经理对项目下的需求有预览、下载权限 - if (CollectionUtils.isNotEmpty(memberList)) { - for (String manager : memberList) { - userPermissions.put(Long.valueOf(manager), FilePermissionEnum.BASE.getValue()); - } + String uuid = permissionEntry.getKey(); + item.setUuid(uuid); + for (UpdatePermissionReq updatePermissionReq : permissionEntry.getValue()) { + userPermissions.put(updatePermissionReq.getUserId(), updatePermissionReq.getPermission()); } item.setUserPermissions(userPermissions); filePermissions.add(item); diff --git a/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java index 5690a5a4..c4bc1dd0 100644 --- a/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java @@ -371,7 +371,7 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { BatchUpdatePermissionReq batchReq = new BatchUpdatePermissionReq(); batchReq.setFilePermissions(filePermissions); - log.info("仿真策划新增任务时,批量更新权限,任务数量:{}", filePermissions.size()); + log.info("仿真策划新增任务时,批量更新权限,任务数量:{},参数为:{}", filePermissions.size(),batchReq); SdmResponse response = dataClientFeignClient.batchUpdatePermission(batchReq); log.info("仿真策划新增任务时,批量更新权限结果:{}", response); diff --git a/project/src/main/resources/mapper/SimulationNodeMapper.xml b/project/src/main/resources/mapper/SimulationNodeMapper.xml index 796b775f..6a8d2139 100644 --- a/project/src/main/resources/mapper/SimulationNodeMapper.xml +++ b/project/src/main/resources/mapper/SimulationNodeMapper.xml @@ -283,59 +283,56 @@