dengsixing 2 months ago
parent
commit
5fae6acc91

+ 2 - 0
src/main/java/com/fdkankan/modeling/receiver/InterruptCallingListener.java

@@ -63,6 +63,8 @@ public class InterruptCallingListener {
 
             SysConstants.interrupCallingNums.add(num);
 
+            log.info("buildSceneHandler,已经删除的场景码:{}", JSON.toJSONString(SysConstants.interrupCallingNums));
+
             //如果该场景已经调起了算法进程,需要终止算法进程
             if(SysConstants.callingNum.contains(num)){
                 //进入计算之前,把上次未关闭的算法杀掉(主要是重启的问题)

+ 8 - 3
src/main/java/com/fdkankan/modeling/receiver/RabbitMqListener.java

@@ -258,9 +258,11 @@ public class RabbitMqListener {
         ComputerUtil.createProjectAndDataFile(path,num, splitType, skyboxType,null,null);
 
         //场景已删除,不启动算法进程
+        log.info("buildScene,已经删除的场景码:{}", JSON.toJSONString(SysConstants.interrupCallingNums));
         if(SysConstants.interrupCallingNums.contains(num)){
             SysConstants.interrupCallingNums.remove(num);
-            throw new BusinessException(ErrorCode.FAILURE_CODE_5009);
+            log.info("场景已被删除,跳出计算,num:{}", num);
+            return ModelingBuildStatus.FAILED;
         }
 
         //计算模型并返回需要上传oss的文件集合
@@ -404,8 +406,11 @@ public class RabbitMqListener {
      * @param buildStatus
      */
     private void sendCallBuildProcessLog(BuildSceneCallMessage message, ModelingBuildStatus buildStatus){
-        rabbitMqProducer.sendByWorkQueue(queueModelingProcessLog,
-                BuildSceneProcessLogMessage.builder().num(message.getSceneNum()).buildStatus(buildStatus.code()).build());
+        JSONObject jsonObject = new JSONObject();
+        jsonObject.put("num", message.getSceneNum());
+        jsonObject.put("buildStatus", buildStatus.code());
+        jsonObject.put("batchId", message.getExt().get("batchId"));
+        rabbitMqProducer.sendByWorkQueue(queueModelingProcessLog, jsonObject);
     }
 
     private void preBuild(Map<String,Object> buildContext,BuildSceneCallMessage message, BuildLog buildLog) throws BuildException {