package jnpf.provider.file; import jnpf.model.FileListVO; import jnpf.model.VisualDataImgModel; import jnpf.model.upload.DownFileModel; import jnpf.model.upload.UploadFileModel; import org.dromara.x.file.storage.core.FileInfo; import java.util.List; /** * 文件上传API * * @author JNPF开发平台组 * @version V3.1.0 * @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com) * @date 2021-07-23 */ public interface FileUploadProvider { /** * 文件上传 * * @param model * @return */ FileInfo uploadFiles(UploadFileModel model); /** * 删除一个对象 * * @param folderName * @param fileName */ void removeFile(String folderName, String fileName); /** * 下载文件 * * @param downFileModel 下载文件模型 * @return */ boolean downFile(DownFileModel downFileModel); /** * 直接在页面上显示图片 * * @param downFileModel 下载文件模型 * @return */ boolean writeImage(DownFileModel downFileModel); /** * 压缩文件夹后上传压缩包 * * @param model 文件上传模型 * @return */ void putFolder(UploadFileModel model); /** * 获取存储桶下文件夹中的内容 *FileListVO * @param folderName 存储桶名 * @return */ List getFileList(String folderName); /** * 获取存储桶下文件夹中的内容 * * @param * @return */ List getVisualList(String folderName); /** * 通过流下载文件 * * @param model */ void downToLocal(UploadFileModel model); /** * 下载文件 返回流 * * @param fileName 文件名 * @param folderName 存储桶名 * @return */ byte[] getInputStream(String fileName, String folderName); /** * 下载代码 * * @param bytes * @param fileName * @param name */ void downloadFile(byte[] bytes, String fileName, String name); /** * 获取默认模板路径 * */ String getDefaultPlatform(); }