1、合并查询接口支持查询编号

This commit is contained in:
2026-03-18 09:05:01 +08:00
parent 9c9ceb0a1e
commit c622a6af45
3 changed files with 66 additions and 13 deletions

View File

@@ -10,4 +10,8 @@ public class SpdmMergeQueryNodeReq {
@Schema(description = "查询类型")
private String type;
// 返回值类型1-name2-code
@Schema(description = "返回值类型")
private Integer resultType = 1;
}

View File

@@ -1288,7 +1288,8 @@ public class TaskServiceImpl implements ITaskService {
// 通用的标签设置方法
private void setTagField(TagReq tagReq, String tagValue, String tagName,
BiConsumer<TagReq, String> tagSetter,
BiConsumer<TagReq, String> tagNameSetter) {
BiConsumer<TagReq, String> tagNameSetter,
BiConsumer<TagReq, String> tagCodeSetter) {
if (tagValue != null) {
tagSetter.accept(tagReq, tagValue);
}
@@ -1300,18 +1301,19 @@ public class TaskServiceImpl implements ITaskService {
private void fillTaskTagReq(List<SpdmNewTaskVo> newTaskList) {
for (SpdmNewTaskVo spdmNewTaskVo : newTaskList) {
TagReq tagReq = new TagReq();
setTagField(tagReq, spdmNewTaskVo.getNewTag1(), spdmNewTaskVo.getTag1(), TagReq::setTag1, TagReq::setTag1Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag2(), spdmNewTaskVo.getTag2(), TagReq::setTag2, TagReq::setTag2Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag3(), spdmNewTaskVo.getTag3(), TagReq::setTag3, TagReq::setTag3Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag4(), spdmNewTaskVo.getTag4(), TagReq::setTag4, TagReq::setTag4Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag5(), spdmNewTaskVo.getTag5(), TagReq::setTag5, TagReq::setTag5Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag6(), spdmNewTaskVo.getTag6(), TagReq::setTag6, TagReq::setTag6Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag7(), spdmNewTaskVo.getTag7(), TagReq::setTag7, TagReq::setTag7Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag8(), spdmNewTaskVo.getTag8(), TagReq::setTag8, TagReq::setTag8Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag9(), spdmNewTaskVo.getTag9(), TagReq::setTag9, TagReq::setTag9Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag10(), spdmNewTaskVo.getTag10(), TagReq::setTag10, TagReq::setTag10Name);
setTagField(tagReq, spdmNewTaskVo.getNewTag1(), spdmNewTaskVo.getTag1(), TagReq::setTag1, TagReq::setTag1Name, TagReq::setTag1Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag2(), spdmNewTaskVo.getTag2(), TagReq::setTag2, TagReq::setTag2Name, TagReq::setTag2Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag3(), spdmNewTaskVo.getTag3(), TagReq::setTag3, TagReq::setTag3Name, TagReq::setTag3Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag4(), spdmNewTaskVo.getTag4(), TagReq::setTag4, TagReq::setTag4Name, TagReq::setTag4Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag5(), spdmNewTaskVo.getTag5(), TagReq::setTag5, TagReq::setTag5Name, TagReq::setTag5Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag6(), spdmNewTaskVo.getTag6(), TagReq::setTag6, TagReq::setTag6Name, TagReq::setTag6Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag7(), spdmNewTaskVo.getTag7(), TagReq::setTag7, TagReq::setTag7Name, TagReq::setTag7Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag8(), spdmNewTaskVo.getTag8(), TagReq::setTag8, TagReq::setTag8Name,TagReq::setTag8Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag9(), spdmNewTaskVo.getTag9(), TagReq::setTag9, TagReq::setTag9Name, TagReq::setTag9Code);
setTagField(tagReq, spdmNewTaskVo.getNewTag10(), spdmNewTaskVo.getTag10(), TagReq::setTag10, TagReq::setTag10Name, TagReq::setTag10Code);
tagReq.setTaskId(spdmNewTaskVo.getUuid());
tagReq.setTaskName(spdmNewTaskVo.getTaskName());
tagReq.setTaskCode(spdmNewTaskVo.getTaskCode());
spdmNewTaskVo.setTagReq(tagReq);
}
}
@@ -5000,6 +5002,7 @@ public class TaskServiceImpl implements ITaskService {
if (MapUtils.isEmpty(tagMap)) {
return SdmResponse.failed("未查询到节点标签的配置");
}
Integer resultType = req.getResultType();
List<NodeMergeQueryResp> mergeQueryRespList = new ArrayList<>();
// 如果是任务或算例就传task或run其他的传tag1到tag10
String type = req.getType();
@@ -5023,7 +5026,12 @@ public class TaskServiceImpl implements ITaskService {
}
if (MERGE_QUERY_TASK.equals(type)) {
// 查询任务
Map<String, List<SpdmNewTaskVo>> taskMap = taskVoList.stream().collect(Collectors.groupingBy(SpdmNewTaskVo::getTaskName));
Map<String, List<SpdmNewTaskVo>> taskMap;
if (resultType == 1) {
taskMap = taskVoList.stream().collect(Collectors.groupingBy(SpdmNewTaskVo::getTaskName));
}else {
taskMap = taskVoList.stream().collect(Collectors.groupingBy(SpdmNewTaskVo::getTaskCode));
}
for (Map.Entry<String, List<SpdmNewTaskVo>> taskEntry : taskMap.entrySet()) {
NodeMergeQueryResp taskMergeQueryResp = new NodeMergeQueryResp();
taskMergeQueryResp.setName(taskEntry.getKey());
@@ -5057,7 +5065,12 @@ public class TaskServiceImpl implements ITaskService {
if (CollectionUtils.isEmpty(nodeList)) {
return SdmResponse.success(Collections.emptyList());
}
Map<String, List<SimulationNode>> nodeMap = nodeList.stream().collect(Collectors.groupingBy(SimulationNode::getNodeName));
Map<String, List<SimulationNode>> nodeMap;
if (resultType == 1) {
nodeMap = nodeList.stream().filter(node -> StringUtils.isNotBlank(node.getNodeName())).collect(Collectors.groupingBy(SimulationNode::getNodeName));
}else {
nodeMap = nodeList.stream().filter(node -> StringUtils.isNotBlank(node.getNodeCode())).collect(Collectors.groupingBy(SimulationNode::getNodeCode));
}
for (Map.Entry<String, List<SimulationNode>> nodeEntry : nodeMap.entrySet()) {
NodeMergeQueryResp nodeMergeQueryResp = new NodeMergeQueryResp();
nodeMergeQueryResp.setName(nodeEntry.getKey());