package org.jeecg.modules.wps.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.wps.dto.FileListDTO;
import org.jeecg.modules.wps.dto.FileReqDTO;
import org.jeecg.modules.wps.entity.WpsFile;
import org.jeecg.modules.wps.util.Token;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

/**
 * wps文件
 * @author jeecg-boot
 * @date   2020-06-01
 * @version V1.0
 */
public interface IWpsFileService extends IService<WpsFile> {

    Map<String, Object> getFileInfo(String userId, String filePath, String fileType,String fileId);

    Map<String, Object> fileSave(MultipartFile file, String userId,String fileId);

    Map<String, Object> fileVersion(Integer version);

    void fileRename(String name, String userId,String fileId);

    Map<String, Object> fileHistory(FileReqDTO req);

    Map<String, Object> fileNew(MultipartFile file, String userId);

    Token getViewUrl(String fileUrl, boolean b);

    Token getViewUrl(String fileUrl, String userId,boolean b);

    Token getPlatformScriptViewUrl(String fileUrl, String userId,boolean b);

    List<FileListDTO> getFileList();

    Map<String,Object> getFileListByPage(int pageNum,int pageSize);

    int delFile(String id);

    WpsFile uploadFile(MultipartFile file,String userId);

    String createTemplateFile(String template);

    Map<String, Object> bindProject(String fileId, Long projectId);
}
