李春阳 1 年之前
父節點
當前提交
a66865ff80

+ 20 - 15
simulation-resource-server/src/main/java/com/css/simulation/resource/server/app/impl/SimulationProjectServiceImpl.java

@@ -336,7 +336,8 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
                 String newProjectId = StringUtil.getRandomUUID();
                 oldProjectPO.setId(newProjectId);
                 String projectDetailsVOJson = JsonUtil.beanToJson(projectDetailsVO);
-                simulationManualProjectMapper.updateIdAndDetailsAndNowRunStateById(oldProjectId, newProjectId, projectDetailsVOJson, DictConstants.PROJECT_RUNNING);
+                String evaluationStatusJson = getEvaluationJson(oldProjectPO);
+                simulationManualProjectMapper.updateIdAndDetailsAndNowRunStateById(oldProjectId, newProjectId, projectDetailsVOJson, DictConstants.PROJECT_RUNNING, evaluationStatusJson);
                 projectRunToKafka(oldProjectPO);
             } else if (DictConstants.PROJECT_WAITING.equals(oldState)) { // 启动已保存的新项目
                 String projectDetailsVOJson = JsonUtil.beanToJson(projectDetailsVO);
@@ -350,6 +351,23 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
         return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
     }
 
+    private String getEvaluationJson(SimulationManualProjectPO simulationManualProjectPO){
+        JSONObject jsonObject = new JSONObject();
+        if (StringUtil.isNotEmpty(simulationManualProjectPO.getComplexityEvaluationRuleId())) {
+            jsonObject.put("complexityEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
+        }
+        if (StringUtil.isNotEmpty(simulationManualProjectPO.getRiskEvaluationRuleId())) {
+            jsonObject.put("riskEvaluationRuleStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
+        }
+        if (StringUtil.isNotEmpty(simulationManualProjectPO.getExposureRateEvaluationRuleId())) {
+            jsonObject.put("exposureRateEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
+        }
+        if (StringUtil.isNotEmpty(simulationManualProjectPO.getCoverageRateEvaluationRuleId())) {
+            jsonObject.put("coverageRateEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
+        }
+        return jsonObject.toString();
+    }
+
     @SneakyThrows
     private void projectRunToKafka(SimulationManualProjectPO po) {
         log.info("准备发送项目消息:" + po);
@@ -1773,20 +1791,6 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
         po.setRiskEvaluationRuleId(param.getRiskEvaluationRuleId());
         po.setExposureRateEvaluationRuleId(param.getExposureRateEvaluationRuleId());
         po.setCoverageRateEvaluationRuleId(param.getCoverageRateEvaluationRuleId());
-        JSONObject jsonObject = new JSONObject();
-        if (StringUtil.isNotEmpty(param.getComplexityEvaluationRuleId())) {
-            jsonObject.put("complexityEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
-        }
-        if (StringUtil.isNotEmpty(param.getRiskEvaluationRuleId())) {
-            jsonObject.put("riskEvaluationRuleStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
-        }
-        if (StringUtil.isNotEmpty(param.getExposureRateEvaluationRuleId())) {
-            jsonObject.put("exposureRateEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
-        }
-        if (StringUtil.isNotEmpty(param.getCoverageRateEvaluationRuleId())) {
-            jsonObject.put("coverageRateEvaluationStatus", DictConstants.SCENE_EVALUATION_STATUS_0);
-        }
-        po.setEvaluationJsonMsg(jsonObject.toString());
 
         if (ObjectUtil.isNotNull(param.getVehicleArrayS())) {
             po.setVehicleArray(StringUtils.join(Arrays.asList(param.getVehicleArrayS()), ','));
@@ -1864,6 +1868,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
         } else {
             po.setProjectNum(po1.getProjectNum() + 1);
         }
+        po.setEvaluationJsonMsg(getEvaluationJson(po));
         po.setProjectId(po.getProjectDate() + "-" + po.getProjectNum());
         simulationManualProjectMapper.add(po);
     }

+ 2 - 2
simulation-resource-server/src/main/java/com/css/simulation/resource/server/infra/db/mysql/mapper/SimulationManualProjectMapper.java

@@ -144,9 +144,9 @@ public interface SimulationManualProjectMapper {
     void updateDetailsAndNowRunStateById(@Param("id") String id, @Param("details") String details, @Param("nowRunState") String nowRunState);
 
     @Update("update simulation_manual_project\n" +
-            "set id = #{newId}, details = #{details},now_run_state = #{nowRunState}\n" +
+            "set id = #{newId}, evaluation_json_msg = #{evaluationJsonMsg} , details = #{details},now_run_state = #{nowRunState}\n" +
             "where id = #{oldId}")
-    void updateIdAndDetailsAndNowRunStateById(@Param("oldId") String oldId, @Param("newId") String newId, @Param("details") String details, @Param("nowRunState") String nowRunState);
+    void updateIdAndDetailsAndNowRunStateById(@Param("oldId") String oldId, @Param("newId") String newId, @Param("details") String details, @Param("nowRunState") String nowRunState, @Param("evaluationJsonMsg") String evaluationJsonMsg);
 
 
     @Select("select report from simulation_manual_project where id = #{id}")