2 Commitit 1d7d3533e4 ... 28fdb7bcfd

Tekijä SHA1 Viesti Päivämäärä
  dengsixing 28fdb7bcfd bug-54093 1 viikko sitten
  dengsixing f897309fab bug-54092 1 viikko sitten

+ 6 - 3
src/main/java/com/fdkankan/scene/service/impl/CommonServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fdkankan.scene.service.impl;
 
+import cn.hutool.core.io.FileUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.fdkankan.common.util.FileUtils;
@@ -46,12 +47,14 @@ public class CommonServiceImpl implements ICommonService {
         String filePath = userEditPath + fileName;
         fYunFileService.downloadFile(bucket, filePath, localImagesPath + fileName);
 
+        String extName = FileUtil.extName(fileName);
+
         //视频格式转换
-        CreateObjUtil.mp4ToFlv(localFilePath, localFilePath.replace("mp4", "flv"));
+        CreateObjUtil.mp4ToFlv(localFilePath, localFilePath.replace(extName, "flv"));
 
         //上传
-        String flvFileName = fileName.replace("mp4", "flv");
-        fYunFileService.uploadFile(bucket, localFilePath.replace("mp4", "flv"), userEditPath+flvFileName);
+        String flvFileName = fileName.replace(extName, "flv");
+        fYunFileService.uploadFile(bucket, localFilePath.replace(extName, "flv"), userEditPath+flvFileName);
     }
 
     @Override

+ 8 - 6
src/main/java/com/fdkankan/scene/service/impl/SceneProServiceImpl.java

@@ -1310,13 +1310,15 @@ public class SceneProServiceImpl extends ServiceImpl<ISceneProMapper, ScenePro>
             for (Object floor : floors) {
                 JSONObject floorObj = (JSONObject)floor;
                 JSONArray lods = floorObj.getJSONArray("lods");
-                for (int i = 0; i < lods.size(); i++) {
-                    JSONObject lodObj = (JSONObject) lods.get(i);
-                    String objPath = lodObj.getString("objPath");
-                    if(!objPath.contains("lod_0")){
-                        lods.remove(i);
+                List<Object> list = lods.stream().filter(v -> {
+                    JSONObject lodObj = (JSONObject) v;
+                    String name = lodObj.getString("name");
+                    if ("lod_0".equals(name)) {
+                        return true;
                     }
-                }
+                    return false;
+                }).collect(Collectors.toList());
+                floorObj.put("lods", list);
             }
             FileUtil.writeUtf8String(meshJson.toJSONString(), meshJsonPath);
         }