LingxinMeng 2 år sedan
förälder
incheckning
c79e8ff4b0

+ 2 - 0
api-common/src/main/java/api/common/pojo/common/CommonPO.java

@@ -3,12 +3,14 @@ package api.common.pojo.common;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import lombok.experimental.SuperBuilder;
 
 import java.sql.Timestamp;
 
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
+@SuperBuilder
 public class CommonPO {
 
     /**

+ 2 - 0
api-common/src/main/java/api/common/pojo/constants/DictConstants.java

@@ -2,6 +2,8 @@ package api.common.pojo.constants;
 
 public class DictConstants {
 
+    public static final String SCHEDULER_USER_ID = "simulation-resource-scheduler";
+
     public static final String SENSOR_CAMERA = "camera"; // 摄像头
     public static final String SENSOR_OGT = "ogt"; // 完美传感器
     public static final String SENSOR_LIDAR = "lidar"; // 激光雷达表

+ 6 - 3
api-common/src/main/java/api/common/pojo/po/scheduler/SchedulerProjectPO.java

@@ -1,15 +1,18 @@
 package api.common.pojo.po.scheduler;
 
+import api.common.pojo.common.CommonPO;
 import lombok.AllArgsConstructor;
-import lombok.Builder;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
+import lombok.experimental.SuperBuilder;
 
+@EqualsAndHashCode(callSuper = true)
 @Data
-@Builder
+@SuperBuilder
 @NoArgsConstructor
 @AllArgsConstructor
-public class SchedulerProjectPO {
+public class SchedulerProjectPO extends CommonPO {
     private String id;
     private String projectId;
     private String scenePackageId;

+ 5 - 13
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/mapper/AutoSubProjectMapper.java

@@ -1,12 +1,12 @@
 package com.css.simulation.resource.scheduler.mapper;
 
 
+import api.common.pojo.po.scheduler.SchedulerProjectPO;
 import com.css.simulation.resource.scheduler.entity.ProjectEntity;
 import org.apache.ibatis.annotations.*;
 import org.apache.ibatis.type.JdbcType;
 
 import java.sql.Timestamp;
-import java.util.List;
 
 @Mapper
 public interface AutoSubProjectMapper {
@@ -31,14 +31,6 @@ public interface AutoSubProjectMapper {
             "where sas.id = #{projectId}")
     ProjectEntity selectById(@Param("projectId") String projectId);
 
-    @ResultMap("project")
-    @Select("select sas.id, sap.scene, sas.create_user_id, sap.parallelism, '2' project_type\n" +
-            "from simulation_automatic_subproject sas\n" +
-            "         left join simulation_automatic_project sap on sas.parent_id = sap.id\n" +
-            "where sas.is_deleted = '0'\n" +
-            "  and sas.now_run_state = #{nowRunState}")
-    List<ProjectEntity> selectByNowRunState(@Param("nowRunState") String nowRunState);
-
     @Select("select create_user_id\n" +
             "from simulation_automatic_subproject\n" +
             "where id = #{subProjectId}")
@@ -51,9 +43,9 @@ public interface AutoSubProjectMapper {
             "where id = #{id}")
     void updateProjectState(@Param("id") String id, @Param("state") String state, @Param("finishTime") Timestamp finishTime);
 
-    @Select("select is_choice_gpu\n" +
-            "from simulation_automatic_subproject\n" +
-            "where id = #{projectId}")
-    String selectIsChoiceGpuById(@Param("projectId") String projectId);
 
+    @Update("update simulation_automatic_subproject\n" +
+            "set error_message = #{errorMessage}\n" +
+            "where project_id = #{id}\n")
+    void saveErrorMessage(SchedulerProjectPO schedulerProjectPO);
 }

+ 7 - 8
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/service/ProjectService.java

@@ -286,14 +286,13 @@ public class ProjectService {
     }
 
     public void stopProject(String projectType, String projectId, String errorMessage) {
-        Optional.ofNullable(errorMessage)
-                .ifPresent(em -> {
-                    if (DictConstants.PROJECT_TYPE_MANUAL.equals(projectType)) {
-                        manualProjectMapper.saveErrorMessage(SchedulerProjectPO.builder().id(projectId).errorMessage(em).build());
-                    } else if (DictConstants.PROJECT_TYPE_AUTO_SUB.equals(projectType)) {
-                        autoSubProjectMapper.updateProjectState(projectId, DictConstants.PROJECT_TERMINATING, TimeUtil.getNowForMysql());
-                    }
-                });
+        Optional.ofNullable(errorMessage).ifPresent(em -> {
+            if (DictConstants.PROJECT_TYPE_MANUAL.equals(projectType)) {
+                manualProjectMapper.saveErrorMessage(SchedulerProjectPO.builder().id(projectId).errorMessage(em).modifyUserId(DictConstants.SCHEDULER_USER_ID).modifyTime(TimeUtil.getNowForMysql()).build());
+            } else if (DictConstants.PROJECT_TYPE_AUTO_SUB.equals(projectType)) {
+                autoSubProjectMapper.saveErrorMessage(SchedulerProjectPO.builder().id(projectId).errorMessage(em).modifyUserId(DictConstants.SCHEDULER_USER_ID).modifyTime(TimeUtil.getNowForMysql()).build());
+            }
+        });
         stopProject(projectType, projectId);
     }
 

+ 0 - 6
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/util/TaskUtil.java

@@ -84,12 +84,6 @@ public class TaskUtil {
     @Resource(name = "myKafkaAdmin")
     private Admin admin;
 
-    public void saveErrorMessage(String projectType,String projectId,String errorMessage){
-        if(DictConstants.PROJECT_TYPE_MANUAL.equals(projectType)){
-            manualProjectMapper.saveErrorMessage()
-        }
-    };
-
     public void batchInsertTask(List<TaskEntity> taskEntityList) {
         try (SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false)) {
             TaskMapper taskMapper1 = sqlSession.getMapper(TaskMapper.class);