Merge remote-tracking branch 'origin/main'

This commit is contained in:
2025-12-31 17:01:07 +08:00
6 changed files with 42 additions and 5 deletions

View File

@@ -189,7 +189,7 @@ public class NodeAllBase extends BaseEntity {
public String members; public String members;
public String extras; // public String extras;
@JsonProperty(value = "tag1") @JsonProperty(value = "tag1")
private String tag1; private String tag1;

View File

@@ -2,6 +2,7 @@ package com.sdm.project.model.po;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.sdm.common.entity.pojo.BaseEntity; import com.sdm.common.entity.pojo.BaseEntity;
import com.sdm.project.model.entity.SimulationPerformanceExtra;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;
@@ -64,7 +65,7 @@ public class PerformanceNodePo extends NodeAllBase {
/** /**
* 拓展属性集合 * 拓展属性集合
*/ */
public String extras; public List<SimulationPerformanceExtra> extras;
// public void addNodeExtra(PerformanceNodeExtraPo nodeExtra) // public void addNodeExtra(PerformanceNodeExtraPo nodeExtra)
// { // {

View File

@@ -5,6 +5,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import com.sdm.common.entity.pojo.BaseEntity; import com.sdm.common.entity.pojo.BaseEntity;
import com.sdm.common.entity.resp.system.CIDUserResp; import com.sdm.common.entity.resp.system.CIDUserResp;
import com.sdm.project.model.bo.ProjectNode; import com.sdm.project.model.bo.ProjectNode;
import com.sdm.project.model.vo.SpdmNodeExtraVo;
import lombok.Data; import lombok.Data;
import java.util.ArrayList; import java.util.ArrayList;
@@ -92,7 +93,7 @@ public class ProjectNodePo extends NodeAllBase {
/** /**
* 拓展属性集合 * 拓展属性集合
*/ */
private String extras; private List<SpdmNodeExtraVo> extras;
/** /**
* 项目详情图片 * 项目详情图片

View File

@@ -109,7 +109,7 @@ public class TaskNodePo extends NodeAllBase {
/** /**
* 拓展属性集合 * 拓展属性集合
*/ */
private String extras; private List<TaskNodeExtraPo> extras;
public List<NodeAllBase> children = new ArrayList<>(); public List<NodeAllBase> children = new ArrayList<>();

View File

@@ -12,6 +12,7 @@ import com.sdm.common.entity.enums.FilePermissionEnum;
import com.sdm.common.entity.enums.NodeTypeEnum; import com.sdm.common.entity.enums.NodeTypeEnum;
import com.sdm.common.entity.enums.ValueTypeEnum; import com.sdm.common.entity.enums.ValueTypeEnum;
import com.sdm.common.entity.req.data.*; import com.sdm.common.entity.req.data.*;
import com.sdm.common.entity.req.project.SimulationPerformance;
import com.sdm.common.entity.req.system.UserQueryReq; import com.sdm.common.entity.req.system.UserQueryReq;
import com.sdm.common.entity.req.task.TaskExportExcelParam; import com.sdm.common.entity.req.task.TaskExportExcelParam;
import com.sdm.common.entity.req.task.TaskTreeExportExcelFormat; import com.sdm.common.entity.req.task.TaskTreeExportExcelFormat;
@@ -27,13 +28,18 @@ import com.sdm.project.common.MemberTypeEnum;
import com.sdm.project.common.VersionEnum; import com.sdm.project.common.VersionEnum;
import com.sdm.project.dao.SimulationNodeMapper; import com.sdm.project.dao.SimulationNodeMapper;
import com.sdm.project.dao.SimulationProjectMapper; import com.sdm.project.dao.SimulationProjectMapper;
import com.sdm.project.dao.SimulationTaskMapper;
import com.sdm.project.model.bo.*; import com.sdm.project.model.bo.*;
import com.sdm.project.model.entity.SimulationPerformanceExtra;
import com.sdm.project.model.entity.SimulationTaskMember; import com.sdm.project.model.entity.SimulationTaskMember;
import com.sdm.project.model.po.*; import com.sdm.project.model.po.*;
import com.sdm.project.model.req.*; import com.sdm.project.model.req.*;
import com.sdm.project.model.vo.SpdmExportNewTaskVo; import com.sdm.project.model.vo.SpdmExportNewTaskVo;
import com.sdm.project.model.vo.SpdmNewTaskVo; import com.sdm.project.model.vo.SpdmNewTaskVo;
import com.sdm.project.model.vo.SpdmNodeExtraVo;
import com.sdm.project.service.IProjectService; import com.sdm.project.service.IProjectService;
import com.sdm.project.service.ISimulationPerformanceExtraService;
import com.sdm.project.service.ISimulationPerformanceService;
import com.sdm.project.service.ISimulationTaskMemberService; import com.sdm.project.service.ISimulationTaskMemberService;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -64,12 +70,18 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
@Autowired @Autowired
private SimulationNodeMapper nodeMapper; private SimulationNodeMapper nodeMapper;
@Autowired
private SimulationTaskMapper taskMapper;
@Autowired @Autowired
private DataClientFeignClientImpl dataClientFeignClient; private DataClientFeignClientImpl dataClientFeignClient;
@Autowired @Autowired
private ISimulationTaskMemberService simulationTaskMemberService; private ISimulationTaskMemberService simulationTaskMemberService;
@Autowired
private ISimulationPerformanceExtraService performanceExtraService;
@Autowired @Autowired
SysUserFeignClientImpl sysUserFeignClient; SysUserFeignClientImpl sysUserFeignClient;
@@ -533,6 +545,14 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
List<PerformanceNodePo> eachPerformanceNodeList; List<PerformanceNodePo> eachPerformanceNodeList;
List<PerformanceNodePo> currentTaskAssociatedPerformanceList = taskTreePerformanceList.stream().filter(performance -> ObjectUtils.isNotEmpty(taskMap.get(performance.getTaskId())) && performance.getRunId() == null).toList(); List<PerformanceNodePo> currentTaskAssociatedPerformanceList = taskTreePerformanceList.stream().filter(performance -> ObjectUtils.isNotEmpty(taskMap.get(performance.getTaskId())) && performance.getRunId() == null).toList();
if (CollectionUtils.isNotEmpty(currentTaskAssociatedPerformanceList)) { if (CollectionUtils.isNotEmpty(currentTaskAssociatedPerformanceList)) {
// 设置拓展属性
List<String> performanceIdList = currentTaskAssociatedPerformanceList.stream().map(PerformanceNodePo::getUuid).toList();
List<SimulationPerformanceExtra> performanceExtraList = performanceExtraService.lambdaQuery().in(SimulationPerformanceExtra::getPerformanceId, performanceIdList).list();
Map<String, List<SimulationPerformanceExtra>> performanceExtraMap = new HashMap<>();
if (CollectionUtils.isNotEmpty(performanceExtraList)) {
performanceExtraMap = performanceExtraList.stream().collect(Collectors.groupingBy(SimulationPerformanceExtra::getPerformanceId));
}
Map<String, List<PerformanceNodePo>> performanceMap = currentTaskAssociatedPerformanceList.stream().collect(Collectors.groupingBy(PerformanceNodePo::getTaskId)); Map<String, List<PerformanceNodePo>> performanceMap = currentTaskAssociatedPerformanceList.stream().collect(Collectors.groupingBy(PerformanceNodePo::getTaskId));
for (TaskNodePo taskNodePo : currentNodeAssociatedTaskList) { for (TaskNodePo taskNodePo : currentNodeAssociatedTaskList) {
eachPerformanceNodeList = performanceMap.get(taskNodePo.getUuid()); eachPerformanceNodeList = performanceMap.get(taskNodePo.getUuid());
@@ -541,6 +561,7 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
if (StringUtils.isBlank(performanceNodePo.getEnglishName())) { if (StringUtils.isBlank(performanceNodePo.getEnglishName())) {
performanceNodePo.setEnglishName(""); performanceNodePo.setEnglishName("");
} }
performanceNodePo.setExtras(performanceExtraMap.get(performanceNodePo.getUuid()));
} }
taskNodePo.getChildren().addAll(eachPerformanceNodeList); taskNodePo.getChildren().addAll(eachPerformanceNodeList);
} }
@@ -661,11 +682,20 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
} }
} }
if (CollectionUtils.isNotEmpty(currentNodeAssociatedTaskList)) { if (CollectionUtils.isNotEmpty(currentNodeAssociatedTaskList)) {
List<String> taskIdList = currentNodeAssociatedTaskList.stream().map(TaskNodePo::getUuid).toList();
List<TaskNodeExtraPo> taskExtraList = taskMapper.getTaskExtraList(taskIdList);
Map<String, List<TaskNodeExtraPo>> taskExtraMap = new HashMap<>();
if (CollectionUtils.isNotEmpty(taskExtraList)) {
taskExtraMap = taskExtraList.stream().collect(Collectors.groupingBy(TaskNodeExtraPo::getTaskId));
}
Map<String, List<TaskNodeExtraPo>> finalTaskExtraMap = taskExtraMap;
currentNodeAssociatedTaskList.forEach(task -> { currentNodeAssociatedTaskList.forEach(task -> {
task.setNodeName(task.getTaskName()); task.setNodeName(task.getTaskName());
task.setNodeCode(task.getTaskCode()); task.setNodeCode(task.getTaskCode());
task.setSection(task.getSectionName()); task.setSection(task.getSectionName());
task.setGroup(task.getGroupName()); task.setGroup(task.getGroupName());
// 设置拓展属性
task.setExtras(finalTaskExtraMap.get(task.getUuid()));
}); });
for (TaskNodePo nodePo : currentNodeAssociatedTaskList) { for (TaskNodePo nodePo : currentNodeAssociatedTaskList) {
if (StringUtils.isBlank(nodePo.getEnglishName())) { if (StringUtils.isBlank(nodePo.getEnglishName())) {
@@ -675,6 +705,8 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
children.addAll(currentNodeAssociatedTaskList); children.addAll(currentNodeAssociatedTaskList);
} }
projectNodePo.setChildren(children); projectNodePo.setChildren(children);
// 设置拓展属性
projectNodePo.setExtras(nodeMapper.getNodeExtraListByNodeIdList(Collections.singletonList(projectNodePo.getUuid())));
} }
private TaskNodeTag getRealTagId(ProjectNodePo projectNodePo) { private TaskNodeTag getRealTagId(ProjectNodePo projectNodePo) {

View File

@@ -2354,18 +2354,21 @@ public class TaskServiceImpl implements ITaskService {
} }
spdmExportNewTaskVo.setStandard(String.join(",", fileNameList)); spdmExportNewTaskVo.setStandard(String.join(",", fileNameList));
} }
log.info("flowTemplate为{}",spdmExportNewTaskVo.getFlowTemplate());
if (StringUtils.isNotBlank(spdmExportNewTaskVo.getFlowTemplate())) { if (StringUtils.isNotBlank(spdmExportNewTaskVo.getFlowTemplate())) {
List<String> flowTemplateNameList = new ArrayList<>(); List<String> flowTemplateNameList = new ArrayList<>();
String[] flowTemplateArr = spdmExportNewTaskVo.getFlowTemplate().split(";"); String[] flowTemplateArr = spdmExportNewTaskVo.getFlowTemplate().split(";");
for (String flowTemplate : flowTemplateArr) { for (String flowTemplate : flowTemplateArr) {
log.info("查询flowTemplate为{}",flowTemplate);
SdmResponse<FlowTemplateResp> flowTemplateResp = flowFeignClient.queryFlowTemplateInfoByTemplateCode(flowTemplate); SdmResponse<FlowTemplateResp> flowTemplateResp = flowFeignClient.queryFlowTemplateInfoByTemplateCode(flowTemplate);
log.info("flowTemplateResp为{}",flowTemplateResp);
if (flowTemplateResp.getData() == null) { if (flowTemplateResp.getData() == null) {
continue; continue;
} }
flowTemplateNameList.add(flowTemplateResp.getData().getTemplateName()); flowTemplateNameList.add(flowTemplateResp.getData().getTemplateName());
} }
if (CollectionUtils.isNotEmpty(flowTemplateNameList)) { if (CollectionUtils.isNotEmpty(flowTemplateNameList)) {
spdmExportNewTaskVo.setFlowTemplate(flowTemplateNameList.stream().collect(Collectors.joining(","))); spdmExportNewTaskVo.setFlowTemplate(String.join(",", flowTemplateNameList));
} }
} }
} }