Browse Source

v3 v4共存改造

dengsixing 3 years ago
parent
commit
5a6ae71401

+ 2 - 1
4dkankan-center-modeling/src/main/java/com/fdkankan/modeling/receiver/RabbitMqListener.java

@@ -104,7 +104,8 @@ public class RabbitMqListener {
         concurrency = "${maxThread.modeling.modeling-call}"
     )
     public void buildSceneHandler(Channel channel, Message message) throws Exception {
-        String correlationId = message.getMessageProperties().getCorrelationId();
+        Object correlation = message.getMessageProperties().getHeader("spring_returned_message_correlation");
+        String correlationId = (String) correlation;
         if (ObjectUtils.isEmpty(message.getBody())) {
             SysConstants.SYSTEM_BUILDING = false;
             log.error("消息体为空,退出构建,当前服务器:{}", SysConstants.hostName);

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

@@ -75,7 +75,8 @@ public class RabbitMqListener {
         concurrency = "${maxThread.modeling.modeling-pre}"
     )
     public void buildScenePreHandler(Channel channel, Message message) throws Exception {
-        String correlationId = message.getMessageProperties().getCorrelationId();
+        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);
@@ -95,7 +96,8 @@ public class RabbitMqListener {
         concurrency = "${maxThread.modeling.modeling-post}"
     )
     public void buildScenePostHandler(Channel channel, Message message) throws Exception {
-        String correlationId = message.getMessageProperties().getCorrelationId();
+        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);
@@ -115,7 +117,8 @@ public class RabbitMqListener {
         concurrency = "${maxThread.modeling.modeling-dt}"
     )
     public void buildSceneDTHandler(Channel channel, Message message) throws Exception {
-        String correlationId = message.getMessageProperties().getCorrelationId();
+        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);

+ 13 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/mapper/ISceneUpgradeMapper.java

@@ -29,4 +29,17 @@ public interface ISceneUpgradeMapper extends BaseMapper {
 
     public void transferSceneProEditExt(Long sceneProEditId);
 
+    public void deleteSceneProEdit(Long sceneProEditId);
+
+    public void deleteSceneProEditExt(Long sceneProEditId);
+
+    public void deleteScenePlus(Long sceneProId);
+
+    public void deleteScenePlusExt(Long sceneProId);
+
+    public void deleteScenePro(Long sceneProId);
+
+    public void deleteSceneProExt(Long sceneProId);
+
+
 }

+ 2 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/ISceneEditInfoService.java

@@ -55,6 +55,8 @@ public interface ISceneEditInfoService extends IService<SceneEditInfo> {
 
     ResultData uploadBallScreenVideo(String num,String fileName,MultipartFile file) throws Exception;
 
+    void upgradeVersionToSceneJson(String num) throws Exception;
+
     ResultData sceneSync(String num, String type, String floorPlanJson, String ajkJson, String cameraJson, MultipartFile[] files) throws Exception;
 
     ResultData checkKey(SceneCheckKeyParamVO param) throws Exception;

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

@@ -1190,7 +1190,8 @@ public class SceneEditInfoServiceImpl extends ServiceImpl<ISceneEditInfoMapper,
         return ResultData.ok();
     }
 
-    private void upgradeVersionToSceneJson(String num) throws Exception{
+    @Override
+    public void upgradeVersionToSceneJson(String num) throws Exception{
         String key = String.format(RedisKey.SCENE_JSON, num);
         String objectName = String.format(ConstantFilePath.SCENE_VIEW_DATA_DATA_SCENEJSON, num);
         String objectContent = uploadToOssUtil.getObjectContent(bucket, objectName);

+ 3 - 0
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/impl/SceneProServiceImpl.java

@@ -3057,6 +3057,9 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             sceneEditInfoService.upgradeVersionById(editInfo.getId());
         }
 
+        //更新scene.json版本号
+        sceneEditInfoService.upgradeVersionToSceneJson(param.getNum());
+
 
         return ResultData.ok();
     }

+ 6 - 9
4dkankan-center-scene/src/main/java/com/fdkankan/scene/service/impl/SceneUpgradeToV4Service.java

@@ -115,24 +115,21 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
             sceneProEditV3Service.saveOrUpdate(sceneProEditV3);
 
             //写入sceneProEdit、写入sceneProEditExt
-            sceneProEditService.removeById(sceneProEditV3.getId());
+            sceneUpgradeMapper.deleteSceneProEdit(sceneProEditV3.getId());
             sceneUpgradeMapper.transferSceneProEdit(sceneProEditV3.getId());
-            sceneProEditExtService.remove(new LambdaQueryWrapper<SceneProEditExt>()
-                .eq(SceneProEditExt::getProEditId, sceneProEditV3.getId()));
+            sceneUpgradeMapper.deleteSceneProEditExt(sceneProEditV3.getId());
             sceneUpgradeMapper.transferSceneProEditExt(sceneProEditV3.getId());
 
             //同步到scenePro、sceneProExt
-            sceneProService.removeById(sceneProV3.getId());
+            sceneUpgradeMapper.deleteScenePro(sceneProV3.getId());
             sceneUpgradeMapper.transferScenePro(sceneProV3.getId());
-            sceneProExtService.remove(new LambdaQueryWrapper<SceneProExt>()
-                .eq(SceneProExt::getSceneProId, sceneProV3.getId()));
+            sceneUpgradeMapper.deleteSceneProExt(sceneProV3.getId());
             sceneUpgradeMapper.transferSceneProExt(sceneProV3.getId());
 
             //同步到scenePlus、scenePlus
-            scenePlusService.removeById(sceneProV3.getId());
+            sceneUpgradeMapper.deleteScenePlus(sceneProV3.getId());
             sceneUpgradeMapper.transferScenePlus(sceneProV3.getId());
-            scenePlusExtService.remove(new LambdaQueryWrapper<ScenePlusExt>()
-                .eq(ScenePlusExt::getPlusId, sceneProV3.getId()));
+            sceneUpgradeMapper.deleteScenePlusExt(sceneProV3.getId());
             sceneUpgradeMapper.transferScenePlusExt(sceneProV3.getId());
 
             //发送mq

+ 24 - 0
4dkankan-center-scene/src/main/resources/mapper/scene/SceneUpgradeMapper.xml

@@ -82,4 +82,28 @@
     `create_time`,`update_time`,CASE WHEN rec_status = 'A' THEN 0 ELSE 1 END AS tb_status
     FROM `t_scene_pro_edit_v3` where id = #{sceneProEditId}
   </insert>
+
+  <delete id="deleteSceneProEdit" parameterType="java.lang.Long">
+    delete from t_scene_pro_edit where id = #{sceneProEditId}
+  </delete>
+
+  <delete id="deleteSceneProEditExt" parameterType="java.lang.Long">
+    delete from t_scene_pro_edit_ext where pro_edit_id = #{sceneProEditId}
+  </delete>
+
+  <delete id="deleteScenePlus" parameterType="java.lang.Long">
+    delete from t_scene_plus where id = #{sceneProId}
+  </delete>
+
+  <delete id="deleteScenePlusExt" parameterType="java.lang.Long">
+    delete from t_scene_plus_ext where plus_id = #{sceneProId}
+  </delete>
+
+  <delete id="deleteScenePro" parameterType="java.lang.Long">
+    delete from t_scene_pro where id = #{sceneProId}
+  </delete>
+
+  <delete id="deleteSceneProExt" parameterType="java.lang.Long">
+    delete from t_scene_pro_ext where scene_pro_id = #{sceneProId}
+  </delete>
 </mapper>