Forráskód Böngészése

修改V场景计算逻辑

tianboguang 2 éve
szülő
commit
9656ed439a

+ 14 - 7
src/main/java/com/fdkankan/contro/mq/service/impl/BuildV3SceneServiceImpl.java

@@ -224,9 +224,7 @@ public class BuildV3SceneServiceImpl implements IBuildSceneService {
             uploadFiles.entrySet().stream().filter(entry-> FileNameUtil.getName(entry.getKey()).equals("floorplan_cad.json"))
                     .forEach(entry-> uploadHouseTypeJson(sceneCode,entry.getKey()));
 
-            //写scene.json
-            log.info("生成scene.json上传oss并设置缓存,num:{}", sceneCode);
-            this.writeSceneJson(sceneCode, videosJson,scenePro);
+
 
             //计算成功,通知APP
             Integer pushChannel = fdageData.getInteger("pushChannel");
@@ -236,16 +234,21 @@ public class BuildV3SceneServiceImpl implements IBuildSceneService {
             SceneProEdit sceneProEdit = sceneProEditService.getByProId(scenePro.getId());
             sceneProEdit.setVersion(ObjectUtils.isEmpty(sceneProEdit.getVersion()) ? 0 : sceneProEdit.getVersion() + 1);
             sceneProEdit.setImagesVersion(ObjectUtils.isEmpty(sceneProEdit.getImagesVersion()) ? 0 : sceneProEdit.getImagesVersion() + 1);
+            sceneProEdit.setFloorEditVer(ObjectUtils.isEmpty(sceneProEdit.getFloorEditVer()) ? 0 : sceneProEdit.getFloorEditVer() + 1);
+            sceneProEdit.setFloorPublishVer(ObjectUtils.isEmpty(sceneProEdit.getFloorPublishVer()) ? 0 : sceneProEdit.getFloorPublishVer() + 1);
             if (cameraType == 14) {
                 //计算成功  激光转台相机 同步 请求
                 fdkkLaserService.syncBuildResult(scenePro.getNum(), scenePro.getDataSource(),scenePro.getCreateTime());
                 sceneProEdit.setMapVisi(0);
             }
             sceneProEditService.updateById(sceneProEdit);
-            CreateObjUtil.deleteFile(path.replace(ConstantFilePath.BUILD_MODEL_PATH, "/") + "/capture");
 
-            log.info("场景计算结果处理结束,场景码:{}", sceneCode);
+            //写scene.json
+            log.info("生成scene.json上传oss并设置缓存,num:{}", sceneCode);
+            this.writeSceneJson(videosJson,scenePro,sceneProEdit);
 
+            CreateObjUtil.deleteFile(path.replace(ConstantFilePath.BUILD_MODEL_PATH, "/") + "/capture");
+            log.info("场景计算结果处理结束,场景码:{}", sceneCode);
             // 判断是否升级V4
             if(fdageData.containsKey("updateV4") && fdageData.getIntValue("updateV4") == 1){
                 fdkkV4Service.upgradeToV4(sceneCode);
@@ -365,13 +368,17 @@ public class BuildV3SceneServiceImpl implements IBuildSceneService {
         return dataJson;
     }
 
-    private void writeSceneJson(String num, JSONObject videosJson, ScenePro scenePro)  throws Exception{
+    private void writeSceneJson(JSONObject videosJson, ScenePro scenePro,SceneProEdit sceneProEdit)  throws Exception{
+        String num = scenePro.getNum();
         String dataViewPath = String.format(ConstantFilePath.DATA_PATH_FORMAT, num);
         //如果云端没有scene.json文件,生成一份
 
         JSONObject sceneJson = JSONObject.parseObject(JSONObject.toJSONString(scenePro));
         sceneJson.put("videos",videosJson);
-        sceneJson.put("payStatus",scenePro.getPayStatus());
+        sceneJson.put("version",sceneProEdit.getVersion());
+        sceneJson.put("imagesVersion",sceneProEdit.getImagesVersion());
+        sceneJson.put("floorEditVer",sceneProEdit.getFloorEditVer());
+        sceneJson.put("floorPublishVer",sceneProEdit.getFloorPublishVer());
         String sceneJsonStr = JSON.toJSONString(sceneJson);
         //上传sceneJson文件
         fYunFileService.uploadFile(sceneJsonStr.getBytes(), dataViewPath + "scene.json");