Преглед изворни кода

场景升级 pro和plus的id可能会冲突

dengsixing пре 2 година
родитељ
комит
1557e30828

+ 5 - 4
src/main/java/com/fdkankan/scene/service/impl/SceneUpgradeToV4Service.java

@@ -118,6 +118,7 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
     public void upgrade(long sceneProId, boolean reUpgrade)  throws Exception{
 
         ScenePro scenePro = sceneProService.getById(sceneProId);
+        ScenePlus scenePlus = scenePlusService.getByNum(scenePro.getNum());
         //线程开始,正在执行线程数+1
         String num = scenePro.getNum();
         String dataPath = String.format("data/data%s/", num);
@@ -154,7 +155,7 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
             //生成编辑表
             SceneEditInfo sceneEditInfo = sceneEditInfoService.getOne(
                 new LambdaQueryWrapper<SceneEditInfo>()
-                    .eq(SceneEditInfo::getSceneProId, scenePro.getId()));
+                    .eq(SceneEditInfo::getScenePlusId, scenePlus.getId()));
             SceneEditInfoExt sceneEditInfoExt = null;
             SceneEditControls sceneEditControls = null;
             if(sceneEditInfo == null){
@@ -166,7 +167,7 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
 
                 sceneEditInfo = new SceneEditInfo();
                 sceneEditInfo.setSceneProId(scenePro.getId());
-                sceneEditInfo.setScenePlusId(scenePro.getId());
+                sceneEditInfo.setScenePlusId(scenePlus.getId());
                 sceneEditInfo.setFloorLogo(sceneProEdit.getFloorLogo());
                 sceneEditInfo.setFloorLogoSize(sceneProEdit.getFloorLogoSize());
                 sceneEditInfo.setFloorLogoFile("user".equals(sceneProEdit.getFloorLogo()) ? "floorLogo-user.png" : null);    //floorLogoImg.png -> floorLogo-user.png
@@ -214,7 +215,7 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
                 sceneEditInfoExt = new SceneEditInfoExt();
                 sceneEditInfoExt.setEditInfoId(sceneEditInfo.getId());
                 sceneEditInfoExt.setSceneProId(scenePro.getId());
-                sceneEditInfoExt.setScenePlusId(scenePro.getId());
+                sceneEditInfoExt.setScenePlusId(scenePlus.getId());
                 sceneEditInfoExt.setFloorPlanAngle(sceneProEdit.getFloorPlanAngle() == null ? 0f : Float.parseFloat(sceneProEdit.getFloorPlanAngle()));
                 sceneEditInfoExt.setFloorPlanCompass(this.getFloorPlanCompass(num));
                 sceneEditInfoExt.setVrNum(sceneProEdit.getVrNum());
@@ -362,7 +363,7 @@ public class SceneUpgradeToV4Service implements ISceneUpgradeToV4Service {
             }
             ScenePlusExt scenePlusExt = scenePlusExtService.getOne(
                 new LambdaQueryWrapper<ScenePlusExt>()
-                    .eq(ScenePlusExt::getPlusId, scenePro.getId()));
+                    .eq(ScenePlusExt::getPlusId, scenePlus.getId()));
             String thumbUrl = null;
             if(StrUtil.isNotEmpty(scenePro.getThumb())
                 && scenePro.getThumb().contains(imagePath) && !reUpgrade){//重算触发的升级,不需要再设置thum的url地址