Browse Source

Merge remote-tracking branch 'origin/down-version'

# Conflicts:
#	src/main/java/com/fdkankan/ucenter/service/impl/DownService.java
lyhzzz 1 year ago
parent
commit
88d433b510

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

@@ -14,6 +14,7 @@ public class RedisKeyUtil {
     public static final String QRCODE= "4dkankan:qr_code:";
 
     public static final String SCENE_COOPERATION_NUM_USERID = "scene:cooperation:num:userId";
+    public static final String SCENE_VERSION = "scenejson:num:%s";
 
     public static final String laserCopyLock = "ucenter:laser:copy:lock:";
     public static String copySpaceLock =  "ucenter:scene:copy:lock:%s";

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

@@ -9,6 +9,7 @@ import com.fdkankan.redis.constant.RedisKey;
 import com.fdkankan.redis.util.RedisUtil;
 import com.fdkankan.ucenter.common.DownloadStatusEnum;
 import com.fdkankan.ucenter.common.constants.NacosProperty;
+import com.fdkankan.ucenter.common.RedisKeyUtil;
 import com.fdkankan.ucenter.common.constants.ResultCode;
 import com.fdkankan.ucenter.constant.LoginConstant;
 import com.fdkankan.ucenter.entity.*;
@@ -113,11 +114,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;
     }