This commit is contained in:
2026-03-12 17:14:07 +08:00
7 changed files with 40 additions and 0 deletions

View File

@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.pagehelper.util.StringUtil;
import com.google.common.collect.Sets;
import com.sdm.common.common.SdmResponse;
import com.sdm.common.common.ThreadLocalContext;
@@ -463,6 +464,10 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
dirInfo.setTag9(tagReq.getTag9());
dirInfo.setTag10(tagReq.getTag10());
dirInfo.setTaskId(tagReq.getTaskId());
// 兜底 如果文件夹ownType是task 但是tag没传taskId 设置下taskId为relatedResourceUuid
if (StringUtil.isEmpty(tagReq.getTaskId()) && NodeTypeEnum.TASK.getValue().equals(uuIdOwnType)) {
dirInfo.setTaskId(uuid);
}
dirInfo.setRunId(tagReq.getRunId());
}
return dirInfo;
@@ -1040,6 +1045,9 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
fileUserPermissionService.getMergedPermission(fileMetadataInfo.getId(), ThreadLocalContext.getUserId())
);
// 填充文件ta1-tag10的信息
hierarchyHelper.setTagReqFromFileMetadata(fileMetadataInfo,fileMetadataInfoResp);
return SdmResponse.success(fileMetadataInfoResp);
}

View File

@@ -1701,6 +1701,7 @@ public class DemandServiceImpl extends BaseService implements IDemandService {
createDirReq.setDirName(dirName);
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(taskNode,tagReq);
tagReq.setTaskId(taskNode.getUuid());
createDirReq.setTagReq(tagReq);
log.info("下发任务调用创建文件夹的参数为:{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);

View File

@@ -1758,6 +1758,7 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
createDirReq.setDirType(DirTypeEnum.PROJECT_NODE_DIR.getValue());
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(taskNode,tagReq);
tagReq.setTaskId(uuid);
createDirReq.setTagReq(tagReq);
log.info("创建任务时,调用创建文件夹的参数为:{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);

View File

@@ -2573,6 +2573,9 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
createDirReq.setDirType(DirTypeEnum.PROJECT_NODE_DIR.getValue());
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(taskNode,tagReq);
if (NodeTypeEnum.TASK.getValue().equals(uuidOwnType)) {
tagReq.setTaskId(uuid);
}
createDirReq.setTagReq(tagReq);
log.info("创建项目阶段时,调用创建文件夹的参数为:{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);

View File

@@ -754,6 +754,7 @@ public class SimulationRunServiceImpl extends ServiceImpl<SimulationRunMapper, S
runPerformance.setRunId(simulationRun.getUuid());
runPerformance.setUuid(RandomUtil.generateString(32));
runPerformance.setCompleteStatus(PerformanceStatusEnum.UNANALYZED.getCode());
runPerformance.setResultValue(null);
runPerformance.setCreator(userId);
runPerformance.setCreateTime(null);
runPerformanceList.add(runPerformance);

View File

@@ -2765,6 +2765,9 @@ public class TaskServiceImpl implements ITaskService {
createDirReq.setDirType(DirTypeEnum.PROJECT_NODE_DIR.getValue());
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(spdmProjectNodeEditReq,tagReq);
if (NodeTypeEnum.TASK.getValue().equals(uuidOwnType)) {
tagReq.setTaskId(uuid);
}
createDirReq.setTagReq(tagReq);
log.info("同步CID任务调用创建文件夹的参数为{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);
@@ -2781,6 +2784,9 @@ public class TaskServiceImpl implements ITaskService {
createDirReq.setDirType(DirTypeEnum.PROJECT_NODE_DIR.getValue());
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(taskNode,tagReq);
if (NodeTypeEnum.TASK.getValue().equals(uuidOwnType)) {
tagReq.setTaskId(uuid);
}
createDirReq.setTagReq(tagReq);
log.info("同步CID任务调用创建文件夹的参数为{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);
@@ -2797,6 +2803,9 @@ public class TaskServiceImpl implements ITaskService {
createDirReq.setDirType(DirTypeEnum.PROJECT_NODE_DIR.getValue());
TagReq tagReq = new TagReq();
BeanUtils.copyProperties(task,tagReq);
if (NodeTypeEnum.TASK.getValue().equals(uuidOwnType)) {
tagReq.setTaskId(uuid);
}
createDirReq.setTagReq(tagReq);
log.info("批量修改任务时调用创建文件夹的参数为:{}", createDirReq);
SdmResponse response = dataClientFeignClient.createDir(createDirReq);

View File

@@ -12,6 +12,7 @@ import com.sdm.common.common.SdmResponse;
import com.sdm.common.common.ThreadLocalContext;
import com.sdm.common.entity.pojo.task.FlowBindTaskPoolItem;
import com.sdm.common.entity.pojo.task.TaskBaseInfo;
import com.sdm.common.entity.req.data.DeleteFileSimulationMappingReq;
import com.sdm.common.entity.req.data.GetFileSimulationMappingReq;
import com.sdm.common.entity.req.data.SaveFileSimulationMappingReq;
import com.sdm.common.entity.req.system.LaunchApproveReq;
@@ -316,13 +317,29 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
}
}
}
List<String> standardDeleteTask = new ArrayList<>(); //需要删除标准库的task uuid
for(TaskPoolItem taskPoolItem:updateTasks) //删除更新分析项的关联关系
{
mapper.deleteTaskFlowRelateByTaskUuid(taskPoolItem.uuid, poolName, currentVersion);
standardDeleteTask.add(taskPoolItem.uuid); //更新的task需要将绑定的标准库删除
}
for(String taskUuid:deleteTaskUuids) //删除已删除分析项的关联关系
{
mapper.deleteTaskFlowRelateByTaskUuid(taskUuid,poolName,currentVersion);
standardDeleteTask.add(taskUuid);//删除的task需要将绑定的标准库删除
}
//删除task绑定的标准库
if(!standardDeleteTask.isEmpty()) {
List<DeleteFileSimulationMappingReq> deleteFileSimulationMappingReqs = new ArrayList<>();
for(String taskUuid:standardDeleteTask)
{
DeleteFileSimulationMappingReq req = new DeleteFileSimulationMappingReq();
req.setSimulationPoolTaskId(taskUuid);
req.setSimulationPoolId(currentBrief.id);
req.setSimulationPoolVersion(currentVersion);
deleteFileSimulationMappingReqs.add(req);
}
simulationMappingFeignClient.deleteFileSimulationMapping(deleteFileSimulationMappingReqs);
}
//将添加和更新task合并一起后一起添加关联关系需要检查关系是否重复绑定
addTasks.addAll(updateTasks);