소스 검색

离线包状态

lyhzzz 5 달 전
부모
커밋
74c7bb47bf

+ 1 - 1
src/main/java/com/fdkankan/fusion/controller/ModelController.java

@@ -85,7 +85,7 @@ public class ModelController extends BaseController{
         model.setModelGlbUrl(jsonArray.toJSONString());
         modelService.save(model);
 
-        caseNumService.addModeByCaseId(param.getCaseId(),model.getModelId());
+        //caseNumService.addModeByCaseId(param.getCaseId(),model.getModelId());
         return ResultData.ok(model);
     }
 

+ 9 - 0
src/main/java/com/fdkankan/fusion/down/CaseDownService.java

@@ -217,10 +217,19 @@ public class CaseDownService {
         }
 
         List<FusionNumVo> listByCaseId = fusionNumService.getListByCaseId(caseId,null);
+
         jsonObject.put(basePath+caseFusion+caseId, ResultData.ok(listByCaseId));
         for (FusionNumVo fusion : listByCaseId) {
             jsonObject.put(basePath+fusionMeter+fusion.getFusionId(), ResultData.ok(fusionMeterService.getListByFusionId(fusion.getFusionId(),null)));
         }
+        for (FusionNumVo fusionNumVo : listByCaseId) {
+            //下载媒体库模型
+            if(fusionNumVo.getSceneData() != null){
+                if(fusionNumVo.getSceneData().getType() ==3 && StringUtils.isNotBlank(fusionNumVo.getSceneData().getModelGlbUrl()) ){
+                    downModel(caseId,fusionNumVo.getSceneData().getModelGlbUrl(),caseOffPath);
+                }
+            }
+        }
 
         List<SceneVo> sceneVos = caseService.sceneList(param);
         for (SceneVo sceneData : sceneVos) {

+ 2 - 0
src/main/java/com/fdkankan/fusion/service/IFusionNumService.java

@@ -42,4 +42,6 @@ public interface IFusionNumService extends IService<FusionNum> {
     List<FusionNum> getByFusionId(Integer oldFusionId);
 
     HashMap<Integer, FusionNum> getByCaseId(Integer caseId);
+
+    List<FusionNum> getByModelId(List<Integer> modelIds);
 }

+ 10 - 0
src/main/java/com/fdkankan/fusion/service/impl/FusionNumServiceImpl.java

@@ -312,4 +312,14 @@ public class FusionNumServiceImpl extends ServiceImpl<IFusionNumMapper, FusionNu
         }
         return map;
     }
+
+    @Override
+    public List<FusionNum> getByModelId(List<Integer> modelIds) {
+        if(modelIds.isEmpty()){
+            return new ArrayList<>();
+        }
+        LambdaQueryWrapper<FusionNum> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(FusionNum::getModelId,modelIds);
+        return this.list(wrapper);
+    }
 }

+ 7 - 2
src/main/java/com/fdkankan/fusion/task/InitService.java

@@ -95,6 +95,8 @@ public class InitService {
     IModelService modelService;
     @Autowired
     ICaseFilesService caseFilesService;
+    @Autowired
+    IFusionNumService fusionNumService;
 
 
     public void delMediaLibrary() {
@@ -109,12 +111,15 @@ public class InitService {
                 JSONArray jsonArray = new JSONArray();
                 jsonArray.add(commonUpload.getFileUrl());
                 wrapper.like(Model::getModelGlbUrl,jsonArray.toJSONString());
-                Long count1 = modelService.count(wrapper);
+                List<Model> list = modelService.list(wrapper);
+
+                List<Integer> modelIds = list.stream().map(Model::getModelId).collect(Collectors.toList());
+                List<FusionNum> fusionNums = fusionNumService.getByModelId(modelIds);
 
                 LambdaQueryWrapper<CaseFiles> wrapper2 = new LambdaQueryWrapper<>();
                 wrapper2.like(CaseFiles::getFilesUrl,commonUpload.getFileUrl());
                 Long count2 = caseFilesService.count(wrapper2);
-                if(count1 + count2 <=0){
+                if(fusionNums.size() + count2 <=0){
                     delUploadList.add(commonUpload);
                 }
             }else {