lichunyang 1 жил өмнө
parent
commit
7efb43d1e2

+ 8 - 1
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/domain/service/TaskDomainService.java

@@ -511,6 +511,10 @@ public class TaskDomainService {
             }
             try {
                 if (StringUtils.equals(sceneEvaluationComputeParam.getComputeType(), DictConstants.COMPLEXITY)) {
+                    if (StringUtil.isEmpty(sceneEvaluationComputeParam.getSceneXODRPath())
+                            || StringUtil.isEmpty(sceneEvaluationComputeParam.getSceneXOSCPath())) {
+                        continue;
+                    }
                     // 计算复杂度,根据场景 id 获取场景信息,下载 osc odr
                     String scenarioOsc = sceneEvaluationComputeParam.getSceneXOSCPath();
                     String[] splitXosc = scenarioOsc.split("/");
@@ -521,6 +525,9 @@ public class TaskDomainService {
                     String xodrName = splitXodr[splitXodr.length - 1];
                     MinioUtil.downloadToFile(minioClient, bucketName, sceneEvaluationComputeParam.getSceneXODRPath(), scenePath + "/" + xodrName);
                 } else if (StringUtils.equals(sceneEvaluationComputeParam.getComputeType(), DictConstants.RISK)) {
+                    if (StringUtil.isEmpty(sceneEvaluationComputeParam.getEvaluationPath())) {
+                        continue;
+                    }
                     // 计算危险度 从 minio path 下载 csv (ego 和 sensors)
                     MinioUtil.downloadToFile(minioClient, bucketName, sceneEvaluationComputeParam.getEvaluationPath() + "/Ego.csv", scenePath + "/Ego.csv");
                     MinioUtil.downloadToFile(minioClient, bucketName, sceneEvaluationComputeParam.getEvaluationPath() + "/evaluation.csv", scenePath + "/evaluation.csv");
@@ -529,7 +536,7 @@ public class TaskDomainService {
                 }
             } catch (Exception e) {
                 log.error("文件下载失败", e);
-                return false;
+                FileUtil.deleteFolder(scenePath);   // 删除临时文件
             }
         }
         String sceneEvaluationCommand;

+ 8 - 1
simulation-resource-server/src/main/java/com/css/simulation/resource/server/app/service/SceneEvaluationRuleService.java

@@ -288,6 +288,10 @@ public class SceneEvaluationRuleService {
             }
             try {
                 if (StringUtils.equals(sceneEvaluationComputeParam.getComputeType(), DictConstants.COMPLEXITY)) {
+                    if (StringUtil.isEmpty(sceneEvaluationComputeParam.getSceneXODRPath())
+                            || StringUtil.isEmpty(sceneEvaluationComputeParam.getSceneXOSCPath())) {
+                        continue;
+                    }
                     // 计算复杂度,根据场景 id 获取场景信息,下载 osc odr
                     String scenarioOsc = sceneEvaluationComputeParam.getSceneXOSCPath();
                     String[] splitXosc = scenarioOsc.split("/");
@@ -299,6 +303,9 @@ public class SceneEvaluationRuleService {
                     String xodrName = splitXodr[splitXodr.length - 1];
                     downloadDependFile(sceneEvaluationComputeParam.getSceneXODRPath(), scenePath + "/" + xodrName);
                 } else if (StringUtils.equals(sceneEvaluationComputeParam.getComputeType(), DictConstants.RISK)) {
+                    if (StringUtil.isEmpty(sceneEvaluationComputeParam.getEvaluationPath())) {
+                        continue;
+                    }
                     // 计算危险度 从 minio path 下载 csv (ego 和 sensors)
                     downloadDependFile(sceneEvaluationComputeParam.getEvaluationPath() + "/Ego.csv", scenePath + "/Ego.csv");
                     downloadDependFile(sceneEvaluationComputeParam.getEvaluationPath() + "/evaluation.csv", scenePath + "/evaluation.csv");
@@ -307,7 +314,7 @@ public class SceneEvaluationRuleService {
                 }
             } catch (IOException e) {
                 log.error("文件下载失败", e);
-                return false;
+                FileUtil.deleteFolder(scenePath);   // 删除临时文件
             }
         }
         String sceneEvaluationCommand;