lyhzzz 6 tháng trước cách đây
mục cha
commit
1de2aff7ca

+ 2 - 0
doc/update-1.8.0.sql

@@ -0,0 +1,2 @@
+ALTER TABLE `fd_fusion`.`t_scene_down_log`
+ADD COLUMN `is_obj` int(1) NULL AFTER `update_time`;

+ 2 - 0
src/main/java/com/fdkankan/fusion/entity/SceneDownLog.java

@@ -92,6 +92,8 @@ public class SceneDownLog implements Serializable {
      */
     @TableField("status")
     private Integer status;
+    @TableField("is_obj")
+    private Integer isObj;
 
     /**
      * 场景版本

+ 1 - 1
src/main/java/com/fdkankan/fusion/service/ISceneDownLogService.java

@@ -16,5 +16,5 @@ public interface ISceneDownLogService extends IService<SceneDownLog> {
 
     Object pageList(SceneDownLogParam param);
 
-    SceneDownLog getByStatusAndNum(String sceneNum, Integer status,Integer version);
+    SceneDownLog getByStatusAndNum(String sceneNum, Integer status,Integer version,Integer isObj);
 }

+ 7 - 6
src/main/java/com/fdkankan/fusion/service/impl/DownService.java

@@ -81,13 +81,13 @@ public class DownService implements IDownService {
         SceneDownLog sceneDownloadLog;
         Integer sceneVersion = getSceneVersion(plus);
 
-        sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0,sceneVersion);
+        sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0,sceneVersion,isObj);
         DownVo downVo = new DownVo();
         if(sceneDownloadLog != null){
             downVo.setDownloadStatus(1);
             return downVo;
         }
-        sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,1,sceneVersion);
+        sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,1,sceneVersion,isObj);
         //下载过,有更改
         if(sceneDownloadLog == null){
             String redisKey = RedisKey.PREFIX_DOWNLOAD_PROGRESS;
@@ -95,7 +95,7 @@ public class DownService implements IDownService {
             redisUtil.del(String.format(redisKey,sceneNum));  // 清除旧的下载信息
             return downVo;
         }
-        saveLog(plus,sceneVersion,type);
+        saveLog(plus,sceneVersion,type,isObj);
         //3下载过,并且没有修改过
         downVo.setDownloadStatus(3);
         downVo.setDownloadUrl(sceneDownloadLog.getDownUrl());
@@ -119,7 +119,7 @@ public class DownService implements IDownService {
         Integer sceneType =  scenePlus.getSceneSource();
         Integer sceneVersion = getSceneVersion( scenePlus);
         log.info("down--sceneType:{},isObj:{}",sceneType,isObj);
-        saveLog(scenePlus,sceneVersion,type);
+        saveLog(scenePlus,sceneVersion,type,isObj);
         if((sceneType == 4 || sceneType == 5) && isObj !=1){ //深时场景
             return SSDownload(sceneNum,userId);
         }
@@ -138,7 +138,7 @@ public class DownService implements IDownService {
         return downVo;
     }
 
-    private void saveLog(ScenePlus scenePlus,Integer sceneVersion,String type){
+    private void saveLog(ScenePlus scenePlus,Integer sceneVersion,String type,Integer isObj){
         //离线包调用,不记录场景下载日志
         if("offline".equals(type)){
             return;
@@ -159,6 +159,7 @@ public class DownService implements IDownService {
         sceneDownloadLogEntity.setDeptId(deptId);
         sceneDownloadLogEntity.setStatus(0);
         sceneDownloadLogEntity.setVersion(sceneVersion);
+        sceneDownloadLogEntity.setIsObj(isObj);
         sceneDownloadLogService.save(sceneDownloadLogEntity);
     }
 
@@ -184,7 +185,7 @@ public class DownService implements IDownService {
         if(StringUtils.isEmpty(result)){
             return new DownloadProcessVo();
         }
-        SceneDownLog sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0,getSceneVersion(scenePlus));
+        SceneDownLog sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0,getSceneVersion(scenePlus),isObj);
 
         DownloadProcessVo downloadProcessVo = JSONObject.parseObject(result, DownloadProcessVo.class);
         if(sceneDownloadLog != null){

+ 2 - 1
src/main/java/com/fdkankan/fusion/service/impl/SceneDownLogServiceImpl.java

@@ -71,11 +71,12 @@ public class SceneDownLogServiceImpl extends ServiceImpl<ISceneDownLogMapper, Sc
     }
 
     @Override
-    public SceneDownLog getByStatusAndNum(String sceneNum, Integer status,Integer sceneVersion) {
+    public SceneDownLog getByStatusAndNum(String sceneNum, Integer status,Integer sceneVersion,Integer isObj) {
         LambdaQueryWrapper<SceneDownLog> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(SceneDownLog::getSceneNum,sceneNum);
         wrapper.eq(SceneDownLog::getStatus,status);
         wrapper.eq(SceneDownLog::getVersion,sceneVersion);
+        wrapper.eq(SceneDownLog::getIsObj,isObj);
         wrapper.orderByDesc(SceneDownLog::getId);
         List<SceneDownLog> list = this.list(wrapper);
         if(list != null && !list.isEmpty()){