Przeglądaj źródła

ComputerUtil 放开一些之前注释掉的方法

by su 3 lat temu
rodzic
commit
135b1d92f9

+ 323 - 323
4dkankan-common/src/main/java/com/fdkankan/common/util/ComputerUtil.java

@@ -25,240 +25,240 @@ import java.util.*;
 public class ComputerUtil {
 public class ComputerUtil {
 
 
 
 
-//    public static Map<String,String> computer(String projectNum, String path, String buildType, String ossType) throws Exception{
-//        Map<String,String> map = new HashMap<String,String>();
-//        path = path.replace("//", "/");
-//
-//        log.info("开始建模:"+projectNum);
-//        //构建算法isModel去掉,因此改成空字符串
-//        if("V2".equals(buildType)){
-//            CreateObjUtil.build3dModelOld(path, "");
-//        }
-//        if("V3".equals(buildType)){
-//            CreateObjUtil.build3dModel(path, "");
-////        CreateObjUtil.build3dModel(unicode, "");
-//        }
-//        log.info("建模完成转换数据:"+projectNum);
-//
-//        boolean vision2 = false;
-//        //读取upload文件,检验需要上传的文件是否存在
-//        String uploadData = FileUtils.readFile(path + File.separator + "results" +File.separator+"upload.json");
-//        JSONObject uploadJson = null;
-//        JSONArray array = null;
-//        if(uploadData!=null) {
-//            uploadJson = JSONObject.parseObject(uploadData);
-//            array = uploadJson.getJSONArray("upload");
-//        }
-//        if(array == null){
-//            String instanceId = FileUtils.readFile("/opt/hosts/hosts.txt");
-//            FileUtils.writeFile(path + File.separator + "javaErrorNow.log", instanceId + ":计算错误!");
-//
-//            Thread.sleep(10000L);
-//            FileUtils.writeFile(path + File.separator + "javaError.log", instanceId + ":计算错误!");
-//            throw new Exception("upload.json数据出错");
-//        }
-//        JSONObject fileJson = null;
-//        String fileName = "";
-//        String meshfix = "";  //双模型时候会有改文件路径
-//        for(int i = 0, len = array.size(); i < len; i++){
-//            fileJson = array.getJSONObject(i);
-//            fileName = fileJson.getString("file");
-//            //文件不存在抛出异常
-//            if(!new File(path + File.separator + "results" +File.separator + fileName).exists()){
-//                throw new Exception(path + File.separator + "results" +File.separator + fileName+"文件不存在");
-//            }
-//
-//            //判断是否有vision2.txt
-//            if("vision2.txt".equals(fileName)){
-//                vision2 = true;
-//            }
-//
-//            //tex文件夹
-//            if(fileJson.getIntValue("clazz") == 2 && !fileJson.containsKey("pack-file")){
-//                if(fileName.contains("meshfix.txt")){
-//                    meshfix = fileName;
-//                }else {
-//                    map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
-//                            projectNum+"/"+ ConstantFileName.modelUUID+"_50k_texture_jpg_high1/"+fileName.replace("tex/", ""));
-//                }
-//                continue;
-//            }
-//
-//            //high文件夹
-//            if(fileJson.getIntValue("clazz") == 3){
-//                map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
-//                        projectNum+"/pan/high/"+ fileName.replace("high/", ""));
-//                continue;
-//            }
-//            //low文件夹
-//            if(fileJson.getIntValue("clazz") == 4){
-//                map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
-//                        projectNum+"/pan/low/"+ fileName.replace("low/", ""));
-//                continue;
-//            }
-//
-//            //tiles文件夹,亚马逊没有裁剪图片api,不需要上传4k图
-////            if(fileJson.getIntValue("clazz") == 5 && !"s3".equals(ossType)){
-////                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
-////                        projectNum+ File.separator + fileName);
-////                continue;
-////            }
-//            if(fileJson.getIntValue("clazz") == 5 ){
-//                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
-//                        projectNum+ File.separator + fileName);
-//                continue;
-//            }
-//
-//            //tiles文件夹,亚马逊瓦片图
-//            if(fileJson.getIntValue("clazz") == 7 ){
-//                if(fileName.contains("/4k_")){
-//                    continue;
-//                }
+    public static Map<String,String> computer(String projectNum, String path, String buildType, String ossType) throws Exception{
+        Map<String,String> map = new HashMap<String,String>();
+        path = path.replace("//", "/");
+
+        log.info("开始建模:"+projectNum);
+        //构建算法isModel去掉,因此改成空字符串
+        if("V2".equals(buildType)){
+            CreateObjUtil.build3dModelOld(path, "");
+        }
+        if("V3".equals(buildType)){
+            CreateObjUtil.build3dModel(path, "");
+//        CreateObjUtil.build3dModel(unicode, "");
+        }
+        log.info("建模完成转换数据:"+projectNum);
+
+        boolean vision2 = false;
+        //读取upload文件,检验需要上传的文件是否存在
+        String uploadData = FileUtils.readFile(path + File.separator + "results" +File.separator+"upload.json");
+        JSONObject uploadJson = null;
+        JSONArray array = null;
+        if(uploadData!=null) {
+            uploadJson = JSONObject.parseObject(uploadData);
+            array = uploadJson.getJSONArray("upload");
+        }
+        if(array == null){
+            String instanceId = FileUtils.readFile("/opt/hosts/hosts.txt");
+            FileUtils.writeFile(path + File.separator + "javaErrorNow.log", instanceId + ":计算错误!");
+
+            Thread.sleep(10000L);
+            FileUtils.writeFile(path + File.separator + "javaError.log", instanceId + ":计算错误!");
+            throw new Exception("upload.json数据出错");
+        }
+        JSONObject fileJson = null;
+        String fileName = "";
+        String meshfix = "";  //双模型时候会有改文件路径
+        for(int i = 0, len = array.size(); i < len; i++){
+            fileJson = array.getJSONObject(i);
+            fileName = fileJson.getString("file");
+            //文件不存在抛出异常
+            if(!new File(path + File.separator + "results" +File.separator + fileName).exists()){
+                throw new Exception(path + File.separator + "results" +File.separator + fileName+"文件不存在");
+            }
+
+            //判断是否有vision2.txt
+            if("vision2.txt".equals(fileName)){
+                vision2 = true;
+            }
+
+            //tex文件夹
+            if(fileJson.getIntValue("clazz") == 2 && !fileJson.containsKey("pack-file")){
+                if(fileName.contains("meshfix.txt")){
+                    meshfix = fileName;
+                }else {
+                    map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
+                            projectNum+"/"+ ConstantFileName.modelUUID+"_50k_texture_jpg_high1/"+fileName.replace("tex/", ""));
+                }
+                continue;
+            }
+
+            //high文件夹
+            if(fileJson.getIntValue("clazz") == 3){
+                map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
+                        projectNum+"/pan/high/"+ fileName.replace("high/", ""));
+                continue;
+            }
+            //low文件夹
+            if(fileJson.getIntValue("clazz") == 4){
+                map.put(path + File.separator + "results" +File.separator+ fileName,"images/images"+
+                        projectNum+"/pan/low/"+ fileName.replace("low/", ""));
+                continue;
+            }
+
+            //tiles文件夹,亚马逊没有裁剪图片api,不需要上传4k图
+//            if(fileJson.getIntValue("clazz") == 5 && !"s3".equals(ossType)){
 //                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
 //                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
 //                        projectNum+ File.separator + fileName);
 //                        projectNum+ File.separator + fileName);
 //                continue;
 //                continue;
 //            }
 //            }
-//
-//            //updown文件复制一份到ecs中并去掉换行符
-//            if(fileJson.getIntValue("clazz") == 10){
-//                String updown = FileUtils.readFile(path + File.separator + "results" +File.separator+ fileName);
-//                JSONObject updownJson = JSONObject.parseObject(updown);
-//                FileUtils.writeFile(ConstantFilePath.SCENE_PATH + "data" + File.separator + "data" + projectNum +
-//                        File.separator + fileName.replace("updown", "mapping"), updownJson.toString());
-//                continue;
-//            }
-//
-//            //video视频文件或封面图
-//            if(fileJson.getIntValue("clazz") == 11 || fileJson.getIntValue("cl" +
-//                    "azz") == 12){
-//                map.put(path + File.separator + "results" + File.separator+ fileName,"video/video"+
-//                        projectNum+ File.separator + fileName.replace("videos/", ""));
-//
-//                if(fileName.contains(".mp4")){
-////                    CreateObjUtil.mp4ToFlv(path + File.separator + "results" + File.separator+ fileName,
-////                            path + File.separator + "results" + File.separator+ fileName.replace("mp4", "flv"));
-//
-//                    map.put(path + File.separator + "results" + File.separator+ fileName.replace("mp4", "flv"),"video/video"+
-//                            projectNum+ File.separator + fileName.replace("videos/", "").replace("mp4", "flv"));
-//                }
-//            }
-//
-//            //2048的模型和贴图
-//            if(fileJson.getIntValue("clazz") == 16){
-//                map.put(path + File.separator + "results" + File.separator+ fileName,"data/data"+
-//                        projectNum+ File.separator + fileName);
-//            }
-//
-//            if(fileJson.getIntValue("clazz") == 18){
-//                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
-//                        projectNum+ File.separator + fileName);
-//            }
-//        }
-//
-//        CreateObjUtil.convertTxtToDam( path + File.separator + "results" + File.separator+"tex"+File.separator+"modeldata.txt", path + File.separator + "results" +File.separator+ ConstantFileName.modelUUID+"_50k.dam");
-//        CreateObjUtil.convertDamToLzma(path + File.separator + "results");
-//        CreateObjUtil.convertTxtToDam( path + File.separator + "results" +File.separator+"tex"+File.separator+"modeldata.txt", path + File.separator + "results" + File.separator+ConstantFileName.modelUUID+"_50k.dam");
-//        //有meshfix,表示双模型
-//        if(!"".equals(meshfix)){
-//            CreateObjUtil.convertTxtToDam( path + File.separator + "results" + File.separator+meshfix, path + File.separator + "results" +File.separator+ ConstantFileName.modelUUID+"_50k2.dam");
-//            CreateObjUtil.convertDamToLzma2(path + File.separator + "results");
-//            CreateObjUtil.convertTxtToDam( path + File.separator + "results" +File.separator+meshfix, path + File.separator + "results" + File.separator+ConstantFileName.modelUUID+"_50k2.dam");
-//            map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k2.dam.lzma", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k2.dam.lzma");
-//            map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k2.dam", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k2.dam");
-//        }
-//        //8目相机有两个vision.txt因此第二个叫vision2.txt
-//        CreateObjUtil.convertTxtToVisionmodeldata(path + File.separator + "results" +File.separator+"vision.txt",path + File.separator + "results" +File.separator+"vision.modeldata");
-//        if(vision2){
-//            CreateObjUtil.convertTxtToVisionmodeldata(path + File.separator + "results" +File.separator+"vision2.txt",path + File.separator + "results" +File.separator+"vision2.modeldata");
-//            map.put(path + File.separator + "results" +File.separator+"vision2.modeldata", "images/images"+projectNum+"/"+"vision2.modeldata");
-//        }else {
-//            CreateObjUtil.convertTxtToVisionmodeldataCommon(path + File.separator + "results" +File.separator+"vision.txt",path + File.separator + "results" +File.separator+"vision.modeldata");
-//        }
-//        log.info("数据转换完成:"+projectNum);
-//
-//        File file = new File(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam.lzma");
-//        while(!file.exists())
-//        {
-//            Thread.sleep(60000);
-//        }
-//
-//        map.put(path + File.separator + "results" +File.separator+"vision.modeldata", "images/images"+projectNum+"/"+"vision.modeldata");
-//        map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam.lzma", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k.dam.lzma");
-//        map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k.dam");
-//
-//        file = new File(ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum);
-//        if(!file.exists())
-//        {
-//            file.mkdir();
-//        }
-//        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floor.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floor.json", true);
-//        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floorplan.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floor.json", true);
-//        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floorplan.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floorplan.json", true);
-//        log.info("floor.json路径:"+ path + File.separator + "results" +File.separator+"floor.json");
-//        map.put(path + File.separator + "results" +File.separator+"floor.json","data/data"+projectNum+"/floor.json");
-//        map.put(path + File.separator + "results" +File.separator+"floorplan.json","data/data"+projectNum+"/floor.json");
-////        map.put(path + File.separator + "results" +File.separator+"floorplan_cad.json","data/data"+projectNum+"/house_floor.json");
-//        map.put(path + File.separator + "results" +File.separator+"floorplan_cad.json","data/data"+projectNum+"/floorplan_cad.json");
-//        log.info("准备上传文件到oss:"+projectNum);
-//        return map;
-//    }
-//
-//
-//    public static Map<String,String> computerRebuildVideo(String projectNum, String path) throws Exception{
-//        Map<String,String> map = new HashMap<String,String>();
-//        path = path.replace("//", "/");
-//
-//        log.info("开始建模:"+projectNum);
-//        //构建算法isModel去掉,因此改成空字符串
-//        CreateObjUtil.build3dModel(path, "");
-//        log.info("建模完成转换数据:"+projectNum);
-//
-//        boolean vision2 = false;
-//        //读取upload文件,检验需要上传的文件是否存在
-//        String uploadData = FileUtils.readFile(path + File.separator + "results" +File.separator+"upload.json");
-//        JSONObject uploadJson = null;
-//        JSONArray array = null;
-//        if(uploadData!=null) {
-//            uploadJson = JSONObject.parseObject(uploadData);
-//            array = uploadJson.getJSONArray("upload");
-//        }
-//
-//        if(array == null){
-//            String instanceId = FileUtils.readFile("/opt/hosts/hosts.txt");
-//            FileUtils.writeFile(path + File.separator + "javaErrorNow.log", instanceId + ":计算错误!");
-//
-//            Thread.sleep(10000L);
-//            FileUtils.writeFile(path + File.separator + "javaError.log", instanceId + ":计算错误!");
-//            throw new Exception("upload.json数据出错");
-//        }
-//
-//        JSONObject fileJson = null;
-//        String fileName = "";
-//        for(int i = 0, len = array.size(); i < len; i++) {
-//            fileJson = array.getJSONObject(i);
-//            fileName = fileJson.getString("file");
-//            //文件不存在抛出异常
-//            if (!new File(path + File.separator + "results" + File.separator + fileName).exists()) {
-//                throw new Exception(path + File.separator + "results" + File.separator + fileName + "文件不存在");
-//            }
-//
-//            //video视频文件或封面图
-//            if (fileJson.getIntValue("clazz") == 20) {
-//                if (fileName.contains(".flv")) {
-//                    map.put(path + File.separator + "results" + File.separator + fileName, "video/video" +
-//                            projectNum + File.separator + fileName.replace("videos/", ""));
-//                }
-//
-//                if (fileName.contains(".mp4")) {
-//                    map.put(path + File.separator + "results" + File.separator + fileName, "video/video" +
-//                            projectNum + File.separator + fileName.replace("videos/", ""));
-//                }
-//            }
-//        }
-//
-//        log.info("准备上传文件到oss:"+projectNum);
-//        return map;
-//    }
+            if(fileJson.getIntValue("clazz") == 5 ){
+                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
+                        projectNum+ File.separator + fileName);
+                continue;
+            }
+
+            //tiles文件夹,亚马逊瓦片图
+            if(fileJson.getIntValue("clazz") == 7 ){
+                if(fileName.contains("/4k_")){
+                    continue;
+                }
+                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
+                        projectNum+ File.separator + fileName);
+                continue;
+            }
+
+            //updown文件复制一份到ecs中并去掉换行符
+            if(fileJson.getIntValue("clazz") == 10){
+                String updown = FileUtils.readFile(path + File.separator + "results" +File.separator+ fileName);
+                JSONObject updownJson = JSONObject.parseObject(updown);
+                FileUtils.writeFile(ConstantFilePath.SCENE_PATH + "data" + File.separator + "data" + projectNum +
+                        File.separator + fileName.replace("updown", "mapping"), updownJson.toString());
+                continue;
+            }
+
+            //video视频文件或封面图
+            if(fileJson.getIntValue("clazz") == 11 || fileJson.getIntValue("cl" +
+                    "azz") == 12){
+                map.put(path + File.separator + "results" + File.separator+ fileName,"video/video"+
+                        projectNum+ File.separator + fileName.replace("videos/", ""));
+
+                if(fileName.contains(".mp4")){
+//                    CreateObjUtil.mp4ToFlv(path + File.separator + "results" + File.separator+ fileName,
+//                            path + File.separator + "results" + File.separator+ fileName.replace("mp4", "flv"));
+
+                    map.put(path + File.separator + "results" + File.separator+ fileName.replace("mp4", "flv"),"video/video"+
+                            projectNum+ File.separator + fileName.replace("videos/", "").replace("mp4", "flv"));
+                }
+            }
+
+            //2048的模型和贴图
+            if(fileJson.getIntValue("clazz") == 16){
+                map.put(path + File.separator + "results" + File.separator+ fileName,"data/data"+
+                        projectNum+ File.separator + fileName);
+            }
+
+            if(fileJson.getIntValue("clazz") == 18){
+                map.put(path + File.separator + "results" + File.separator+ fileName,"images/images"+
+                        projectNum+ File.separator + fileName);
+            }
+        }
+
+        CreateObjUtil.convertTxtToDam( path + File.separator + "results" + File.separator+"tex"+File.separator+"modeldata.txt", path + File.separator + "results" +File.separator+ ConstantFileName.modelUUID+"_50k.dam");
+        CreateObjUtil.convertDamToLzma(path + File.separator + "results");
+        CreateObjUtil.convertTxtToDam( path + File.separator + "results" +File.separator+"tex"+File.separator+"modeldata.txt", path + File.separator + "results" + File.separator+ConstantFileName.modelUUID+"_50k.dam");
+        //有meshfix,表示双模型
+        if(!"".equals(meshfix)){
+            CreateObjUtil.convertTxtToDam( path + File.separator + "results" + File.separator+meshfix, path + File.separator + "results" +File.separator+ ConstantFileName.modelUUID+"_50k2.dam");
+            CreateObjUtil.convertDamToLzma2(path + File.separator + "results");
+            CreateObjUtil.convertTxtToDam( path + File.separator + "results" +File.separator+meshfix, path + File.separator + "results" + File.separator+ConstantFileName.modelUUID+"_50k2.dam");
+            map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k2.dam.lzma", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k2.dam.lzma");
+            map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k2.dam", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k2.dam");
+        }
+        //8目相机有两个vision.txt因此第二个叫vision2.txt
+        CreateObjUtil.convertTxtToVisionmodeldata(path + File.separator + "results" +File.separator+"vision.txt",path + File.separator + "results" +File.separator+"vision.modeldata");
+        if(vision2){
+            CreateObjUtil.convertTxtToVisionmodeldata(path + File.separator + "results" +File.separator+"vision2.txt",path + File.separator + "results" +File.separator+"vision2.modeldata");
+            map.put(path + File.separator + "results" +File.separator+"vision2.modeldata", "images/images"+projectNum+"/"+"vision2.modeldata");
+        }else {
+            CreateObjUtil.convertTxtToVisionmodeldataCommon(path + File.separator + "results" +File.separator+"vision.txt",path + File.separator + "results" +File.separator+"vision.modeldata");
+        }
+        log.info("数据转换完成:"+projectNum);
+
+        File file = new File(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam.lzma");
+        while(!file.exists())
+        {
+            Thread.sleep(60000);
+        }
+
+        map.put(path + File.separator + "results" +File.separator+"vision.modeldata", "images/images"+projectNum+"/"+"vision.modeldata");
+        map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam.lzma", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k.dam.lzma");
+        map.put(path + File.separator + "results" +File.separator+ConstantFileName.modelUUID+"_50k.dam", "images/images"+projectNum+"/"+ConstantFileName.modelUUID+"_50k.dam");
+
+        file = new File(ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum);
+        if(!file.exists())
+        {
+            file.mkdir();
+        }
+        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floor.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floor.json", true);
+        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floorplan.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floor.json", true);
+        FileUtils.copyFile(path + File.separator + "results" +File.separator+"floorplan.json", ConstantFilePath.SCENE_PATH+"data"+File.separator+"data"+projectNum+File.separator+"floorplan.json", true);
+        log.info("floor.json路径:"+ path + File.separator + "results" +File.separator+"floor.json");
+        map.put(path + File.separator + "results" +File.separator+"floor.json","data/data"+projectNum+"/floor.json");
+        map.put(path + File.separator + "results" +File.separator+"floorplan.json","data/data"+projectNum+"/floor.json");
+//        map.put(path + File.separator + "results" +File.separator+"floorplan_cad.json","data/data"+projectNum+"/house_floor.json");
+        map.put(path + File.separator + "results" +File.separator+"floorplan_cad.json","data/data"+projectNum+"/floorplan_cad.json");
+        log.info("准备上传文件到oss:"+projectNum);
+        return map;
+    }
+
+
+    public static Map<String,String> computerRebuildVideo(String projectNum, String path) throws Exception{
+        Map<String,String> map = new HashMap<String,String>();
+        path = path.replace("//", "/");
+
+        log.info("开始建模:"+projectNum);
+        //构建算法isModel去掉,因此改成空字符串
+        CreateObjUtil.build3dModel(path, "");
+        log.info("建模完成转换数据:"+projectNum);
+
+        boolean vision2 = false;
+        //读取upload文件,检验需要上传的文件是否存在
+        String uploadData = FileUtils.readFile(path + File.separator + "results" +File.separator+"upload.json");
+        JSONObject uploadJson = null;
+        JSONArray array = null;
+        if(uploadData!=null) {
+            uploadJson = JSONObject.parseObject(uploadData);
+            array = uploadJson.getJSONArray("upload");
+        }
+
+        if(array == null){
+            String instanceId = FileUtils.readFile("/opt/hosts/hosts.txt");
+            FileUtils.writeFile(path + File.separator + "javaErrorNow.log", instanceId + ":计算错误!");
+
+            Thread.sleep(10000L);
+            FileUtils.writeFile(path + File.separator + "javaError.log", instanceId + ":计算错误!");
+            throw new Exception("upload.json数据出错");
+        }
+
+        JSONObject fileJson = null;
+        String fileName = "";
+        for(int i = 0, len = array.size(); i < len; i++) {
+            fileJson = array.getJSONObject(i);
+            fileName = fileJson.getString("file");
+            //文件不存在抛出异常
+            if (!new File(path + File.separator + "results" + File.separator + fileName).exists()) {
+                throw new Exception(path + File.separator + "results" + File.separator + fileName + "文件不存在");
+            }
+
+            //video视频文件或封面图
+            if (fileJson.getIntValue("clazz") == 20) {
+                if (fileName.contains(".flv")) {
+                    map.put(path + File.separator + "results" + File.separator + fileName, "video/video" +
+                            projectNum + File.separator + fileName.replace("videos/", ""));
+                }
+
+                if (fileName.contains(".mp4")) {
+                    map.put(path + File.separator + "results" + File.separator + fileName, "video/video" +
+                            projectNum + File.separator + fileName.replace("videos/", ""));
+                }
+            }
+        }
+
+        log.info("准备上传文件到oss:"+projectNum);
+        return map;
+    }
 
 
     /**
     /**
      *  标定算法
      *  标定算法
@@ -306,39 +306,39 @@ public class ComputerUtil {
         return map;
         return map;
     }
     }
 //
 //
-//    public static void createJson(String path, String splitType, String skyboxType, String dataDescribe,
-//                                  String sceneNum, String dataSource) throws Exception{
-//        JSONObject projectJson = new JSONObject();
-//        projectJson.put("version", "201909231830");
-//        projectJson.put("protocol", "file api 1.4");
-//        projectJson.put("uuid", UUID.randomUUID().toString());
-//        projectJson.put("description", "");
-//        projectJson.put("time", System.currentTimeMillis());
-//        projectJson.put("category", "default");
-//        projectJson.put("tag", null);
-//        projectJson.put("status", null);
-//        projectJson.put("sceneNum", sceneNum);
-//        projectJson.put("dataSource", dataSource);
-//        FileUtils.writeFile(path + File.separator + "project.json", projectJson.toString());
-//
-//        JSONObject dataJson = new JSONObject();
-//        dataJson.put("split_type", splitType);
-//        dataJson.put("skybox_type", skyboxType);
-//        dataJson.put("extras", null);
-//        FileUtils.writeFile(path + File.separator + "data.json", dataJson.toString());
-//    }
-//
-//    public static void createExtras(String rebuildParam, String hdrParam, String path) throws Exception {
-//
-//        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "videos_hdr_param.json", hdrParam);
-//
-//        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "required_videos.json", rebuildParam);
-//
-//    }
-//
-//    public static void createExtras(String rebuildParam,String path) throws Exception {
-//        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "image-ROI.json", rebuildParam);
-//    }
+    public static void createJson(String path, String splitType, String skyboxType, String dataDescribe,
+                                  String sceneNum, String dataSource) throws Exception{
+        JSONObject projectJson = new JSONObject();
+        projectJson.put("version", "201909231830");
+        projectJson.put("protocol", "file api 1.4");
+        projectJson.put("uuid", UUID.randomUUID().toString());
+        projectJson.put("description", "");
+        projectJson.put("time", System.currentTimeMillis());
+        projectJson.put("category", "default");
+        projectJson.put("tag", null);
+        projectJson.put("status", null);
+        projectJson.put("sceneNum", sceneNum);
+        projectJson.put("dataSource", dataSource);
+        FileUtils.writeFile(path + File.separator + "project.json", projectJson.toString());
+
+        JSONObject dataJson = new JSONObject();
+        dataJson.put("split_type", splitType);
+        dataJson.put("skybox_type", skyboxType);
+        dataJson.put("extras", null);
+        FileUtils.writeFile(path + File.separator + "data.json", dataJson.toString());
+    }
+
+    public static void createExtras(String rebuildParam, String hdrParam, String path) throws Exception {
+
+        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "videos_hdr_param.json", hdrParam);
+
+        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "required_videos.json", rebuildParam);
+
+    }
+
+    public static void createExtras(String rebuildParam,String path) throws Exception {
+        FileUtils.writeFile( path + File.separator + "extras" + File.separator + "image-ROI.json", rebuildParam);
+    }
 
 
     /**
     /**
      * 生成标定数据
      * 生成标定数据
@@ -365,66 +365,66 @@ public class ComputerUtil {
         FileUtils.writeFile(calPath + "/data.json", dataJson.toString());
         FileUtils.writeFile(calPath + "/data.json", dataJson.toString());
     }
     }
 
 
-//    public static Map<String, String> getTypeString(String cameraType, String algorithm, String resolution){
-//        Map<String, String> map = new HashMap<>();
-//        String splitType = "";
-//        String skyboxType = "";
-//        String dataDescribe = "";
-//        if(Integer.parseInt(cameraType) >= 4){
-//            if("0".equals(resolution)){
-////            skyboxType = "SKYBOX_V4";  //tiles
-////            skyboxType = "SKYBOX_V6";    //high,low,4k
-//                skyboxType = "SKYBOX_V7";    //high,low,2k
-//            }else {
-//                skyboxType = "SKYBOX_V1";
-//            }
-//            splitType = "SPLIT_V1";
-////            skyboxType = "SKYBOX_V4";  //tiles
-//            dataDescribe = "double spherical";
-//
-//            if(Integer.parseInt(cameraType) == 5 ){
-//                //新双目相机
-////              skyboxType = "SKYBOX_V9";
-//                splitType = "SPLIT_V9";
-//                skyboxType = "SKYBOX_V1";
-//            }
-//            if(Integer.parseInt(cameraType) == 6){
-//                //小红屋新双目相机
-////                    skyboxType = "SKYBOX_V9";
-//                splitType = "SPLIT_V3";
-//                skyboxType = "SKYBOX_V7";
-//            }
-//
-//            if(Integer.parseInt(cameraType) == 13){
-//                //转台相机
-//                skyboxType = "SKYBOX_V6";
-//                splitType = "SPLIT_V12";
-//            }
-//
-//            if(Integer.parseInt(cameraType) == 14){
-//                //转台相机
-//                log.info("激光转台相机调用算法");
-//                skyboxType = "SKYBOX_V11";
-//                splitType = "SPLIT_V14";
-//            }
-//
-//        }else {
-//            if("sfm".equals(algorithm)){
-//                splitType = "SPLIT_V2";
-//                skyboxType = "SKYBOX_V1";
-//                dataDescribe = "old sfm";
-//            }else {
-//                splitType = "SPLIT_V3";
-//                skyboxType = "SKYBOX_V1";
-//                dataDescribe = "old slam";
-//            }
-//        }
-//        map.put("splitType", splitType);
-//        map.put("skyboxType", skyboxType);
-//        map.put("dataDescribe", dataDescribe);
-//        return map;
-//    }
-//
+    public static Map<String, String> getTypeString(String cameraType, String algorithm, String resolution){
+        Map<String, String> map = new HashMap<>();
+        String splitType = "";
+        String skyboxType = "";
+        String dataDescribe = "";
+        if(Integer.parseInt(cameraType) >= 4){
+            if("0".equals(resolution)){
+//            skyboxType = "SKYBOX_V4";  //tiles
+//            skyboxType = "SKYBOX_V6";    //high,low,4k
+                skyboxType = "SKYBOX_V7";    //high,low,2k
+            }else {
+                skyboxType = "SKYBOX_V1";
+            }
+            splitType = "SPLIT_V1";
+//            skyboxType = "SKYBOX_V4";  //tiles
+            dataDescribe = "double spherical";
+
+            if(Integer.parseInt(cameraType) == 5 ){
+                //新双目相机
+//              skyboxType = "SKYBOX_V9";
+                splitType = "SPLIT_V9";
+                skyboxType = "SKYBOX_V1";
+            }
+            if(Integer.parseInt(cameraType) == 6){
+                //小红屋新双目相机
+//                    skyboxType = "SKYBOX_V9";
+                splitType = "SPLIT_V3";
+                skyboxType = "SKYBOX_V7";
+            }
+
+            if(Integer.parseInt(cameraType) == 13){
+                //转台相机
+                skyboxType = "SKYBOX_V6";
+                splitType = "SPLIT_V12";
+            }
+
+            if(Integer.parseInt(cameraType) == 14){
+                //转台相机
+                log.info("激光转台相机调用算法");
+                skyboxType = "SKYBOX_V11";
+                splitType = "SPLIT_V14";
+            }
+
+        }else {
+            if("sfm".equals(algorithm)){
+                splitType = "SPLIT_V2";
+                skyboxType = "SKYBOX_V1";
+                dataDescribe = "old sfm";
+            }else {
+                splitType = "SPLIT_V3";
+                skyboxType = "SKYBOX_V1";
+                dataDescribe = "old slam";
+            }
+        }
+        map.put("splitType", splitType);
+        map.put("skyboxType", skyboxType);
+        map.put("dataDescribe", dataDescribe);
+        return map;
+    }
+
 //    public static SceneEntity createScene(String projectNum, Long cameraId, String cameraName, String phoneId, String scenepsd,
 //    public static SceneEntity createScene(String projectNum, Long cameraId, String cameraName, String phoneId, String scenepsd,
 //                                          String unicode, Long cameraType, String fileId, String prefix,
 //                                          String unicode, Long cameraType, String fileId, String prefix,
 //                                          String imgsName, String pic, String isModel, Long userId, String userName,
 //                                          String imgsName, String pic, String isModel, Long userId, String userName,