root 2 vuotta sitten
vanhempi
commit
b7ba6164b8

+ 10 - 19
api-common/src/main/java/api/common/pojo/po/system/SceneImportPO.java

@@ -7,24 +7,15 @@ import lombok.EqualsAndHashCode;
 @EqualsAndHashCode(callSuper = true)
 @Data
 public class SceneImportPO extends CommonPO {
-    
-    //任务id
-    private String id;
-    //任务名称
-    private String name;
-    //场景包路径
-    private String dataDirectory;
-    //场景类型
-    private String sceneType;
-    //任务执行状态
-    private String status;
-    //成功数量
-    private int successNum;
-    //失败数量
-    private int falseNum;
-    //错误信息
-    private String errorMessage;
-    //总用时长
-    private String totalTime;
+
+    private String id;  //任务id
+    private String name;    //任务名称
+    private String dataDirectory;   //场景包路径
+    private String sceneType;   //场景类型
+    private String status;  //任务执行状态
+    private int successNum; //成功数量
+    private int falseNum;   //失败数量
+    private String errorMessage;    //错误信息
+    private String totalTime;   //总用时长
     private String sceneNames;
 }

+ 12 - 9
simulation-resource-server/src/main/java/com/css/simulation/resource/system/ctrl/SceneImportCtrl.java

@@ -9,32 +9,36 @@ import com.css.simulation.resource.common.oauth.AuthorizationHolder;
 import com.css.simulation.resource.feign.SceneService;
 import com.css.simulation.resource.system.service.SceneImportService;
 import com.github.pagehelper.PageInfo;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
-@Controller
+@RestController
 @RequestMapping("/sceneImport")
 @PreAuthorize("@AuthorityCheck.admin()")
 public class SceneImportCtrl {
 
-    @Autowired
-    SceneImportService sceneImportService;
+    @Resource
+    private SceneImportService sceneImportService;
 
     @Resource
-    SceneService sceneService;
+    private SceneService sceneService;
+
+    @RequestMapping("/deleteTask")
+    public ResponseBodyVO<String> deleteTask(@RequestBody SceneImportPO sceneImportPO) {
+        String taskId = sceneImportPO.getId();
+        sceneImportService.deleteTask(taskId);
+        return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
+    }
 
     /**
      * 保存上传任务
      */
     @RequestMapping("/saveTask")
-    @ResponseBody
     public ResponseBodyVO<SceneImportPO> saveTask(@RequestBody SceneImportPO po, HttpServletRequest request) {
         if (ObjectUtil.isNull(po)) {
             return new ResponseBodyVO<>(false, 500, "参数错误!", null);
@@ -62,7 +66,6 @@ public class SceneImportCtrl {
 
     //查询列表
     @RequestMapping("/getSceneImporPagetList")
-    @ResponseBody
     public ResponseBodyVO<PageInfo<SceneImportPO>> getSceneImporPagetList(@RequestBody SceneImportPageParam param) {
         return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, sceneImportService.getSceneImporPagetList(param));
     }

+ 13 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/system/mapper/SceneImportMapper.java

@@ -2,7 +2,10 @@ package com.css.simulation.resource.system.mapper;
 
 import api.common.pojo.param.system.SceneImportPageParam;
 import api.common.pojo.po.system.SceneImportPO;
+import org.apache.ibatis.annotations.Delete;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -22,4 +25,14 @@ public interface SceneImportMapper {
     void updateStatus(SceneImportPO po);
 
     void updateInfo(SceneImportPO po);
+
+    @Delete("")
+    void deleteSceneByTaskId(String taskId);
+
+    @Select("select scene_type\n" +
+            "from scene_import_task\n" +
+            "where id = #{taskId}")
+    String selectSceneTypeByTaskId(@Param("taskId") String taskId);
+
+    void deleteNaturalByTaskId(String taskId);
 }

+ 17 - 2
simulation-resource-server/src/main/java/com/css/simulation/resource/system/service/SceneImportService.java

@@ -26,10 +26,8 @@ public class SceneImportService {
 
     @Resource
     DictService dictService;
-
     @Resource
     LogService logService;
-
     @Resource
     SceneImportMapper sceneImportMapper;
 
@@ -90,4 +88,21 @@ public class SceneImportService {
         return new PageInfo<>(list);
     }
 
+    public void deleteTask(String taskId) {
+        //1 根据任务 id 查询场景类型
+        String sceneType = sceneImportMapper.selectSceneTypeByTaskId(taskId);
+        //2 根据任务id删除相关联的所有同名任务
+        if (DictConstants.SCENE_NATURAL.equals(sceneType)) {
+            sceneImportMapper.deleteNaturalByTaskId(taskId);
+        } else if (DictConstants.SCENE_STANDARD.equals(sceneType)) {
+
+        } else if (DictConstants.SCENE_ACCIDENT.equals(sceneType)) {
+
+        } else if (DictConstants.SCENE_GENERAL.equals(sceneType)) {
+
+        } else {
+            throw new RuntimeException("场景类型错误:" + sceneType);
+        }
+        //2 删除任务
+    }
 }