Explorar o código

update-laser-scene-status 修改

lyhzzz hai 1 ano
pai
achega
ce5431187d

+ 1 - 0
src/main/java/com/fdkankan/manage_jp/common/RedisKeyUtil.java

@@ -12,4 +12,5 @@ public class RedisKeyUtil {
     public static final String laserCopyLock = "manage:laser:copy:lock:";
 
 
+    public static final String SCENE_VERSION = "scenejson:num:%s";
 }

+ 2 - 2
src/main/java/com/fdkankan/manage_jp/httpClient/service/LaserService.java

@@ -100,7 +100,7 @@ public class LaserService {
         params.put("sceneCodes", Arrays.asList(num));
         params.put("status", status);
         //return laserClient.updateStatus( params);
-        rabbitMqProducer.sendByWorkQueue("update-build-status",params);
+        rabbitMqProducer.sendByWorkQueue("update-laser-scene-status",params);
     }
     public void updateBuildObjStatus(String num,Integer status) {
         //生成OBJ状态,0,未生成 1完成,2计算中
@@ -108,7 +108,7 @@ public class LaserService {
         params.put("sceneCodes",  Arrays.asList(num));
         params.put("buildObjStatus", status);
         //return laserClient.updateStatus( params);
-        rabbitMqProducer.sendByWorkQueue("update-build-status",params);
+        rabbitMqProducer.sendByWorkQueue("update-laser-scene-status",params);
 
     }
     public void toBind(List<String> snCodes,Boolean bind,String phone) {

+ 12 - 4
src/main/java/com/fdkankan/manage_jp/service/impl/DownService.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.fdkankan.common.constant.SceneConstant;
 import com.fdkankan.manage_jp.common.DownloadStatusEnum;
+import com.fdkankan.manage_jp.common.RedisKeyUtil;
 import com.fdkankan.manage_jp.common.ResultCode;
 import com.fdkankan.manage_jp.entity.*;
 import com.fdkankan.manage_jp.exception.BusinessException;
@@ -100,11 +101,18 @@ public class DownService implements IDownService {
             version = proEdit.getVersion();
         }
         if(scenePro == null && scenePlus !=null){
-            SceneEditInfo sceneEditInfo = sceneEditInfoService.getByScenePlusId(scenePlus.getId());
-            if(sceneEditInfo == null){
-                throw new BusinessException(SceneConstant.FAILURE_CODE_5005, SceneConstant.FAILURE_MSG_5005);
+            String redisKey = String.format(RedisKeyUtil.SCENE_VERSION,scenePlus.getNum());
+            if(!redisUtil.hasKey(redisKey) || StringUtils.isBlank(redisUtil.get(redisKey))){
+                SceneEditInfo sceneEditInfo = sceneEditInfoService.getByScenePlusId(scenePlus.getId());
+                if(sceneEditInfo == null){
+                    throw new BusinessException(SceneConstant.FAILURE_CODE_5005, SceneConstant.FAILURE_MSG_5005);
+                }
+                version = sceneEditInfo.getVersion();
+            }else {
+                String redisObj = redisUtil.get(redisKey);
+                JSONObject obj = JSONObject.parseObject(redisObj);
+                version = obj.getInteger("version");
             }
-            version = sceneEditInfo.getVersion();
         }
         return version;
     }