package com.fdkankan.scene.service;

import com.fdkankan.scene.entity.SceneFileBuild;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fdkankan.scene.vo.BuildSceneParamVO;
import com.fdkankan.scene.vo.RebuildVedioSceneParamVO;
import com.fdkankan.scene.vo.ResponseSceneFile;
import com.fdkankan.common.response.ResultData;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.multipart.MultipartFile;

/**
 * <p>
 * 场景文件建模表 服务类
 * </p>
 *
 * @author dengsixing
 * @since 2021-12-23
 */
public interface ISceneFileBuildService extends IService<SceneFileBuild> {

    SceneFileBuild findByFileId(String fileId);

    boolean uploadSuccess(String fileId, StringBuilder filePathBuffer);

    SceneFileBuild findByUnicode(String unicode);

    void unzipSingleFile(String filePath);

    ResultData uploadFile(MultipartFile file, String params) throws Exception;

    ResponseSceneFile preUpload(String params) throws Exception;

    ResponseSceneFile getProgress(String params) throws Exception;

    ResultData uploadSuccess(String params) throws Exception;

    ResultData uploadSuccessBuild(String params) throws Exception;

    ResultData turntableUploadSuccess(String params) throws Exception;

    ResultData getS3UploadUrl(String params) throws Exception;

    ResultData buildLiteScene(String prefix, String dataFdage, String zipName, String userName,
                              String password, String oldNum) throws Exception;

    ResultData buildScene(String prefix, String unicode, String zip, String dataFdage) throws Exception;

    ResultData buildScene(@RequestBody BuildSceneParamVO buildScene) throws Exception;

    ResultData rebuildScene(String num) throws Exception;

    ResultData rebuildVideoScene(RebuildVedioSceneParamVO param) throws Exception;

    ResultData rebuildPicScene(@RequestBody RebuildVedioSceneParamVO param) throws Exception;


}
