|
@@ -3,6 +3,7 @@ package com.fdkankan.contro.mq.service.impl;
|
|
|
import cn.hutool.core.exceptions.ExceptionUtil;
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.fdkankan.common.constant.CommonOperStatus;
|
|
@@ -11,6 +12,7 @@ import com.fdkankan.common.constant.ModelKind;
|
|
|
import com.fdkankan.common.constant.SceneSource;
|
|
|
import com.fdkankan.common.util.FileUtils;
|
|
|
import com.fdkankan.contro.entity.ScenePlus;
|
|
|
+import com.fdkankan.contro.entity.ScenePlusExt;
|
|
|
import com.fdkankan.contro.entity.ScenePro;
|
|
|
import com.fdkankan.contro.entity.SceneProEdit;
|
|
|
import com.fdkankan.contro.mq.service.IBuildSceneService;
|
|
@@ -26,6 +28,8 @@ import com.fdkankan.model.utils.CreateObjUtil;
|
|
|
import com.fdkankan.rabbitmq.bean.BuildSceneCallMessage;
|
|
|
import com.fdkankan.rabbitmq.bean.BuildSceneResultMqMessage;
|
|
|
import com.fdkankan.rabbitmq.util.RabbitMqProducer;
|
|
|
+import com.fdkankan.redis.constant.RedisKey;
|
|
|
+import com.fdkankan.redis.util.RedisUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
@@ -93,6 +97,11 @@ public class BuildObjServiceImpl implements IBuildSceneService {
|
|
|
@Autowired
|
|
|
private ICommonService commonService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IScenePlusExtService scenePlusExtService;
|
|
|
+ @Autowired
|
|
|
+ private RedisUtil redisUtil;
|
|
|
+
|
|
|
@Override
|
|
|
public void buildScenePre(BuildSceneCallMessage message) throws Exception{
|
|
|
boolean success = false;
|
|
@@ -258,6 +267,22 @@ public class BuildObjServiceImpl implements IBuildSceneService {
|
|
|
LambdaUpdateWrapper<ScenePlus> plusUpdateWrapper = new LambdaUpdateWrapper<ScenePlus>()
|
|
|
.set(ScenePlus::getSceneStatus, -2).eq(ScenePlus::getNum, projectNum);
|
|
|
scenePlusService.update(plusUpdateWrapper);
|
|
|
+
|
|
|
+ if(this.modelKind.equals(ModelKind.THREE_D_TILE.code())
|
|
|
+ && CollUtil.isNotEmpty(sdTilesSceneSourceList)
|
|
|
+ && sdTilesSceneSourceList.contains(SceneSource.JG.code())){
|
|
|
+ ScenePlusExt scenePlusExt = scenePlusExtService.getScenePlusExtByPlusId(scenePlus.getId());
|
|
|
+ scenePlusExt.setModelKind(ModelKind.THREE_D_TILE.code());
|
|
|
+
|
|
|
+ String sceneJsonStr = fYunFileService.getFileContent(String.format(UploadFilePath.DATA_VIEW_PATH, projectNum) + "scene.json");
|
|
|
+ if(StrUtil.isNotEmpty(sceneJsonStr)){
|
|
|
+ JSONObject sceneJson = JSON.parseObject(sceneJsonStr);
|
|
|
+ sceneJson.put("modelKind", ModelKind.THREE_D_TILE.code());
|
|
|
+ fYunFileService.uploadFile(sceneJson.toJSONString().getBytes(), String.format(UploadFilePath.DATA_VIEW_PATH, projectNum) + "scene.json");
|
|
|
+ redisUtil.del(String.format(RedisKey.SCENE_JSON, projectNum));
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 如果未升级V4,则升级V4
|