root 2 년 전
부모
커밋
1ec0e27835

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

@@ -31,7 +31,6 @@ public class StandardsRegulationsController {
 
     //查询列表
     @PostMapping("/queryStandardsRegulationsList")
-    @ResponseBody
     public ResponseBodyVO<List<StandardsRegulationsVO>> queryStandardsRegulationsList(@RequestBody StandardsRegulationsParam params) {
         PageUtil.setPageInfo(params);
         List<StandardsRegulationsPO> list = standardsRegulationsService.queryStandardsRegulationsList(params);
@@ -50,7 +49,6 @@ public class StandardsRegulationsController {
 
     //新增标准法规
     @PostMapping("/saveStandardsRegulations")
-    @ResponseBody
     public ResponseBodyVO<String> saveStandardsRegulations(@RequestBody StandardsRegulationsParam params) {
 
         return standardsRegulationsService.importBzFg(params);
@@ -59,7 +57,6 @@ public class StandardsRegulationsController {
 
     //删除
     @PostMapping("/deleteStandardsRegulations")
-    @ResponseBody
     public ResponseBodyVO<String> deleteStandardsRegulations(@RequestBody StandardsRegulationsPO params) {
         if (ObjectUtil.isNull(params.getRegulationsId())) {
             return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, "参数场景Id不能为空,请检查");
@@ -70,12 +67,12 @@ public class StandardsRegulationsController {
 
     //测试批量导入
     @PostMapping("/saveStandardsRegulationsBatch")
-    @ResponseBody
     public ResponseBodyVO<String> saveStandardsRegulationsBatch(@RequestBody SceneImportParam sceneImportParam) {
         SceneImportPO sceneImportPO = new SceneImportPO();
         sceneImportPO.setId(sceneImportParam.getId());
         sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_3);
         sceneImportService.updateStatus(sceneImportPO);
+        // 解析参数
         sceneImportPO = standardsRegulationsService.importMinio(sceneImportParam);
         sceneImportService.updateInfo(sceneImportPO);
         return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS);
@@ -83,20 +80,15 @@ public class StandardsRegulationsController {
 
     //查詢法规类型
     @PostMapping("/queryRegulationType")
-    @ResponseBody
     public ResponseBodyVO<List<String>> queryRegulationType() {
-
         return standardsRegulationsService.queryRegulationType();
-
     }
 
     //分享·
     @PostMapping("/instStandardsRegulation")
-    @ResponseBody
     public ResponseBodyVO<String> instStandardsRegulation(@RequestBody StandardsRegulationsPO po) {
         standardsRegulationsService.instStandardsRegulation(po);
         return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS);
-
     }
 
 }

+ 16 - 19
simulation-resource-server/src/main/java/com/css/simulation/resource/scene/service/SceneAccidentService.java

@@ -195,27 +195,27 @@ public class SceneAccidentService {
 
         List<SceneAccidentPO> 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 = SceneAccidentMapper.querySceneAccidentList(params);
-            log.info("泛华----list--" +list.size()+"----------"+params);
+            log.info("泛华----list--" + list.size() + "----------" + params);
         } else if (DictConstants.ROLE_CODE_SUBUESR.equals(roleCode)) {
             //查询父账户
             userId = AuthUtil.getCreateUserId();
             params.setUserId(userId);
-            if(params.getShare().equals("0")){
+            if (params.getShare().equals("0")) {
                 list = SceneAccidentMapper.querySceneAccidentList(params);
-            }else{
+            } else {
                 list = SceneAccidentMapper.querySceneAccidentListByQx(params);
             }
 
         } else if (DictConstants.ROLE_CODE_UESR.equals(roleCode)) {
             //查询普通账户
             params.setUserId(userId);
-            if(params.getShare().equals("0")){
+            if (params.getShare().equals("0")) {
                 list = SceneAccidentMapper.querySceneAccidentList(params);
-            }else{
+            } else {
                 list = SceneAccidentMapper.querySceneAccidentListByQx(params);
             }
 
@@ -675,22 +675,24 @@ public class SceneAccidentService {
                                     // 判断场景名称唯一
                                     String sceneName = root.path("场景名称").asText();
                                     String selfDriving = root.path("自车驾驶行为").asText();
-                                    String conflictType = root.path("冲突类型").asText();
                                     String conflictBehavior = root.path("冲突行为").asText();
+                                    String conflictType = root.path("冲突类型").asText();
                                     String selfReaction = root.path("自车反应行为").asText();
-                                    if (ObjectUtil.isNull(selfDriving)
-                                            && ObjectUtil.isNull(conflictType)
-                                            && ObjectUtil.isNull(conflictBehavior)
-                                            && ObjectUtil.isNull(selfReaction)) {
+                                    if (ObjectUtil.isNull(sceneName) || ObjectUtil.isNull(selfDriving) || ObjectUtil.isNull(conflictType) || ObjectUtil.isNull(conflictBehavior)) {
                                         sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_2);
-                                        sceneImportPO.setErrorMessage("文件 " + adress + " 内容不符合标准格式,解析失败。");
-//                                        sceneImportPO.setErrorMessage("文件 " + adress + " 与交通事故场景类型不匹配,解析失败,请检查");
+                                        sceneImportPO.setErrorMessage("文件 " + adress + " 内容不符合标准格式(场景名称、自车驾驶行为、冲突行为、冲突类型不能为空)。");
                                         return sceneImportPO;
                                     }
 
                                     sceneAccidentPO.setSceneName(sceneName);
                                     sceneAccidentPO.setShare("0");
                                     SceneAccidentPO sceneAccidentPOByName = SceneAccidentMapper.querySceneAccidentByNmae(sceneAccidentPO);
+                                    if (ObjectUtil.isNull(sceneAccidentPOByName)) { // 新增数据
+                                        isupdate = "0";
+                                    } else {    // 覆盖(更新)数据
+                                        isupdate = "1";
+                                        sceneAccidentPO.setAccidentId(sceneAccidentPOByName.getAccidentId());
+                                    }
                                     String osgbAdress = OsgbPath + "/" + root.path("osgb").asText();
                                     String xodrAdress = XodrPath + "/" + root.path("xodr").asText();
                                     sceneAccidentPO.setAccidentId(StringUtil.getRandomUUID());
@@ -712,12 +714,7 @@ public class SceneAccidentService {
                                     if (ObjectUtil.isNull(sceneAccidentPO.getXodrAddress())) {
                                         sceneAccidentPO.setXodrAddress(xodrAdress);
                                     }
-                                    if (ObjectUtil.isNull(sceneAccidentPOByName)) {
-                                        isupdate = "0";
-                                    } else {
-                                        isupdate = "1";
-                                        sceneAccidentPO.setAccidentId(sceneAccidentPOByName.getAccidentId());
-                                    }
+
                                 }
                                 if (adress.contains(".json")) {
                                     sceneAccidentPO.setJsonAddress(adress);

+ 10 - 12
simulation-resource-server/src/main/java/com/css/simulation/resource/scene/service/SceneNaturalService.java

@@ -182,7 +182,7 @@ public class SceneNaturalService {
             return s;
     }
 
-    public String getSequenceNew(JsonNode jsonArray) throws Exception {
+    public String getSequenceNew(JsonNode jsonArray) {
         if (jsonArray == null) {
             return "无法确定";
         }
@@ -547,14 +547,17 @@ public class SceneNaturalService {
                                     // -------------------------------- 目标行为 --------------------------------
                                     JsonNode targetBehavior = root.path("目标行为");
 
-                                    if (!(ObjectUtil.isNotNull(naturalEnvironment)
-                                            && ObjectUtil.isNotNull(road)
-                                            && (ObjectUtil.isNotNull(selfDrivingBehavior)
-                                            || ObjectUtil.isNotNull(targetBehavior)))) {
+                                    if (naturalEnvironment == null || road == null || (selfDrivingBehavior == null && targetBehavior == null)) {
                                         sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_2);
-                                        sceneImportPO.setErrorMessage("该文件:" + adress + "与自然场景类型不匹配,解析失败,请检查。");
+                                        sceneImportPO.setErrorMessage("文件 " + adress + " 内容不符合标准格式(自然环境和道路不为空且自车行为、冲突行为不同时为空)。");
                                         return sceneImportPO;
                                     }
+                                    if (ObjectUtil.isNotNull(sceneNaturalPOByName)) {
+                                        isupdate = "1";
+                                        sceneNaturalPO.setNaturalId(sceneNaturalPOByName.getNaturalId());
+                                    } else {
+                                        isupdate = "0";
+                                    }
                                     sceneNaturalPO.setNaturalId(api.common.util.StringUtil.getRandomUUID());
                                     sceneNaturalPO.setNaturalName(fileName);
                                     sceneNaturalPO.setWeather(getSequenceNew(naturalEnvironment, "天气情况"));
@@ -600,12 +603,7 @@ public class SceneNaturalService {
                                     if (ObjectUtil.isNull(sceneNaturalPO.getXodrAddress())) {
                                         sceneNaturalPO.setXodrAddress(xodrAdress);
                                     }
-                                    if (ObjectUtil.isNull(sceneNaturalPOByName)) {
-                                        isupdate = "0";
-                                    } else {
-                                        isupdate = "1";
-                                        sceneNaturalPO.setNaturalId(sceneNaturalPOByName.getNaturalId());
-                                    }
+
                                 }
                                 if (adress.contains(".json")) {
                                     sceneNaturalPO.setJsonAddress(adress);

+ 8 - 14
simulation-resource-server/src/main/java/com/css/simulation/resource/scene/service/StandardsRegulationsService.java

@@ -239,14 +239,9 @@ public class StandardsRegulationsService {
                                     String standardType = root.path("标准类型").asText();
                                     String osgb = root.path("osgb").asText();
                                     String xodr = root.path("xodr").asText();
-                                    if (StringUtil.isEmpty(sceneName)
-                                            || StringUtil.isEmpty(regulationType)
-                                            || StringUtil.isEmpty(standardType)
-                                          /*  || StringUtil.isEmpty(osgb)
-                                            || StringUtil.isEmpty(xodr)*/
-                                    ) {
+                                    if (StringUtil.isEmpty(sceneName) || (StringUtil.isEmpty(regulationType) && StringUtil.isEmpty(standardType))) {
                                         sceneImportPO.setStatus(DictConstants.SCENE_IMPORT_STATUS_2);
-                                        sceneImportPO.setErrorMessage("文件" + adress + " 与标准法规场景类型不匹配,解析失败。");
+                                        sceneImportPO.setErrorMessage("文件 " + adress + " 内容不符合标准格式(场景名称不为空且法规类型和标准类型不同时为空)。");
                                         return sceneImportPO;
                                     }
                                     String osgbAdress = OsgbPath + "/" + osgb;
@@ -254,24 +249,23 @@ public class StandardsRegulationsService {
                                     standardsRegulationsPO.setShare("0");
                                     standardsRegulationsPO.setSceneName(sceneName);
                                     StandardsRegulationsPO PoByName = standardsRegulationsMapper.queryStandardsRegulationsByName(standardsRegulationsPO);
+                                    if (ObjectUtil.isNull(PoByName)) {  // 新增数据
+                                        isupdate = "0";
+                                    } else {    // 覆盖(更新)数据
+                                        isupdate = "1";
+                                        standardsRegulationsPO.setRegulationsId(PoByName.getRegulationsId());
+                                    }
                                     standardsRegulationsPO.setRegulationsId(StringUtil.getRandomUUID());
                                     standardsRegulationsPO.setRegulationType(regulationType);
                                     standardsRegulationsPO.setStandardType(standardType);
                                     standardsRegulationsPO.setMaxTime(root.path("max_time").asText());
                                     standardsRegulationsPO.setIsDeleted("0");
-
                                     if (ObjectUtil.isNull(standardsRegulationsPO.getOsgbAddress())) {
                                         standardsRegulationsPO.setOsgbAddress(osgbAdress);
                                     }
                                     if (ObjectUtil.isNull(standardsRegulationsPO.getXodrAddress())) {
                                         standardsRegulationsPO.setXodrAddress(xodrAdress);
                                     }
-                                    if (ObjectUtil.isNull(PoByName)) {
-                                        isupdate = "0";
-                                    } else {
-                                        isupdate = "1";
-                                        standardsRegulationsPO.setRegulationsId(PoByName.getRegulationsId());
-                                    }
                                 }
                                 if (adress.contains(".json")) {
                                     standardsRegulationsPO.setJsonAddress(adress);