Browse Source

更改link-scene.json为links.json

dengsixing 3 years ago
parent
commit
fb7f3db449

+ 1 - 1
4dkankan-center-scene/src/main/java/com/fdkankan/scene/bean/SceneJsonBean.java

@@ -184,7 +184,7 @@ public class SceneJsonBean {
     /**
      * 是否有场景关联(0-否,1-是)
      */
-    private Integer linkScenes;
+    private Integer links;
 
 
 }

+ 2 - 2
4dkankan-center-scene/src/main/java/com/fdkankan/scene/entity/SceneEditInfoExt.java

@@ -64,8 +64,8 @@ public class SceneEditInfoExt {
     /**
      * 是否有场景关联(0-否,1-是)
      */
-    @TableField("link_scenes")
-    private Integer linkScenes;
+    @TableField("links")
+    private Integer links;
 
     /**
      * 创建时间

+ 126 - 126
4dkankan-center-scene/src/main/java/com/fdkankan/scene/listener/RabbitMqListener.java

@@ -1,131 +1,131 @@
-package com.fdkankan.scene.listener;
-
-import com.alibaba.fastjson.JSONObject;
-import com.fdkankan.rabbitmq.bean.BuildSceneCallMessage;
-import com.fdkankan.rabbitmq.bean.BuildSceneFailDTMqMessage;
-import com.fdkankan.rabbitmq.bean.BuildSceneResultMqMessage;
-import com.fdkankan.scene.service.IBuildSceneDTService;
-import com.fdkankan.scene.service.IBuildScenePostService;
-import com.fdkankan.scene.service.IBuildScenePreService;
-import com.fdkankan.scene.service.impl.BuildSceneDTServiceImpl;
-import com.rabbitmq.client.Channel;
-import java.nio.charset.StandardCharsets;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.amqp.core.Message;
-import org.springframework.amqp.rabbit.annotation.Queue;
-import org.springframework.amqp.rabbit.annotation.RabbitListener;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-/**
- * <p>
- * TODO
- * </p>
- *
- * @author dengsixing
- * @since 2022/4/19
- **/
-@Slf4j
-@Component
-public class RabbitMqListener {
-    @Value("${queue.modeling.modeling-pre}")
-    private String queueModelingPre;
-    @Value("${queue.modeling.modeling-post}")
-    private String queueModelingPost;
-    @Value("${queue.modeling.modeling-dt}")
-    private String queueModelingDt;
-
-    @Autowired
-    IBuildScenePreService buildScenePreService;
-    @Autowired
-    IBuildScenePostService buildScenePostService;
-    @Autowired
-    IBuildSceneDTService buildSceneDTService;
-
-
-
-    /**
-     * 开启了手动确认模式,如果没有手动确认,消费者不会重试,当服务重启时会再次消费,因为rabbitmq认为你还没有处理完你的业务
-     * queuesToDeclare = @Queue("${queue.modeling.modeling-test}"),  如果队列不不存在会自动创建队列
-     * concurrency = "3"    设置消费线程数,每个线程每次只拉取一条消息消费
-     */
+//package com.fdkankan.scene.listener;
+//
+//import com.alibaba.fastjson.JSONObject;
+//import com.fdkankan.rabbitmq.bean.BuildSceneCallMessage;
+//import com.fdkankan.rabbitmq.bean.BuildSceneFailDTMqMessage;
+//import com.fdkankan.rabbitmq.bean.BuildSceneResultMqMessage;
+//import com.fdkankan.scene.service.IBuildSceneDTService;
+//import com.fdkankan.scene.service.IBuildScenePostService;
+//import com.fdkankan.scene.service.IBuildScenePreService;
+//import com.fdkankan.scene.service.impl.BuildSceneDTServiceImpl;
+//import com.rabbitmq.client.Channel;
+//import java.nio.charset.StandardCharsets;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.amqp.core.Message;
+//import org.springframework.amqp.rabbit.annotation.Queue;
+//import org.springframework.amqp.rabbit.annotation.RabbitListener;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.beans.factory.annotation.Value;
+//import org.springframework.stereotype.Component;
+//
+///**
+// * <p>
+// * TODO
+// * </p>
+// *
+// * @author dengsixing
+// * @since 2022/4/19
+// **/
+//@Slf4j
+//@Component
+//public class RabbitMqListener {
+//    @Value("${queue.modeling.modeling-pre}")
+//    private String queueModelingPre;
+//    @Value("${queue.modeling.modeling-post}")
+//    private String queueModelingPost;
+//    @Value("${queue.modeling.modeling-dt}")
+//    private String queueModelingDt;
+//
+//    @Autowired
+//    IBuildScenePreService buildScenePreService;
+//    @Autowired
+//    IBuildScenePostService buildScenePostService;
+//    @Autowired
+//    IBuildSceneDTService buildSceneDTService;
+//
+//
+//
+//    /**
+//     * 开启了手动确认模式,如果没有手动确认,消费者不会重试,当服务重启时会再次消费,因为rabbitmq认为你还没有处理完你的业务
+//     * queuesToDeclare = @Queue("${queue.modeling.modeling-test}"),  如果队列不不存在会自动创建队列
+//     * concurrency = "3"    设置消费线程数,每个线程每次只拉取一条消息消费
+//     */
+////    @RabbitListener(
+////        queuesToDeclare = @Queue("${queue.modeling.modeling-test}"),
+////        concurrency = "1"
+////    )
+////    public void receiveMessageDsx(Channel channel, Message message) throws Exception {
+////        channel.queueDeclare();
+////        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
+////        log.info("开始消费消息-" + msg + "-" + Thread.currentThread().getId());
+////        Thread.sleep(5000L);
+////        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
+////        log.info("结束消息-" + Thread.currentThread().getId());
+////    }
+//
+//
+//    /**
+//     * 场景计算前置资源准备处理
+//     * @param channel
+//     * @param message
+//     * @throws Exception
+//     */
 //    @RabbitListener(
-//        queuesToDeclare = @Queue("${queue.modeling.modeling-test}"),
-//        concurrency = "1"
+//        queuesToDeclare = @Queue("${queue.modeling.modeling-pre}"),
+//        concurrency = "${maxThread.modeling.modeling-pre}"
 //    )
-//    public void receiveMessageDsx(Channel channel, Message message) throws Exception {
-//        channel.queueDeclare();
+//    public void buildScenePreHandler(Channel channel, Message message) throws Exception {
+//        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
+//        String correlationId = (String) correlation;
 //        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
-//        log.info("开始消费消息-" + msg + "-" + Thread.currentThread().getId());
-//        Thread.sleep(5000L);
+//        log.info("场景计算资源准备开始,队列名:{},id:{},消息体:{}", queueModelingPre, correlationId, msg);
+//        BuildSceneCallMessage buildSceneMessage = JSONObject.parseObject(msg, BuildSceneCallMessage.class);
+//        Thread.sleep(2000L);
+//        buildScenePreService.buildScenePre(buildSceneMessage);
 //        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
-//        log.info("结束消息-" + Thread.currentThread().getId());
 //    }
-
-
-    /**
-     * 场景计算前置资源准备处理
-     * @param channel
-     * @param message
-     * @throws Exception
-     */
-    @RabbitListener(
-        queuesToDeclare = @Queue("${queue.modeling.modeling-pre}"),
-        concurrency = "${maxThread.modeling.modeling-pre}"
-    )
-    public void buildScenePreHandler(Channel channel, Message message) throws Exception {
-        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
-        String correlationId = (String) correlation;
-        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
-        log.info("场景计算资源准备开始,队列名:{},id:{},消息体:{}", queueModelingPre, correlationId, msg);
-        BuildSceneCallMessage buildSceneMessage = JSONObject.parseObject(msg, BuildSceneCallMessage.class);
-        Thread.sleep(2000L);
-        buildScenePreService.buildScenePre(buildSceneMessage);
-        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
-    }
-
-    /**
-     * 场景计算后置结果处理
-     * @param channel
-     * @param message
-     * @throws Exception
-     */
-    @RabbitListener(
-        queuesToDeclare = @Queue("${queue.modeling.modeling-post}"),
-        concurrency = "${maxThread.modeling.modeling-post}"
-    )
-    public void buildScenePostHandler(Channel channel, Message message) throws Exception {
-        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
-        String correlationId = (String) correlation;
-        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
-        log.info("场景计算结果处理开始,队列名:{},id:{},消息体:{}", queueModelingPost, correlationId, msg);
-        BuildSceneResultMqMessage resultMessage = JSONObject.parseObject(msg, BuildSceneResultMqMessage.class);
-        Thread.sleep(2000L);
-        buildScenePostService.buildScenePost(resultMessage);
-        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
-    }
-
-    /**
-     * 场景计算发送钉钉消息
-     * @param channel
-     * @param message
-     * @throws Exception
-     */
-    @RabbitListener(
-        queuesToDeclare = @Queue("${queue.modeling.modeling-dt}"),
-        concurrency = "${maxThread.modeling.modeling-dt}"
-    )
-    public void buildSceneDTHandler(Channel channel, Message message) throws Exception {
-        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
-        String correlationId = (String) correlation;
-        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
-        log.info("发送钉钉消息处理,队列名:{},id:{},消息体:{}", queueModelingDt, correlationId, msg);
-        BuildSceneFailDTMqMessage dtMessage = JSONObject.parseObject(msg, BuildSceneFailDTMqMessage.class);
-        buildSceneDTService.handFail(dtMessage.getReason(), dtMessage.getServerPath(),
-            dtMessage.getNum(), dtMessage.getHostName(), BuildSceneDTServiceImpl.contentExt);
-        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
-    }
-
-
-}
+//
+//    /**
+//     * 场景计算后置结果处理
+//     * @param channel
+//     * @param message
+//     * @throws Exception
+//     */
+//    @RabbitListener(
+//        queuesToDeclare = @Queue("${queue.modeling.modeling-post}"),
+//        concurrency = "${maxThread.modeling.modeling-post}"
+//    )
+//    public void buildScenePostHandler(Channel channel, Message message) throws Exception {
+//        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
+//        String correlationId = (String) correlation;
+//        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
+//        log.info("场景计算结果处理开始,队列名:{},id:{},消息体:{}", queueModelingPost, correlationId, msg);
+//        BuildSceneResultMqMessage resultMessage = JSONObject.parseObject(msg, BuildSceneResultMqMessage.class);
+//        Thread.sleep(2000L);
+//        buildScenePostService.buildScenePost(resultMessage);
+//        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
+//    }
+//
+//    /**
+//     * 场景计算发送钉钉消息
+//     * @param channel
+//     * @param message
+//     * @throws Exception
+//     */
+//    @RabbitListener(
+//        queuesToDeclare = @Queue("${queue.modeling.modeling-dt}"),
+//        concurrency = "${maxThread.modeling.modeling-dt}"
+//    )
+//    public void buildSceneDTHandler(Channel channel, Message message) throws Exception {
+//        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
+//        String correlationId = (String) correlation;
+//        String msg = new String(message.getBody(), StandardCharsets.UTF_8);
+//        log.info("发送钉钉消息处理,队列名:{},id:{},消息体:{}", queueModelingDt, correlationId, msg);
+//        BuildSceneFailDTMqMessage dtMessage = JSONObject.parseObject(msg, BuildSceneFailDTMqMessage.class);
+//        buildSceneDTService.handFail(dtMessage.getReason(), dtMessage.getServerPath(),
+//            dtMessage.getNum(), dtMessage.getHostName(), BuildSceneDTServiceImpl.contentExt);
+//        channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
+//    }
+//
+//
+//}

+ 11 - 11
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/impl/SceneEditInfoServiceImpl.java

@@ -319,7 +319,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         String dataViewPath = String.format(UploadFilePath.DATA_VIEW_PATH, num);
         String imgViewPath = String.format(UploadFilePath.IMG_VIEW_PATH, num);
 
-        //生成link-scene.json并上传到发布目录
+        //生成links.json并上传到发布目录
         String linkPanKey = String.format(RedisKey.SCENE_LINKPAN_DATA, num);
         Map<String, String> linkPanMap = redisUtil.hmget(linkPanKey);
         if(CollUtil.isEmpty(linkPanMap)){
@@ -329,13 +329,11 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         linkPanMap.values().stream().forEach(linkPan->{
             linkPanArr.add(JSON.parseObject(linkPan));
         });
-        String linkScenePath = dataViewPath + "link-scene.json";
+        String linkScenePath = dataViewPath + "links.json";
         uploadToOssUtil.upload(linkPanArr.toString().getBytes(), linkScenePath);
 
-        //删除发布目录中的场景关联切图目录
-        uploadToOssUtil.deleteFile(imgViewPath + "panorama_edit");
         //拷贝编辑目录到发布目录
-        uploadToOssUtil.copyFiles(imgEditPath + "panorama_edit",imgViewPath + "panorama_edit");
+        uploadToOssUtil.copyFiles(imgEditPath + "panorama",imgViewPath + "panorama");
 
     }
 
@@ -1832,12 +1830,14 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
             if(fileJson.getIntValue("clazz") == 4){
                 img = "pan/low/" + uploadFile.replace("low/", "");
                 map.put(uploadFilePath, imgEditPath + "pan/low/" + uploadFile.replace("low/", ""));
+                //上传缩略图到panorama
+                map.put(uploadFilePath, imgEditPath + "panorama/" + sid);
                 continue;
             }
 
             //tiles文件夹,亚马逊没有裁剪图片api,不需要上传4k图
             if(fileJson.getIntValue("clazz") == 5){
-                map.put(uploadFilePath, imgEditPath + "panorama_edit/" + sid + File.separator + uploadFile);
+                map.put(uploadFilePath, imgEditPath + "panorama/" + sid + File.separator + uploadFile);
             }
 
             //tiles文件夹,亚马逊瓦片图
@@ -1854,7 +1854,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         Map<String, String> result = new HashMap<>();
         result.put("type", type);
         result.put("img", img);
-        result.put("path", "panorama_edit/" + sid);
+        result.put("path", "panorama/" + sid);
         return ResultData.ok(result);
     }
 
@@ -2039,7 +2039,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         //更新linkscenes字段
         sceneEditInfoExtService.update(
             new LambdaUpdateWrapper<SceneEditInfoExt>()
-                .set(SceneEditInfoExt::getLinkScenes, hashTags ? CommonStatus.YES.code() : CommonStatus.NO.code())
+                .set(SceneEditInfoExt::getLinks, hashTags ? CommonStatus.YES.code() : CommonStatus.NO.code())
                 .eq(SceneEditInfoExt::getEditInfoId, sceneEditInfo.getId()));
 
         //更新场景版本
@@ -2083,7 +2083,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         }
         jsonObject.put("styles", styleList);
 
-        String linkScenePath = String.format(ConstantFilePath.SCENE_USER_PATH_V4, num) + "link-scene.json";
+        String linkScenePath = String.format(ConstantFilePath.SCENE_USER_PATH_V4, num) + "links.json";
         String lockKey = String.format(RedisLockKey.LOCK_LINK_SCENE_JSON, num);
         boolean lock = redisLockUtil.lock(lockKey, RedisKey.EXPIRE_TIME_1_MINUTE);
         if(!lock){
@@ -2140,7 +2140,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
                 return;
             }
             String linkSceneFilePath = String.format(ConstantFilePath.SCENE_USER_PATH_V4, num);
-            String linkSceneData = FileUtils.readFile(linkSceneFilePath + "link-scene.json");
+            String linkSceneData = FileUtils.readFile(linkSceneFilePath + "links.json");
             if(StrUtil.isEmpty(linkSceneData)){
                 return;
             }
@@ -2201,7 +2201,7 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
                 return;
             }
             String linkSceneFilePath = String.format(ConstantFilePath.SCENE_USER_PATH_V4, num);
-            String linkSceneData = FileUtils.readFile(linkSceneFilePath + "link-scene.json");
+            String linkSceneData = FileUtils.readFile(linkSceneFilePath + "links.json");
             if(StrUtil.isEmpty(linkSceneData)){
                 return;
             }

+ 1 - 1
4dkankan-center-scene/src/main/java/com/fdkankan/scene/vo/SceneInfoVO.java

@@ -174,7 +174,7 @@ public class SceneInfoVO {
     /**
      * 是否有场景关联(0-否,1-是)
      */
-    private Integer linkScenes;
+    private Integer links;
 
 
 

+ 1 - 1
4dkankan-center-scene/src/main/resources/bootstrap-test.yml

@@ -33,7 +33,7 @@ spring:
             refresh: true
       discovery:
         server-addr: 120.24.144.164:8848
-        namespace: 4dkankan-test
+        namespace: 4dkankan-dev
     sentinel:
       transport:
         dashboard: 120.24.144.164:8888