root 2 gadi atpakaļ
vecāks
revīzija
c9a075efde

+ 27 - 24
simulation-resource-server/src/main/java/com/css/simulation/resource/project/impl/SimulationProjectServiceImpl.java

@@ -268,14 +268,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
     @Override
     public ResponseBodyVO<String> updateProjectNowRunState(SimulationManualProjectParam param) {
 
-        //00000 查询项目详情信息并保存
-        String projectId = param.getId();
-        ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
-                .id(projectId)
-                .projectType(DictConstants.PROJECT_TYPE_MANUAL).build()).getInfo();
-        String infoJson = JsonUtil.beanToJson(info);
-        log.info("updateProjectNowRunState() 项目 " + projectId + " 的详情信息为:" + infoJson);
-        simulationProjectMapper.updateDetailsById(projectId, infoJson);
+
 
         //1 根据 id 查询项目信息
         if (isEmpty(param.getId()) || isEmpty(param.getNowRunState())) {
@@ -288,6 +281,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
 
         // 已经完成的项目再次运行
         if ("30".equals(po.getNowRunState()) && "20".equals(param.getNowRunState())) {
+
             po.createPo(AuthUtil.getCurrentUserId());
             //生成id
             createProjectId(po);
@@ -300,10 +294,26 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
             if (add <= 0) {
                 return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "生成新工作失败");
             }
+            //00000 查询项目详情信息并保存
+            String projectId = po.getId();
+            ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
+                    .id(projectId)
+                    .projectType(DictConstants.PROJECT_TYPE_MANUAL).build()).getInfo();
+            String infoJson = JsonUtil.beanToJson(info);
+            log.info("updateProjectNowRunState() 项目 " + projectId + " 的详情信息为:" + infoJson);
+            simulationProjectMapper.updateDetailsById(projectId, infoJson);
             //Kafka推送消息
             projectRunToKafka(po);
 
         } else {    //创建新的项目
+            // 查询项目详情信息并保存
+            String projectId = param.getId();
+            ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
+                    .id(projectId)
+                    .projectType(DictConstants.PROJECT_TYPE_MANUAL).build()).getInfo();
+            String infoJson = JsonUtil.beanToJson(info);
+            log.info("updateProjectNowRunState() 项目 " + projectId + " 的详情信息为:" + infoJson);
+            simulationProjectMapper.updateDetailsById(projectId, infoJson);
             if ("20".equals(param.getNowRunState())) {
                 //设置开始时间
                 param.setStartTime(new Date());
@@ -426,7 +436,6 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
             s = autoSubProjectMapper.selectDetailsById(param.getId());
         }
 
-
         return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, JsonUtil.jsonToBean(s, ProjectDetailsVo.class));
     }
 //    @Override
@@ -650,13 +659,11 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
                 return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
             }
             poParam = po;
-
         } else if ("2".equals(param.getProjectType())) {
             SimulationManualProjectVo po = simulationAutomaticSubProjectMapper.selectProjectInfo(param);
             if (po == null) {
                 return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
             }
-
             BeanUtils.copyProperties(po, poParam);
 
         }
@@ -671,8 +678,6 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
 
         //算法配置
         AlgorithmPO algorithmBaseInfoVo = getAlgorithmInfo(poParam);
-
-
         //获取测试得分列表
         List<AlgorithmScoreVo> firstTargetScore = getFirstTargetScore(param.getId());
         projectDetailsVo.setAlgorithmScoreList(firstTargetScore);
@@ -4035,13 +4040,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
     @SneakyThrows
     @Override
     public ResponseBodyVO<String> createAutomaticSubProject(SimulationManualProjectParam param) {
-        String projectId = param.getId();
-        ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
-                .id(projectId)
-                .projectType(DictConstants.PROJECT_TYPE_AUTO_SUB).build()).getInfo();
-        String infoJson = JsonUtil.beanToJson(info);
-        log.info("updateProjectNowRunState() 项目 " + projectId + " 的详情信息为:" + infoJson);
-        autoSubProjectMapper.updateDetailsById(projectId, infoJson);
+
 
 
         if (StringUtil.isEmpty(param.getId())) {
@@ -4057,7 +4056,6 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
         subprojectPo.setProjectName(projectName);
         subprojectPo.setStartTime(new Date());
         subprojectPo.setNowRunState(ProjectRunStateEnum.EXECUTION.getCode());//执行中
-
         SimulationAutomaticSubProjectPo sPo = simulationAutomaticSubProjectMapper.selectLastProjectId(param.getId());
         if (StringUtil.isEmpty(sPo)) {
             subprojectPo.setProjectNum(1);
@@ -4067,7 +4065,6 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
             subprojectPo.setProjectNum(projectNum);
             subprojectPo.setProjectId(po.getProjectId() + "-" + projectNum);
         }
-
         //修改自动运行次数
         Long automaticRunTimes = po.getAutomaticRunTimes();
         if (automaticRunTimes == null) {
@@ -4076,9 +4073,15 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
             po.setAutomaticRunTimes(automaticRunTimes + 1);
         }
         simulationAutomaticProjectMapper.updateAutomaticRunTimes(po);
-
-
         int i = simulationAutomaticSubProjectMapper.addAutomaticSubProject(subprojectPo);
+        // 查询详情信息并保存
+        String projectId = subprojectPo.getId();
+        ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
+                .id(projectId)
+                .projectType(DictConstants.PROJECT_TYPE_AUTO_SUB).build()).getInfo();
+        String infoJson = JsonUtil.beanToJson(info);
+        log.info("updateProjectNowRunState() 项目 " + projectId + " 的详情信息为:" + infoJson);
+        autoSubProjectMapper.updateDetailsById(projectId, infoJson);
         if (i <= 0) {
             return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "执行失败");
         }