root před 2 roky
rodič
revize
05ceae940a

+ 1 - 1
simulation-resource-server/src/main/java/com/css/simulation/resource/scene/ctrl/SceneGeneralTemplateController.java

@@ -109,7 +109,7 @@ public class SceneGeneralTemplateController {
     @PostMapping("/saveSceneGeneralTemplate")
     @ResponseBody
     public ResponseBodyVO<String> saveSceneGeneralTemplate(@RequestParam("file") MultipartFile multipartFile) {
-        File file = null;
+        File file;
         String originalFilename = multipartFile.getOriginalFilename();
         if (originalFilename.indexOf(".xls") == -1 && originalFilename.indexOf(".xlsx") == -1) {
             return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE, "文件格式错误,请检查模板.");

+ 108 - 113
simulation-resource-server/src/main/java/com/css/simulation/resource/scene/service/SceneGeneralTemplateService.java

@@ -6,6 +6,7 @@ import api.common.pojo.constants.DictConstants;
 import api.common.pojo.constants.LogConstants;
 import api.common.pojo.param.scene.SceneDeleteParam;
 import api.common.pojo.param.scene.SceneGeneralTemplateParam;
+import api.common.pojo.po.scene.SceneGeneralTemplatePO;
 import api.common.pojo.po.scene.ScenePackagePO;
 import api.common.pojo.po.scene.SystemScenePackageSublistPO;
 import api.common.pojo.po.system.SceneImportPO;
@@ -18,7 +19,6 @@ import api.common.util.TimeUtil;
 import com.css.simulation.resource.common.utils.AuthUtil;
 import com.css.simulation.resource.log.service.LogService;
 import com.css.simulation.resource.scene.mapper.SceneGeneralTemplateMapper;
-import api.common.pojo.po.scene.SceneGeneralTemplatePO;
 import com.css.simulation.resource.scene.mapper.ScenePackageMapper;
 import com.css.simulation.resource.scene.mapper.ScenePackageSublistMapper;
 import com.css.simulation.resource.scene.mapper.SystemScenePackageSublistMapper;
@@ -28,7 +28,6 @@ import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.ss.usermodel.*;
 import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -50,18 +49,19 @@ public class SceneGeneralTemplateService {
     ScenePackageSublistMapper scenePackageSublistMapper;
     @Resource
     ScenePackageMapper scenePackageMapper;
-    @Autowired
+    @Resource
     DictService dictService;
-    @Autowired
+    @Resource
     LogService logService;
+
     /**
      * 泛化模板导入:
      */
     public void saveSceneGeneralTemplate(File excelFile, String version) {
         try {
-            FileInputStream is = new FileInputStream(excelFile); //文件流
-            Workbook workbook = WorkbookFactory.create(is); //这种方式 Excel 2003/2007/2010 都是可以处理的
-            int sheetCount = workbook.getNumberOfSheets();  //Sheet的数量
+            FileInputStream is = new FileInputStream(excelFile);    //文件流
+            Workbook workbook = WorkbookFactory.create(is);         //这种方式 Excel 2003/2007/2010 都是可以处理的
+            int sheetCount = workbook.getNumberOfSheets();          //Sheet的数量
             List<SceneGeneralTemplatePO> list = new ArrayList<>();
             List<String> fileNameAll = new ArrayList<>();
             //遍历每个Sheet
@@ -73,9 +73,8 @@ public class SceneGeneralTemplateService {
             String fileName = map.get(sheetName);
             if (ObjectUtil.isNotNull(fileName)) {*/
                 int rowCount = sheet.getPhysicalNumberOfRows(); //获取总行数
-                //效验sheet页是否符合标准
+                // 效验sheet页是否符合标准
                 Cell ce00 = sheet.getRow(0).getCell(0);
-                //ce00.setCellType(CellType.STRING);
                 String c00Value = ce00.getStringCellValue();
                 if (c00Value != null && c00Value.equals("场景编号")) {
                     //遍历每一行
@@ -92,7 +91,7 @@ public class SceneGeneralTemplateService {
                             if (r > 0 && c == 3) {
                                 Date aaa = cell.getDateCellValue();
                                 cellValue = TimeUtil.getToStringDate(aaa, 4);
-                            } else if(cell!=null){
+                            } else if (cell != null) {
                                 //在读取单元格内容前,设置所有单元格中内容都是字符串类型
                                 cell.setCellType(CellType.STRING);
                                 //按照字符串类型读取单元格内数据
@@ -111,14 +110,12 @@ public class SceneGeneralTemplateService {
                                 Method getOrSet = po.getClass().getDeclaredMethod("set" + name, parameterTypes);
                                 getOrSet.invoke(po, cellValue);
 
-                                if("BSD".equals(sheetName) &&"BSD_3-3".equals(cellValue)){
+                                if ("BSD".equals(sheetName) && "BSD_3-3".equals(cellValue)) {
                                     System.out.println(
                                             "111"
                                     );
-
                                 }
-                                System.out.println(name+"---测试--"+sheetName+"---"+cellValue);
-
+                                System.out.println(name + "---测试--" + sheetName + "---" + cellValue);
                             }
                         }
                         System.out.println("--------999-----------");
@@ -138,7 +135,7 @@ public class SceneGeneralTemplateService {
                 }
                 //}
             }
-            System.out.println("--------888-----------");
+            System.out.println("--------888---------");
             if (ObjectUtil.isNotNull(list)) {
                 SceneGeneralTemplatePO po = list.get(0);
                 po.setFileNameAll(fileNameAll);
@@ -146,7 +143,7 @@ public class SceneGeneralTemplateService {
                 mapper.saveSceneGeneralTemplateAll(list);
 
             }
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
         }
 
@@ -155,11 +152,11 @@ public class SceneGeneralTemplateService {
     /**
      * 泛化模板导入:
      */
-    public SceneImportPO saveSceneGeneralTemplateNew(File excelFile, String version,SceneImportPO sceneImportPO) {
+    public SceneImportPO saveSceneGeneralTemplateNew(File excelFile, String version, SceneImportPO sceneImportPO) {
         try {
-            FileInputStream is = new FileInputStream(excelFile); //文件流
-            Workbook workbook = WorkbookFactory.create(is); //这种方式 Excel 2003/2007/2010 都是可以处理的
-            int sheetCount = workbook.getNumberOfSheets();  //Sheet的数量
+            FileInputStream is = new FileInputStream(excelFile);    //文件流
+            Workbook workbook = WorkbookFactory.create(is);         //这种方式 Excel 2003/2007/2010 都是可以处理的
+            int sheetCount = workbook.getNumberOfSheets();          //Sheet的数量
             List<SceneGeneralTemplatePO> list = new ArrayList<>();
             List<String> fileNameAll = new ArrayList<>();
             //遍历每个Sheet
@@ -187,10 +184,10 @@ public class SceneGeneralTemplateService {
                             int a = c + 1;
                             Cell cell = row.getCell(c);
                             String cellValue = null;
-                            if (r > 0 && c == 3) {
+                            if (c == 3) {
                                 Date aaa = cell.getDateCellValue();
                                 cellValue = TimeUtil.getToStringDate(aaa, 4);
-                            } else  if(cell!=null){
+                            } else if (cell != null) {
                                 //在读取单元格内容前,设置所有单元格中内容都是字符串类型
                                 cell.setCellType(CellType.STRING);
                                 //按照字符串类型读取单元格内数据
@@ -198,32 +195,28 @@ public class SceneGeneralTemplateService {
                             }
                             /*在这里可以对每个单元格中的值进行二次操作转化*/
                             //    System.out.print(cellValue + "    ");
-                            if (r > 0) {
-                                //获取属性的名字
-                                String name = field[a].getName();
-                                //将属性名的第一位字母大写
-                                name = name.substring(0, 1).toUpperCase() + name.substring(1);
-                                //调用setter方法设属性值
-                                Class[] parameterTypes = new Class[1];
-                                parameterTypes[0] = field[a].getType();
-                                Method getOrSet = po.getClass().getDeclaredMethod("set" + name, parameterTypes);
-                                getOrSet.invoke(po, cellValue);
-                            }
+                            //获取属性的名字
+                            String name = field[a].getName();
+                            //将属性名的第一位字母大写
+                            name = name.substring(0, 1).toUpperCase() + name.substring(1);
+                            //调用setter方法设属性值
+                            Class<?>[] parameterTypes = new Class[1];
+                            parameterTypes[0] = field[a].getType();
+                            Method getOrSet = po.getClass().getDeclaredMethod("set" + name, parameterTypes);
+                            getOrSet.invoke(po, cellValue);
                         }
                         System.out.println();
-                        if (r > 0) {
-                            po.setCreateTime(TimeUtil.getNowForMysql());
-                            po.setCreateUserId(AuthUtil.getCurrentUserId());
-                            po.setModifyUserId(AuthUtil.getCurrentUserId());
-                            po.setModifyTime(TimeUtil.getNowForMysql());
-                            po.setIsDeleted("0");
-                            po.setShare("0");
-                            po.setId(StringUtil.getRandomUUID());
-                            po.setFileName(sheetName);
-                            po.setVersion(version);
-                            fileNameAll.add(sheetName);
-                            list.add(po);
-                        }
+                        po.setCreateTime(TimeUtil.getNowForMysql());
+                        po.setCreateUserId(AuthUtil.getCurrentUserId());
+                        po.setModifyUserId(AuthUtil.getCurrentUserId());
+                        po.setModifyTime(TimeUtil.getNowForMysql());
+                        po.setIsDeleted("0");
+                        po.setShare("0");
+                        po.setId(StringUtil.getRandomUUID());
+                        po.setFileName(sheetName);
+                        po.setVersion(version);
+                        fileNameAll.add(sheetName);
+                        list.add(po);
                     }
                 }
                 //}
@@ -240,63 +233,65 @@ public class SceneGeneralTemplateService {
             }
             sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_2);
             return sceneImportPO;
-        }catch (Exception e){
+        } catch (Exception e) {
             sceneImportPO.setErrorMessage("该文件解析失败,请检查");
             sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_2);
-            return  sceneImportPO;
+            return sceneImportPO;
         }
     }
 
 
     public List<SceneGeneralTemplatePO> querySceneGeneralTemplateList(SceneGeneralTemplateParam po) {
-        List<SceneGeneralTemplatePO> list=new ArrayList<>();
+        List<SceneGeneralTemplatePO> list = new ArrayList<>();
         //添加权限
         String roleCode = AuthUtil.getCurrentUserRoleCode();
-        log.info("泛华------" +roleCode);
+        log.info("泛华------" + roleCode);
         String userId = AuthUtil.getCurrentUserId();
-        if(DictConstants.ROLE_CODE_ADMIN.equals(roleCode) || DictConstants.ROLE_CODE_SYSADMIN.equals(roleCode)){ //管理员账户
-             list=mapper.querySceneGeneralTemplateList(po);
-            log.info("泛华----list--" +list.size()+"----------"+po);
-        }else if(DictConstants.ROLE_CODE_SUBUESR.equals(roleCode)){
+        if (DictConstants.ROLE_CODE_ADMIN.equals(roleCode) || DictConstants.ROLE_CODE_SYSADMIN.equals(roleCode)) { //管理员账户
+            list = mapper.querySceneGeneralTemplateList(po);
+            log.info("泛华----list--" + list.size() + "----------" + po);
+        } else if (DictConstants.ROLE_CODE_SUBUESR.equals(roleCode)) {
             //查询父账户
             userId = AuthUtil.getCreateUserId();
             po.setUserId(userId);
-            if(po.getShare().equals("0")){
-                list=mapper.querySceneGeneralTemplateList(po);
-            }else {
+            if (po.getShare().equals("0")) {
+                list = mapper.querySceneGeneralTemplateList(po);
+            } else {
                 list = mapper.querySceneGeneralTemplateListByQx(po);
             }
-        }else if(DictConstants.ROLE_CODE_UESR.equals(roleCode)){
+        } else if (DictConstants.ROLE_CODE_UESR.equals(roleCode)) {
             //查询普通账户
             po.setUserId(userId);
-            if(po.getShare().equals("0")){
-                list=mapper.querySceneGeneralTemplateList(po);
-            }else {
+            if (po.getShare().equals("0")) {
+                list = mapper.querySceneGeneralTemplateList(po);
+            } else {
                 list = mapper.querySceneGeneralTemplateListByQx(po);
-            }        }
-        Map<String,String>  scenarioRoadTypeMap= dictService.getDictMapByType("scenarioRoadType");
-        Map<String,String>  scenarioWeatherMap= dictService.getDictMapByType("scenarioWeather");
+            }
+        }
+        Map<String, String> scenarioRoadTypeMap = dictService.getDictMapByType("scenarioRoadType");
+        Map<String, String> scenarioWeatherMap = dictService.getDictMapByType("scenarioWeather");
         for (SceneGeneralTemplatePO vo : list) {
             vo.setScenarioRoadType(scenarioRoadTypeMap.get(vo.getScenarioRoadType()));
             vo.setScenarioWeather(scenarioWeatherMap.get(vo.getScenarioWeather()));
         }
-        return   list;
+        return list;
     }
+
     @SneakyThrows
-    public SceneGeneralTemplateVO querySceneGeneralTemplateById(String id){
-        SceneGeneralTemplatePO po=mapper.querySceneGeneralTemplateById(id);
-       String generalizationType =JsonUtil.stringToJson(po.getGeneralizationType());
-       po.setGeneralizationType(generalizationType);
-        SceneGeneralTemplateVO vo=new SceneGeneralTemplateVO();
-       //转换为vo
+    public SceneGeneralTemplateVO querySceneGeneralTemplateById(String id) {
+        SceneGeneralTemplatePO po = mapper.querySceneGeneralTemplateById(id);
+        String generalizationType = JsonUtil.stringToJson(po.getGeneralizationType());
+        po.setGeneralizationType(generalizationType);
+        SceneGeneralTemplateVO vo = new SceneGeneralTemplateVO();
+        //转换为vo
         BeanUtils.copyProperties(po, vo);
-        List<SceneGeneralTemplateMbVO>  listMb=new ArrayList<>();
-        if(po.getObsStartX().indexOf(";")!=-1){
-            listMb= spliceVo(po);
-        }else{
-            SceneGeneralTemplateMbVO  mbVO=new SceneGeneralTemplateMbVO();
+        List<SceneGeneralTemplateMbVO> listMb = new ArrayList<>();
+        if (po.getObsStartX().contains(";")) {
+            listMb = spliceVo(po);
+        } else {
+            SceneGeneralTemplateMbVO mbVO = new SceneGeneralTemplateMbVO();
             BeanUtils.copyProperties(po, mbVO);
-            if(ObjectUtil.isNotNull(mbVO.getObsStartX())||ObjectUtil.isNotNull(mbVO.getObsStartY())||ObjectUtil.isNotNull(mbVO.getObsLateralAcceleration())||ObjectUtil.isNotNull(mbVO.getObsStartVelocity())){
+            if (ObjectUtil.isNotNull(mbVO.getObsStartX()) || ObjectUtil.isNotNull(mbVO.getObsStartY()) || ObjectUtil.isNotNull(mbVO.getObsLateralAcceleration()) || ObjectUtil.isNotNull(mbVO.getObsStartVelocity())) {
                 mbVO.setGeneralizationType(po.getGeneralizationType());
                 listMb.add(mbVO);
             }
@@ -306,25 +301,25 @@ public class SceneGeneralTemplateService {
         return vo;
     }
 
-    public   List<SceneGeneralTemplateMbVO> spliceVo(SceneGeneralTemplatePO po) throws JsonProcessingException {
-        List<SceneGeneralTemplateMbVO>  listMb=new ArrayList<>();
-        String[]  obsStartX= po.getObsStartX().split(";");
-        String[]  obsStartY= po.getObsStartY().split(";");
-        String[]  obsStartVelocity= po.getObsStartVelocity().split(";");
-        String[]  obsLateralAcceleration= po.getObsLateralAcceleration().split(";");
-        String[]  obsLongitudinalAcceleration= po.getObsLongitudinalAcceleration().split(";");
-        String[]  obsHeadingAngleRel= po.getObsHeadingAngleRel().split(";");
-        String[]  obsVelocityStatus= po.getObsVelocityStatus().split(";");
-        String[]  obsTrajectory= po.getObsTrajectory().split(";");
-        String[]  obsDurationTime= po.getObsDurationTime().split(";");
-        String[]  obsVelocityTime= po.getObsVelocityTime().split(";");
-        String[]  obsTrailTime= po.getObsTrailTime().split(";");
-        String[]  obsType= po.getObsType().split(";");
+    public List<SceneGeneralTemplateMbVO> spliceVo(SceneGeneralTemplatePO po) throws JsonProcessingException {
+        List<SceneGeneralTemplateMbVO> listMb = new ArrayList<>();
+        String[] obsStartX = po.getObsStartX().split(";");
+        String[] obsStartY = po.getObsStartY().split(";");
+        String[] obsStartVelocity = po.getObsStartVelocity().split(";");
+        String[] obsLateralAcceleration = po.getObsLateralAcceleration().split(";");
+        String[] obsLongitudinalAcceleration = po.getObsLongitudinalAcceleration().split(";");
+        String[] obsHeadingAngleRel = po.getObsHeadingAngleRel().split(";");
+        String[] obsVelocityStatus = po.getObsVelocityStatus().split(";");
+        String[] obsTrajectory = po.getObsTrajectory().split(";");
+        String[] obsDurationTime = po.getObsDurationTime().split(";");
+        String[] obsVelocityTime = po.getObsVelocityTime().split(";");
+        String[] obsTrailTime = po.getObsTrailTime().split(";");
+        String[] obsType = po.getObsType().split(";");
 
-        String generalizationType=po.getGeneralizationType();
-        List<String> list= Arrays.asList(obsStartX);
-        for (int i=0;i<list.size();i++){
-            SceneGeneralTemplateMbVO  mbVO=new SceneGeneralTemplateMbVO();
+        String generalizationType = po.getGeneralizationType();
+        List<String> list = Arrays.asList(obsStartX);
+        for (int i = 0; i < list.size(); i++) {
+            SceneGeneralTemplateMbVO mbVO = new SceneGeneralTemplateMbVO();
             mbVO.setObsStartX(list.get(i));
             mbVO.setObsStartY(obsStartY[i]);
             mbVO.setObsStartVelocity(obsStartVelocity[i]);
@@ -337,12 +332,12 @@ public class SceneGeneralTemplateService {
             mbVO.setObsVelocityTime(obsVelocityTime[i]);
             mbVO.setObsTrailTime(obsTrailTime[i]);
             mbVO.setObsType(obsType[i]);
-            Map<String,Integer> map=JsonUtil.jsonToMap(generalizationType);
-            for(Map.Entry<String,Integer> entry:map.entrySet()){
-                String value= entry.getValue().toString();
-                if(value.length()>1){
-              Integer values=Integer.parseInt(value.substring(i,i+1));
-                    map.put(entry.getKey(),values);
+            Map<String, Integer> map = JsonUtil.jsonToMap(generalizationType);
+            for (Map.Entry<String, Integer> entry : map.entrySet()) {
+                String value = entry.getValue().toString();
+                if (value.length() > 1) {
+                    Integer values = Integer.parseInt(value.substring(i, i + 1));
+                    map.put(entry.getKey(), values);
                 }
             }
             mbVO.setGeneralizationType(JsonUtil.beanToJson(map));
@@ -352,34 +347,34 @@ public class SceneGeneralTemplateService {
     }
 
 
-    public  ResponseBodyVO<String> deleteSceneGeneralTemplateById(SceneGeneralTemplatePO po) {
+    public ResponseBodyVO<String> deleteSceneGeneralTemplateById(SceneGeneralTemplatePO po) {
         po.setModifyUserId(AuthUtil.getCurrentUserId());
         po.setModifyTime(TimeUtil.getNowForMysql());
 
         //根据名称查询所有共有及私有场景
-        List<String>  idS=mapper.queryIdBySceneId(po.getSceneId());
+        List<String> idS = mapper.queryIdBySceneId(po.getSceneId());
         mapper.deleteSceneGeneralTemplateByScendId(po);
         //删除场景包
-        SystemScenePackageSublistPO systemScenePackageSublistPO=new SystemScenePackageSublistPO();
+        SystemScenePackageSublistPO systemScenePackageSublistPO = new SystemScenePackageSublistPO();
         systemScenePackageSublistPO.setModifyUserId(AuthUtil.getCurrentUserId());
         systemScenePackageSublistPO.setModifyTime(TimeUtil.getNowForMysql());
         systemScenePackageSublistPO.setSceneName(po.getSceneId());
         systemScenePackageSublistMapper.deleteSystemScenePackageSublist(systemScenePackageSublistPO);
         //删除测试包中场景
-        SceneDeleteParam parm=new SceneDeleteParam();
+        SceneDeleteParam parm = new SceneDeleteParam();
         parm.setModifyUserId(AuthUtil.getCurrentUserId());
         Set<String> set = new HashSet<>();
-        for (String id: idS) {
+        for (String id : idS) {
             parm.setModifyTime(TimeUtil.getNowForMysql());
             parm.setSceneFhId(id);
-            List<String> packageIdS=scenePackageSublistMapper.selectPackageIdById(parm);
+            List<String> packageIdS = scenePackageSublistMapper.selectPackageIdById(parm);
             set.addAll(packageIdS);
             //删除场景测试包
             scenePackageSublistMapper.updateScenePackageSublistById(parm);
         }
         //改变测试包状态
         List<String> listIds = new ArrayList<>(set);
-        ScenePackagePO scenePackagePO=new ScenePackagePO();
+        ScenePackagePO scenePackagePO = new ScenePackagePO();
         scenePackagePO.setModifyUserId(AuthUtil.getCurrentUserId());
         scenePackagePO.setModifyTime(TimeUtil.getNowForMysql());
         scenePackagePO.setIsUnavailable("1");
@@ -387,10 +382,10 @@ public class SceneGeneralTemplateService {
         scenePackageMapper.updateIsUnavailable(scenePackagePO);
 
 
-        Map map=new HashMap();
-        map.put("sceneId",po.getId());
-        map.put("sceneName",po.getSceneId());
-        map.put("type",DictConstants.SCENE_GENERAL);
+        Map map = new HashMap();
+        map.put("sceneId", po.getId());
+        map.put("sceneName", po.getSceneId());
+        map.put("type", DictConstants.SCENE_GENERAL);
         logService.logSceneDelete(LogConstants.SYS_LOG_SCENE_DELETE, map);
         return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
     }
@@ -401,7 +396,7 @@ public class SceneGeneralTemplateService {
     public void instShareSceneGeneralTemplate(SceneGeneralTemplatePO po) {
         SceneGeneralTemplatePO syPO = mapper.querySceneGeneralTemplateById(po.getId());
         syPO.setShare("1");
-        SceneGeneralTemplatePO sceneGeneralTemplatePOByName =mapper.querySceneGeneralTemplateByName(syPO);
+        SceneGeneralTemplatePO sceneGeneralTemplatePOByName = mapper.querySceneGeneralTemplateByName(syPO);
         if (ObjectUtil.isNull(sceneGeneralTemplatePOByName)) {
             // -------------------------------- 保存数据到 mysql --------------------------------
             syPO.setCreateTime(TimeUtil.getNowForMysql());

+ 30 - 4
simulation-resource-server/src/main/java/com/css/simulation/resource/system/mapper/SceneImportMapper.java

@@ -2,10 +2,7 @@ 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.apache.ibatis.annotations.*;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -34,5 +31,34 @@ public interface SceneImportMapper {
             "where id = #{taskId}")
     String selectSceneTypeByTaskId(@Param("taskId") String taskId);
 
+    @Update("update scene_natural\n" +
+            "set is_deleted = '1',\n" +
+            "    modify_user_id = '#{po.modifyUseId}',\n" +
+            "    modify_time = '#{po.modifyTime}'\n" +
+            "where natural_name in (select scene_names\n" +
+            "                       from scene_import_task\n" +
+            "                       where id = '#{po.taskId}'\n" +
+            ")")
     void deleteNaturalByTaskId(@Param("po")SceneImportPO sceneImportPO);
+
+    @Update("update scene_standards_regulations\n" +
+            "set is_deleted = '1',\n" +
+            "    modify_user_id = '#{po.modifyUseId}',\n" +
+            "    modify_time = '#{po.modifyTime}'\n" +
+            "where scene_name in (select scene_names\n" +
+            "                       from scene_import_task\n" +
+            "                       where id = '#{po.taskId}'\n" +
+            ")")
+    void deleteStandardsByTaskId(@Param("po")SceneImportPO sceneImportPO);
+
+    @Update("update scene_accident\n" +
+            "set is_deleted = '1',\n" +
+            "    modify_user_id = '#{po.modifyUseId}',\n" +
+            "    modify_time = '#{po.modifyTime}'\n" +
+            "where scene_name in (select scene_names\n" +
+            "                       from scene_import_task\n" +
+            "                       where id = '#{po.taskId}'\n" +
+            ")")
+    void deleteAccidentByTaskId(@Param("po")SceneImportPO sceneImportPO);
+
 }

+ 20 - 18
simulation-resource-server/src/main/java/com/css/simulation/resource/system/service/SceneImportService.java

@@ -89,23 +89,25 @@ public class SceneImportService {
     }
 
     public void deleteTask(String taskId) {
-//        //1 根据任务 id 查询场景类型
-//        String sceneType = sceneImportMapper.selectSceneTypeByTaskId(taskId);
-//        SceneImportPO sceneImportPO = SceneImportPO.builder()
-//
-//                .build();
-//        //2 根据任务id删除相关联的所有同名任务
-//        if (DictConstants.SCENE_NATURAL.equals(sceneType)) {
-//            sceneImportMapper.deleteNaturalByTaskId(taskId);
-//        } else if (DictConstants.SCENE_STANDARD.equals(sceneType)) {
-//            sceneImportMapper.deleteNaturalByTaskId(taskId);
-//        } else if (DictConstants.SCENE_ACCIDENT.equals(sceneType)) {
-//            sceneImportMapper.deleteNaturalByTaskId(taskId);
-//        } else if (DictConstants.SCENE_GENERAL.equals(sceneType)) {
-//            sceneImportMapper.deleteNaturalByTaskId(taskId);
-//        } else {
-//            throw new RuntimeException("场景类型错误:" + sceneType);
-//        }
-//        //2 删除任务
+        //1 根据任务 id 查询场景类型
+        String sceneType = sceneImportMapper.selectSceneTypeByTaskId(taskId);
+        SceneImportPO sceneImportPO = new SceneImportPO();
+        sceneImportPO.setId(taskId);
+        sceneImportPO.setModifyTime(TimeUtil.getNowForMysql());
+        sceneImportPO.setModifyUserId(AuthUtil.getCreateUserId());
+
+        //2 根据任务id删除相关联的所有同名任务
+        if (DictConstants.SCENE_NATURAL.equals(sceneType)) {
+            sceneImportMapper.deleteNaturalByTaskId(sceneImportPO);
+        } else if (DictConstants.SCENE_STANDARD.equals(sceneType)) {
+            sceneImportMapper.deleteStandardsByTaskId(sceneImportPO);
+        } else if (DictConstants.SCENE_ACCIDENT.equals(sceneType)) {
+            sceneImportMapper.deleteAccidentByTaskId(sceneImportPO);
+        } else if (DictConstants.SCENE_GENERAL.equals(sceneType)) {
+//            sceneImportMapper.deleteNaturalByTaskId(sceneImportPO);
+        } else {
+            throw new RuntimeException("场景类型错误:" + sceneType);
+        }
+        //2 删除任务
     }
 }