工况库绑定

This commit is contained in:
2025-12-10 17:10:26 +08:00
parent 1d0fac1cc0
commit ddbcb9f4e1
4 changed files with 14 additions and 11 deletions

View File

@@ -16,7 +16,7 @@ public class TaskBaseInfo {
public String version; public String version;
public Long poolId; public Integer poolId;
public Long fileId; public Long fileId;

View File

@@ -29,7 +29,7 @@ public class FileSimulationMappingResp implements Serializable {
private Long fileId; private Long fileId;
private Long simulationPoolId; private Integer simulationPoolId;
private String simulationPoolVersion; private String simulationPoolVersion;

View File

@@ -7,7 +7,7 @@ import java.util.List;
@Data @Data
public class PoolInfo { public class PoolInfo {
private Long simulationPoolId; private Integer simulationPoolId;
private String simulationPoolName; private String simulationPoolName;
private String simulationPoolVersion; private String simulationPoolVersion;
private List<String> simulationPoolTaskIds; private List<String> simulationPoolTaskIds;

View File

@@ -2334,27 +2334,30 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
if(CollectionUtils.isEmpty(fileSimulationMappingByFileId)){ if(CollectionUtils.isEmpty(fileSimulationMappingByFileId)){
return; return;
} }
log.info("文件绑定知识库的查询结果 :{}",fileSimulationMappingByFileId);
fileSimulationMappingByFileId.forEach(fileSimulationMappingResp -> { fileSimulationMappingByFileId.forEach(fileSimulationMappingResp -> {
SdmResponse<Map<String, TaskBaseInfo>> taskPoolTaskMap = isSimuluationTaskPoolFeignClient.getTaskPoolTaskMap(fileSimulationMappingResp.getSimulationPoolId()); SdmResponse<Map<String, TaskBaseInfo>> taskPoolTaskMap = isSimuluationTaskPoolFeignClient.getTaskPoolTaskMap(fileSimulationMappingResp.getSimulationPoolId());
if(taskPoolTaskMap.isSuccess() && !Objects.isNull(taskPoolTaskMap.getData())) { if(taskPoolTaskMap.isSuccess() && !Objects.isNull(taskPoolTaskMap.getData())) {
Map<String, TaskBaseInfo> data = taskPoolTaskMap.getData(); Map<String, TaskBaseInfo> data = taskPoolTaskMap.getData();
TaskBaseInfo taskBaseInfo = data.getOrDefault(fileSimulationMappingResp.getSimulationPoolTaskId(), null); TaskBaseInfo taskBaseInfo = data.getOrDefault(fileSimulationMappingResp.getSimulationPoolTaskId(), null);
taskBaseInfo.setPoolId(fileSimulationMappingResp.getSimulationPoolId()); if(ObjectUtils.isNotEmpty(taskBaseInfo)) {
taskBaseInfo.setFileId(fileSimulationMappingResp.getFileId()); taskBaseInfo.setPoolId(fileSimulationMappingResp.getSimulationPoolId());
taskBaseInfo.setFileId(fileSimulationMappingResp.getFileId());
}
result.add(taskBaseInfo); result.add(taskBaseInfo);
} }
}); });
// 按 fileId 和 poolId 双重分组 // 按 fileId 和 poolId 双重分组
Map<Long, Map<Long, List<TaskBaseInfo>>> fileTaskPoolMap = result.stream() Map<Long, Map<Integer, List<TaskBaseInfo>>> fileTaskPoolMap = result.stream()
.collect(Collectors.groupingBy( .collect(Collectors.groupingBy(
TaskBaseInfo::getFileId, TaskBaseInfo::getFileId,
Collectors.groupingBy(TaskBaseInfo::getPoolId) Collectors.groupingBy(TaskBaseInfo::getPoolId)
)); ));
// 按 fileId 和 poolId 分组收集 simulationPoolTaskId // 按 fileId 和 poolId 分组收集 simulationPoolTaskId
Map<Long, Map<Long, List<String>>> filePoolTaskIdsMap = fileSimulationMappingByFileId.stream() Map<Long, Map<Integer, List<String>>> filePoolTaskIdsMap = fileSimulationMappingByFileId.stream()
.collect(Collectors.groupingBy( .collect(Collectors.groupingBy(
FileSimulationMappingResp::getFileId, FileSimulationMappingResp::getFileId,
Collectors.groupingBy( Collectors.groupingBy(
@@ -2367,12 +2370,12 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
for (FileMetadataInfo fileMetadataInfo : list) { for (FileMetadataInfo fileMetadataInfo : list) {
Long fileId = fileMetadataInfo.getId(); Long fileId = fileMetadataInfo.getId();
if (fileTaskPoolMap.containsKey(fileId)) { if (fileTaskPoolMap.containsKey(fileId)) {
Map<Long, List<TaskBaseInfo>> poolMap = fileTaskPoolMap.get(fileId); Map<Integer, List<TaskBaseInfo>> poolMap = fileTaskPoolMap.get(fileId);
Map<Long, List<String>> poolTaskIdsMap = filePoolTaskIdsMap.getOrDefault(fileId, new HashMap<>()); Map<Integer, List<String>> poolTaskIdsMap = filePoolTaskIdsMap.getOrDefault(fileId, new HashMap<>());
List<PoolInfo> poolInfos = new ArrayList<>(); List<PoolInfo> poolInfos = new ArrayList<>();
for (Map.Entry<Long, List<TaskBaseInfo>> poolEntry : poolMap.entrySet()) { for (Map.Entry<Integer, List<TaskBaseInfo>> poolEntry : poolMap.entrySet()) {
Long poolId = poolEntry.getKey(); Integer poolId = poolEntry.getKey();
List<TaskBaseInfo> taskList = poolEntry.getValue(); List<TaskBaseInfo> taskList = poolEntry.getValue();
List<String> taskIds = poolTaskIdsMap.getOrDefault(poolId, new ArrayList<>()); List<String> taskIds = poolTaskIdsMap.getOrDefault(poolId, new ArrayList<>());