lyhzzz vor 2 Monaten
Ursprung
Commit
6264312cbb
1 geänderte Dateien mit 15 neuen und 2 gelöschten Zeilen
  1. 15 2
      src/main/java/com/fdkankan/fusion/down/CaseDownService.java

+ 15 - 2
src/main/java/com/fdkankan/fusion/down/CaseDownService.java

@@ -159,7 +159,6 @@ public class CaseDownService {
             setRedisProcess(caseId,10);
             //创建data.json并下载资源
             createDataJson(caseId,caseOffPath);
-            setRedisProcess(caseId,50);
             //打包zip
             //caseOfflineService.saveByCase(caseId,caseOffPath);
             setRedisProcess(caseId,100,caseOffPath);
@@ -197,9 +196,23 @@ public class CaseDownService {
     public DownloadProcessVo process(Integer caseId) {
         DownloadProcessVo downVo = new DownloadProcessVo();
         String redisKey = String.format(downProcessKey, caseId);
+        String redisKey2 = "fusion:down:process:caseId:"+ caseId;
+
         if(redisUtil.hasKey(redisKey)){
-            return JSONObject.parseObject(redisUtil.get(redisKey),DownloadProcessVo.class);
+            DownloadProcessVo downloadProcessVo = JSONObject.parseObject(redisUtil.get(redisKey), DownloadProcessVo.class);
+            if(redisUtil.hasKey(redisKey2)){
+                redisUtil.set(redisKey2,String.valueOf(Integer.parseInt(redisUtil.get(redisKey2)) + 1),60*60);
+            }else {
+                redisUtil.set(redisKey2,"1",60*60);
+            }
+            if(downloadProcessVo.getPercent() == 100){
+                downloadProcessVo.setPercent(100);
+            }else{
+                Integer percent = Integer.parseInt(redisUtil.get(redisKey2)) <100 ? Integer.parseInt(redisUtil.get(redisKey2)) : 99;
+                downloadProcessVo.setPercent(percent);
+            }
         }
+
         return downVo;
     }