|
@@ -81,24 +81,28 @@ public class DownService implements IDownService {
|
|
|
SceneDownLog sceneDownloadLog;
|
|
|
Integer sceneVersion = getSceneVersion(plus);
|
|
|
|
|
|
- sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0,sceneVersion);
|
|
|
DownVo downVo = new DownVo();
|
|
|
- if(sceneDownloadLog != null){
|
|
|
- downVo.setDownloadStatus(1);
|
|
|
+ sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,1);
|
|
|
+ //3下载过,并且没有修改过
|
|
|
+ if(sceneDownloadLog != null && sceneDownloadLog.getVersion().intValue() == sceneVersion){
|
|
|
+ downVo.setDownloadStatus(3);
|
|
|
+ downVo.setDownloadUrl(sceneDownloadLog.getDownUrl());
|
|
|
return downVo;
|
|
|
}
|
|
|
- sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,1,sceneVersion);
|
|
|
+
|
|
|
//下载过,有更改
|
|
|
- if(sceneDownloadLog == null){
|
|
|
- String redisKey = RedisKey.PREFIX_DOWNLOAD_PROGRESS;
|
|
|
+ if(sceneDownloadLog != null){
|
|
|
+ String redisKey = RedisKey.PREFIX_DOWNLOAD_PROGRESS_V4;
|
|
|
downVo.setDownloadStatus(2);
|
|
|
redisUtil.del(String.format(redisKey,sceneNum)); // 清除旧的下载信息
|
|
|
return downVo;
|
|
|
+ }else {
|
|
|
+ sceneDownloadLog = sceneDownloadLogService.getByStatusAndNum(sceneNum,0);
|
|
|
+ if(sceneDownloadLog != null){
|
|
|
+ downVo.setDownloadStatus(1);
|
|
|
+ return downVo;
|
|
|
+ }
|
|
|
}
|
|
|
- saveLog(plus,sceneVersion,type);
|
|
|
- //3下载过,并且没有修改过
|
|
|
- downVo.setDownloadStatus(3);
|
|
|
- downVo.setDownloadUrl(sceneDownloadLog.getDownUrl());
|
|
|
return downVo;
|
|
|
|
|
|
}
|
|
@@ -184,7 +188,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);
|
|
|
|
|
|
DownloadProcessVo downloadProcessVo = JSONObject.parseObject(result, DownloadProcessVo.class);
|
|
|
if(sceneDownloadLog != null){
|