فهرست منبع

场景升级增加生成houseType.json逻辑

dengsixing 3 سال پیش
والد
کامیت
7a2a530ef4
1فایلهای تغییر یافته به همراه26 افزوده شده و 14 حذف شده
  1. 26 14
      src/main/java/com/fdkankan/scene/service/impl/SceneUpgradeToV4Service.java

+ 26 - 14
src/main/java/com/fdkankan/scene/service/impl/SceneUpgradeToV4Service.java

@@ -10,6 +10,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fdkankan.common.constant.CommonStatus;
 import com.fdkankan.common.constant.CommonStatus;
 import com.fdkankan.common.constant.RecStatus;
 import com.fdkankan.common.constant.RecStatus;
+import com.fdkankan.model.utils.CreateHouseJsonUtil;
 import com.fdkankan.web.response.ResultData;
 import com.fdkankan.web.response.ResultData;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.common.util.FileUtils;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
@@ -45,6 +46,7 @@ import java.io.File;
 import java.io.IOException;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.math.RoundingMode;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Calendar;
 import java.util.HashMap;
 import java.util.HashMap;
@@ -120,6 +122,8 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
         String imageViewPath = String.format(UploadFilePath.IMG_VIEW_PATH, num);
         String imageViewPath = String.format(UploadFilePath.IMG_VIEW_PATH, num);
         String videoViewPath = String.format(UploadFilePath.VIDEOS_VIEW_PATH, num);
         String videoViewPath = String.format(UploadFilePath.VIDEOS_VIEW_PATH, num);
         String voiceViewPath = String.format(UploadFilePath.VOICE_VIEW_PATH, num);
         String voiceViewPath = String.format(UploadFilePath.VOICE_VIEW_PATH, num);
+        String userViewPath = String.format(UploadFilePath.USER_VIEW_PATH, num);
+        String userEditPath = String.format(UploadFilePath.USER_EDIT_PATH, num);
         long consumTime = 0;
         long consumTime = 0;
         long startTime = Calendar.getInstance().getTimeInMillis();
         long startTime = Calendar.getInstance().getTimeInMillis();
         SceneRepairLog sceneRepairLog = null;
         SceneRepairLog sceneRepairLog = null;
@@ -292,8 +296,8 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
             }
             }
 
 
             //户型图上传
             //户型图上传
-            String  userEditPath = UploadFilePath.USER_EDIT_PATH + "floor-cad-%s.%s";
-            String  userViewPath = UploadFilePath.USER_VIEW_PATH + "floor-cad-%s.%s";
+            String  cadEditPath = UploadFilePath.USER_EDIT_PATH + "floor-cad-%s.%s";
+            String  cadViewPath = UploadFilePath.USER_VIEW_PATH + "floor-cad-%s.%s";
             String floorCadPath = path + "/results/floorplan_cad";
             String floorCadPath = path + "/results/floorplan_cad";
             List<String> floorCadList = FileUtils.getFileList(floorCadPath);
             List<String> floorCadList = FileUtils.getFileList(floorCadPath);
             if(CollUtil.isNotEmpty(floorCadList)){
             if(CollUtil.isNotEmpty(floorCadList)){
@@ -301,8 +305,8 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
                     String substring = str.substring(str.lastIndexOf(File.separator) + 1);
                     String substring = str.substring(str.lastIndexOf(File.separator) + 1);
                     String[] arr = substring.split("floor");
                     String[] arr = substring.split("floor");
                     String[] arr2 = arr[1].split("\\.");
                     String[] arr2 = arr[1].split("\\.");
-                    fYunFileService.uploadFile(str, String.format(userEditPath, num, arr2[0], arr2[1]));
-                    fYunFileService.uploadFile(str, String.format(userViewPath, num, arr2[0], arr2[1]));
+                    fYunFileService.uploadFile(str, String.format(cadEditPath, num, arr2[0], arr2[1]));
+                    fYunFileService.uploadFile(str, String.format(cadViewPath, num, arr2[0], arr2[1]));
                 });
                 });
             }
             }
 
 
@@ -319,16 +323,6 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
                 fYunFileService.copyFileInBucket(entry.getValue(), entry.getKey());
                 fYunFileService.copyFileInBucket(entry.getValue(), entry.getKey());
             }
             }
 
 
-            //上传vision.txt、vision2.txt
-            String visionTxtPath = scenePro.getDataSource() + "/results/vision.txt";
-            String vision2TxtPath = scenePro.getDataSource() + "/results/vision2.txt";
-            if(cn.hutool.core.io.FileUtil.exist(visionTxtPath)){
-                fYunFileService.uploadFile(visionTxtPath, imageViewPath + "vision.txt");
-            }
-            if(cn.hutool.core.io.FileUtil.exist(vision2TxtPath)){
-                fYunFileService.uploadFile(visionTxtPath, imageViewPath + "vision2.txt");
-            }
-
             //完成数据库操作更新进度条为10
             //完成数据库操作更新进度条为10
             this.updateProgress(num, 90, ProgressStatus.DO_OSS.code());
             this.updateProgress(num, 90, ProgressStatus.DO_OSS.code());
 
 
@@ -409,6 +403,24 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
                 });
                 });
             }
             }
 
 
+            //上传vision.txt、vision2.txt
+            String visionTxtPath = scenePro.getDataSource() + "/results/vision.txt";
+            String vision2TxtPath = scenePro.getDataSource() + "/results/vision2.txt";
+            if(cn.hutool.core.io.FileUtil.exist(visionTxtPath)){
+                fYunFileService.uploadFile(visionTxtPath, imageViewPath + "vision.txt");
+            }
+            if(cn.hutool.core.io.FileUtil.exist(vision2TxtPath)){
+                fYunFileService.uploadFile(visionTxtPath, imageViewPath + "vision2.txt");
+            }
+
+            //生成houseType并上传
+            JSONObject houseTypeJsonByCad =
+                CreateHouseJsonUtil.createHouseTypeJsonByCad(scenePlusExt.getDataSource() + "/results/floorplan_cad.json");
+            if(Objects.nonNull(houseTypeJsonByCad)){
+                fYunFileService.uploadFile(houseTypeJsonByCad.toJSONString().getBytes(StandardCharsets.UTF_8), userEditPath);
+                fYunFileService.uploadFile(houseTypeJsonByCad.toJSONString().getBytes(StandardCharsets.UTF_8), userViewPath);
+            }
+
             //生成scene.json
             //生成scene.json
 //        生成新的scene.json,上传至scene_view_data/<num>/data
 //        生成新的scene.json,上传至scene_view_data/<num>/data
             SceneJsonBean sceneJson = new SceneJsonBean();
             SceneJsonBean sceneJson = new SceneJsonBean();