Quellcode durchsuchen

isobj字段逻辑优化

dengsixing vor 3 Wochen
Ursprung
Commit
928393a9b4

+ 2 - 3
src/main/java/com/fdkankan/contro/mq/service/impl/BuildIntermitSceneServiceImpl.java

@@ -201,7 +201,7 @@ public class BuildIntermitSceneServiceImpl implements IBuildSceneService {
             Long space = commonService.getSpace(sceneCode);
 
             //写入数据库
-            this.updateDbPlus(scenePlus.getSceneSource(), space, videosJson.toJSONString(), message.getComputeTime(),false,scenePlusExt);
+            this.updateDbPlus(scenePlus.getSceneSource(), space, videosJson.toJSONString(), message.getComputeTime(),scenePlusExt);
 
             Object[] editInfoArr = commonService.updateEditInfo(scenePlus);
 
@@ -295,13 +295,12 @@ public class BuildIntermitSceneServiceImpl implements IBuildSceneService {
         fYunFileService.uploadFile(statusJson.toJSONString().getBytes(StandardCharsets.UTF_8), dataViewPath + "status.json");
     }
 
-    private void updateDbPlus(int sceneSource,Long space,String videosJson, Long computeTime,boolean isObj,ScenePlusExt scenePlusExt){
+    private void updateDbPlus(int sceneSource,Long space,String videosJson, Long computeTime,ScenePlusExt scenePlusExt){
 
         scenePlusExt.setSpace(space);
         scenePlusExt.setComputeTime(computeTime);
         scenePlusExt.setAlgorithmTime(new Date());
         scenePlusExt.setVideos(videosJson);
-        scenePlusExt.setIsObj(isObj ? 1 : 0);
 
         if(ModelTypeEnums.TILE_CODE.equals(modelType)){
             scenePlusExt.setSceneScheme(3);

+ 2 - 6
src/main/java/com/fdkankan/contro/mq/service/impl/BuildLiguangServiceImpl.java

@@ -3,7 +3,6 @@ package com.fdkankan.contro.mq.service.impl;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.util.StrUtil;
-import cn.hutool.core.util.ZipUtil;
 import cn.hutool.extra.qrcode.QrCodeUtil;
 import cn.hutool.extra.qrcode.QrConfig;
 import cn.hutool.http.ContentType;
@@ -14,7 +13,6 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.fdkankan.common.constant.*;
 import com.fdkankan.common.util.FileUtils;
-import com.fdkankan.contro.bean.SyncLaserResultBean;
 import com.fdkankan.contro.constant.UserEditDataType;
 import com.fdkankan.contro.entity.*;
 import com.fdkankan.contro.mq.service.IBuildSceneService;
@@ -230,7 +228,6 @@ public class BuildLiguangServiceImpl implements IBuildSceneService {
             JSONObject videosJson = commonService.getVideosJson(path, videoVersion, sceneCode, cameraType);
 
             ScenePlusExt scenePlusExt = scenePlusExtService.getScenePlusExtByPlusId(scenePlus.getId());
-            boolean isObj = fdageData.containsKey("exportMeshObj") && fdageData.getIntValue("exportMeshObj") == 1;
 
             //上传全景图俯视图
             this.uploadFloorCad(path, sceneCode, uploadFiles);
@@ -278,7 +275,7 @@ public class BuildLiguangServiceImpl implements IBuildSceneService {
             Long space = commonService.getSpace(sceneCode);
 
             //写入数据库
-            this.updateDbPlus(scenePlus.getSceneSource(), space, videosJson.toJSONString(), message.getComputeTime(),isObj,scenePlusExt);
+            this.updateDbPlus(scenePlus.getSceneSource(), space, videosJson.toJSONString(), message.getComputeTime(),scenePlusExt);
 
             Object[] editInfoArr = commonService.updateEditInfo(scenePlus);
             SceneEditInfo sceneEditInfo = (SceneEditInfo)editInfoArr[0];
@@ -482,13 +479,12 @@ public class BuildLiguangServiceImpl implements IBuildSceneService {
         }
     }
 
-    private void updateDbPlus(int sceneSource,Long space,String videosJson, Long computeTime,boolean isObj,ScenePlusExt scenePlusExt){
+    private void updateDbPlus(int sceneSource,Long space,String videosJson, Long computeTime,ScenePlusExt scenePlusExt){
 
         scenePlusExt.setSpace(space);
         scenePlusExt.setComputeTime(computeTime);
         scenePlusExt.setAlgorithmTime(new Date());
         scenePlusExt.setVideos(videosJson);
-        scenePlusExt.setIsObj(isObj ? 1 : 0);
 
         if(ModelTypeEnums.TILE_CODE.equals(modelType)){
             scenePlusExt.setSceneScheme(3);

+ 2 - 4
src/main/java/com/fdkankan/contro/mq/service/impl/BuildSceneServiceImpl.java

@@ -283,7 +283,6 @@ public class BuildSceneServiceImpl implements IBuildSceneService {
             JSONObject videosJson = commonService.getVideosJson(path, videoVersion, sceneCode, cameraType);
 
             ScenePlusExt scenePlusExt = scenePlusExtService.getScenePlusExtByPlusId(scenePlus.getId());
-            boolean isObj = fdageData.containsKey("exportMeshObj") && fdageData.getIntValue("exportMeshObj") == 1;
 
             //上传全景图俯视图
             this.uploadFloorCad(path, sceneCode, uploadFiles);
@@ -334,7 +333,7 @@ public class BuildSceneServiceImpl implements IBuildSceneService {
             aiService.detectScenePano(scenePlus, scenePlusExt, path);
 
             //写入数据库
-            this.updateDbPlus(scenePlus, scenePlusExt, space, videosJson.toJSONString(), message.getComputeTime(),isObj);
+            this.updateDbPlus(scenePlus, scenePlusExt, space, videosJson.toJSONString(), message.getComputeTime());
 
             Object[] editInfoArr = commonService.updateEditInfo(scenePlus);
             SceneEditInfo sceneEditInfo = (SceneEditInfo)editInfoArr[0];
@@ -577,13 +576,12 @@ public class BuildSceneServiceImpl implements IBuildSceneService {
         }
     }
 
-    private void updateDbPlus(ScenePlus scenePlus,ScenePlusExt scenePlusExt, Long space,String videosJson, Long computeTime,boolean isObj){
+    private void updateDbPlus(ScenePlus scenePlus,ScenePlusExt scenePlusExt, Long space,String videosJson, Long computeTime){
 
         scenePlusExt.setSpace(space);
         scenePlusExt.setComputeTime(computeTime);
         scenePlusExt.setAlgorithmTime(new Date());
         scenePlusExt.setVideos(videosJson);
-        scenePlusExt.setIsObj(isObj ? 1 : 0);
 
         if(ModelTypeEnums.TILE_CODE.equals(modelType)){
             scenePlusExt.setSceneScheme(3);

+ 12 - 92
src/main/java/com/fdkankan/contro/mq/service/impl/BuildSxRelocationServiceImpl.java

@@ -1,24 +1,26 @@
 package com.fdkankan.contro.mq.service.impl;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.io.FileUtil;
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.fdkankan.common.constant.*;
+import com.fdkankan.common.constant.CommonSuccessStatus;
+import com.fdkankan.common.constant.PayStatus;
+import com.fdkankan.common.constant.SceneSource;
+import com.fdkankan.common.constant.SceneStatus;
 import com.fdkankan.common.util.FileUtils;
-import com.fdkankan.contro.entity.*;
+import com.fdkankan.contro.entity.RelocationBatch;
+import com.fdkankan.contro.entity.RelocationBatchDetail;
+import com.fdkankan.contro.entity.ScenePlus;
+import com.fdkankan.contro.entity.ScenePlusExt;
 import com.fdkankan.contro.mq.service.IBuildSceneService;
 import com.fdkankan.contro.service.*;
-import com.fdkankan.fyun.config.FYunFileConfig;
 import com.fdkankan.fyun.face.FYunFileServiceInterface;
 import com.fdkankan.model.constants.ConstantFileName;
 import com.fdkankan.model.constants.ConstantFilePath;
 import com.fdkankan.model.constants.UploadFilePath;
 import com.fdkankan.model.enums.ModelTypeEnums;
 import com.fdkankan.model.utils.CreateObjUtil;
-import com.fdkankan.model.utils.SceneUtil;
 import com.fdkankan.rabbitmq.bean.BuildSceneCallMessage;
 import com.fdkankan.rabbitmq.bean.BuildSceneResultMqMessage;
 import com.fdkankan.rabbitmq.util.RabbitMqProducer;
@@ -32,7 +34,10 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import java.io.File;
 import java.nio.charset.StandardCharsets;
-import java.util.*;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 
@@ -49,23 +54,17 @@ import java.util.stream.Collectors;
 @RefreshScope
 public class BuildSxRelocationServiceImpl implements IBuildSceneService {
 
-    @Value("${queue.modeling.modeling-call}")
-    private String queueModelingCall;
     @Value("${queue.modeling.sx-relocation-post:sx-relocation-post}")
     private String queueModelingPost;
     @Value("${model.type:#{null}}")
     private String modelType;
     @Value("${env:gn}")
     private String env;
-    @Value("#{'${build.scene.post.not-delete-nas-nums:}'.split(',')}")
-    private List<String> notDeleteNasNumList;
     @Autowired
     private RabbitMqProducer mqProducer;
     @Resource
     private FYunFileServiceInterface fYunFileService;
     @Autowired
-    private FYunFileConfig fYunFileConfig;
-    @Autowired
     private IScenePlusService scenePlusService;
     @Autowired
     private IScenePlusExtService scenePlusExtService;
@@ -74,10 +73,6 @@ public class BuildSxRelocationServiceImpl implements IBuildSceneService {
     @Autowired
     private ICommonService commonService;
     @Autowired
-    private ISceneColdStorageService sceneColdStorageService;
-    @Autowired
-    private IntermitSceneService intermitSceneService;
-    @Autowired
     private IBuildService buildService;
     @Autowired
     private IRelocationBatchDetailService relocationBatchDetailService;
@@ -316,79 +311,4 @@ public class BuildSxRelocationServiceImpl implements IBuildSceneService {
 
         fYunFileService.uploadFile(statusJson.toJSONString().getBytes(StandardCharsets.UTF_8), dataViewPath + "status.json");
     }
-
-    private void updateDbPlus(int sceneSource,Long space,String videosJson, Long computeTime,boolean isObj,ScenePlusExt scenePlusExt){
-
-        scenePlusExt.setSpace(space);
-        scenePlusExt.setComputeTime(computeTime);
-        scenePlusExt.setAlgorithmTime(new Date());
-        scenePlusExt.setVideos(videosJson);
-        scenePlusExt.setIsObj(isObj ? 1 : 0);
-
-        if(ModelTypeEnums.TILE_CODE.equals(modelType)){
-            scenePlusExt.setSceneScheme(3);
-        }
-
-        switch (SceneSource.get(sceneSource)){
-            case BM:
-                scenePlusExt.setSceneResolution(SceneResolution.two_K.code());
-                scenePlusExt.setSceneFrom(SceneFrom.PRO.code());
-                break;
-            case SM:
-                scenePlusExt.setSceneResolution(SceneResolution.one_k.code());
-                scenePlusExt.setSceneFrom(SceneFrom.LITE.code());
-                break;
-            case ZT:
-                scenePlusExt.setSceneResolution(SceneResolution.four_K.code());
-                scenePlusExt.setSceneFrom(SceneFrom.MINION.code());
-                break;
-            case JG:
-                scenePlusExt.setSceneResolution(SceneResolution.four_K.code());
-                scenePlusExt.setSceneFrom(SceneFrom.LASER.code());
-                break;
-            case SG:
-                scenePlusExt.setSceneResolution(SceneResolution.four_K.code());
-                scenePlusExt.setSceneFrom(SceneFrom.LASER.code());
-                break;
-        }
-
-        String sceneKind = scenePlusExt.getSceneScheme() == 3 ? SceneKind.FACE.code():SceneKind.TILES.code();
-        scenePlusExt.setSceneKind(sceneKind);
-//        scenePlusExt.setModelKind(modelKind);
-
-        //统计点位数量
-        scenePlusExt.setShootCount(this.getShootCount(scenePlusExt));
-
-        scenePlusExtService.updateById(scenePlusExt);
-    }
-
-    private Integer getShootCount(ScenePlusExt scenePlusExt){
-        Integer shootCount = null;
-        String homePath = SceneUtil.getHomePath(scenePlusExt.getDataSource());
-        JSONObject dataFdageObj = JSON.parseObject(fYunFileService.getFileContent(homePath.concat("data.fdage")));
-        if(Objects.nonNull(dataFdageObj)){
-            JSONArray points = dataFdageObj.getJSONArray("points");
-            if(CollUtil.isNotEmpty(points)){
-                shootCount = points.size();
-            }
-        }
-        if(Objects.nonNull(shootCount) && shootCount > 0){
-            return shootCount;
-        }
-
-        String slamDataStr = fYunFileService.getFileContent(homePath.concat("slam_data.json"));
-        JSONObject slamDataObj = JSON.parseObject(slamDataStr);
-        if(Objects.nonNull(slamDataObj)){
-            JSONArray viewsInfo = slamDataObj.getJSONArray("views_info");
-            if(CollUtil.isNotEmpty(viewsInfo)){
-                shootCount = viewsInfo.stream().mapToInt(info -> {
-                    return  ((JSONObject) info).getJSONArray("list_pose").size();
-                }).sum();
-            }
-        }
-
-        return shootCount;
-    }
-
-
 }

+ 6 - 0
src/main/java/com/fdkankan/contro/service/impl/SceneFileBuildServiceImpl.java

@@ -1027,6 +1027,12 @@ public class SceneFileBuildServiceImpl extends ServiceImpl<ISceneFileBuildMapper
             scenePlus.setSceneSource(SceneSource.QJKK.code());
         }
 
+        scenePlusExt.setIsObj(1);
+        if(cameraTypeService.isLaser(camType)){
+            JSONObject fdageData = JSONObject.parseObject(fYunFileService.getFileContent(SceneUtil.getHomePath(scenePlusExt.getDataSource()) + "data.fdage"));
+            scenePlusExt.setIsObj(fdageData.getIntValue("exportMeshObj"));
+        }
+
         if (cameraTypeService.isLaser(camType)) {
             scenePlusExt.setModelKind(modelKind);
         }