代码优化
This commit is contained in:
parent
fbe8b9d3a3
commit
44633b22ab
6
pom.xml
6
pom.xml
@ -6,12 +6,12 @@
|
||||
<parent>
|
||||
<groupId>com.qiwenshare</groupId>
|
||||
<artifactId>qiwenshare</artifactId>
|
||||
<version>1.0.4</version>
|
||||
<version>1.0.5</version>
|
||||
</parent>
|
||||
|
||||
<groupId>com.qiwenshare</groupId>
|
||||
<artifactId>qiwen-file</artifactId>
|
||||
<version>1.0.4-SNAPSHOT</version>
|
||||
<version>1.0.5-SNAPSHOT</version>
|
||||
<name>qiwen-file</name>
|
||||
<description>fileos.qiwenshare.com</description>
|
||||
<packaging>jar</packaging>
|
||||
@ -95,7 +95,7 @@
|
||||
|
||||
<dependency>
|
||||
<groupId>com.qiwenshare</groupId>
|
||||
<artifactId>ufo-spring-boot-starter</artifactId>
|
||||
<artifactId>ufop-spring-boot-starter</artifactId>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
@ -4,7 +4,7 @@ import com.qiwenshare.common.exception.NotLoginException;
|
||||
import com.qiwenshare.common.result.RestResult;
|
||||
import com.qiwenshare.common.result.ResultCodeEnum;
|
||||
|
||||
import com.qiwenshare.ufo.exception.UploadException;
|
||||
import com.qiwenshare.ufop.exception.UploadException;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
|
@ -11,10 +11,10 @@ import com.qiwenshare.file.domain.*;
|
||||
import com.qiwenshare.file.mapper.UserFileMapper;
|
||||
import com.qiwenshare.file.service.UserService;
|
||||
import com.qiwenshare.file.vo.file.FileListVo;
|
||||
import com.qiwenshare.ufo.factory.UFOFactory;
|
||||
import com.qiwenshare.ufo.operation.read.Reader;
|
||||
import com.qiwenshare.ufo.operation.read.domain.ReadFile;
|
||||
import com.qiwenshare.ufo.util.PathUtil;
|
||||
import com.qiwenshare.ufop.factory.UFOPFactory;
|
||||
import com.qiwenshare.ufop.operation.read.Reader;
|
||||
import com.qiwenshare.ufop.operation.read.domain.ReadFile;
|
||||
import com.qiwenshare.ufop.util.PathUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -258,7 +258,7 @@ public class FileDealComp {
|
||||
BeanUtil.copyProperties(userfileResult.get(0), fileSearch);
|
||||
// if (fileSearch.getIsDir() == 0) {
|
||||
//
|
||||
// Reader reader = ufoFactory.getReader(fileSearch.getStorageType());
|
||||
// Reader reader = ufopFactory.getReader(fileSearch.getStorageType());
|
||||
// ReadFile readFile = new ReadFile();
|
||||
// readFile.setFileUrl(fileSearch.getFileUrl());
|
||||
// String content = reader.read(readFile);
|
||||
|
@ -17,10 +17,11 @@ import com.qiwenshare.file.domain.*;
|
||||
import com.qiwenshare.file.dto.*;
|
||||
import com.qiwenshare.file.dto.file.*;
|
||||
import com.qiwenshare.file.vo.file.FileListVo;
|
||||
import com.qiwenshare.ufo.factory.UFOFactory;
|
||||
import com.qiwenshare.ufo.operation.rename.domain.RenameFile;
|
||||
import com.qiwenshare.ufo.util.PathUtil;
|
||||
import com.qiwenshare.ufop.factory.UFOPFactory;
|
||||
import com.qiwenshare.ufop.operation.rename.domain.RenameFile;
|
||||
import com.qiwenshare.ufop.util.PathUtil;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.codec.digest.DigestUtils;
|
||||
@ -56,7 +57,7 @@ public class FileController {
|
||||
@Resource
|
||||
IUserFileService userFileService;
|
||||
@Resource
|
||||
UFOFactory ufoFactory;
|
||||
UFOPFactory ufopFactory;
|
||||
|
||||
@Autowired
|
||||
private ElasticsearchRestTemplate elasticsearchRestTemplate;
|
||||
@ -148,7 +149,7 @@ public class FileController {
|
||||
}
|
||||
UserFile userFile = userFileService.getById(renameFileDto.getUserFileId());
|
||||
|
||||
List<UserFile> userFiles = userFileService.selectUserFileByNameAndPath(renameFileDto.getFileName(), renameFileDto.getFilePath(), sessionUserBean.getUserId());
|
||||
List<UserFile> userFiles = userFileService.selectUserFileByNameAndPath(renameFileDto.getFileName(), userFile.getFilePath(), sessionUserBean.getUserId());
|
||||
if (userFiles != null && !userFiles.isEmpty()) {
|
||||
return RestResult.fail().message("同名文件已存在");
|
||||
}
|
||||
@ -170,7 +171,7 @@ public class FileController {
|
||||
RenameFile renameFile = new RenameFile();
|
||||
renameFile.setSrcName(fileUrl.substring(1));
|
||||
renameFile.setDestName(newFileUrl.substring(1));
|
||||
ufoFactory.getRenamer(file.getStorageType()).rename(renameFile);
|
||||
ufopFactory.getRenamer(file.getStorageType()).rename(renameFile);
|
||||
LambdaUpdateWrapper<FileBean> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
lambdaUpdateWrapper
|
||||
.set(FileBean::getFileUrl, newFileUrl)
|
||||
@ -202,7 +203,11 @@ public class FileController {
|
||||
@Operation(summary = "获取文件列表", description = "用来做前台列表展示", tags = {"file"})
|
||||
@RequestMapping(value = "/getfilelist", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public RestResult getFileList(FileListDTO fileListDto, @RequestHeader("token") String token){
|
||||
public RestResult getFileList(
|
||||
@Parameter(description = "文件路径", required = true) String filePath,
|
||||
@Parameter(description = "当前页", required = true) long currentPage,
|
||||
@Parameter(description = "页面数量", required = true) long pageCount,
|
||||
@RequestHeader("token") String token){
|
||||
|
||||
UserFile userFile = new UserFile();
|
||||
|
||||
@ -218,13 +223,13 @@ public class FileController {
|
||||
|
||||
|
||||
List<FileListVo> fileList = null;
|
||||
userFile.setFilePath(PathUtil.urlDecode(fileListDto.getFilePath()));
|
||||
if (fileListDto.getCurrentPage() == null || fileListDto.getPageCount() == null) {
|
||||
userFile.setFilePath(PathUtil.urlDecode(filePath));
|
||||
if (currentPage == 0 || pageCount == 0) {
|
||||
fileList = userFileService.userFileList(userFile, 0L, 10L);
|
||||
} else {
|
||||
Long beginCount = (fileListDto.getCurrentPage() - 1) * fileListDto.getPageCount();
|
||||
long beginCount = (currentPage - 1) * pageCount;
|
||||
|
||||
fileList = userFileService.userFileList(userFile, beginCount, fileListDto.getPageCount()); //fileService.selectFileListByPath(fileBean);
|
||||
fileList = userFileService.userFileList(userFile, beginCount, pageCount);
|
||||
|
||||
}
|
||||
|
||||
@ -281,7 +286,7 @@ public class FileController {
|
||||
|
||||
}
|
||||
|
||||
@Operation(summary = "解压文件", description = "压缩功能为体验功能,目前持续优化中。", tags = {"file"})
|
||||
@Operation(summary = "解压文件", description = "解压缩功能为体验功能,可以解压zip和rar格式的压缩文件,目前只支持本地存储文件解压,部分高版本rar格式不支持。", tags = {"file"})
|
||||
@RequestMapping(value = "/unzipfile", method = RequestMethod.POST)
|
||||
@MyLog(operation = "解压文件", module = CURRENT_MODULE)
|
||||
@ResponseBody
|
||||
@ -424,7 +429,10 @@ public class FileController {
|
||||
@Operation(summary = "通过文件类型选择文件", description = "该接口可以实现文件格式分类查看", tags = {"file"})
|
||||
@RequestMapping(value = "/selectfilebyfiletype", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public RestResult<List<Map<String, Object>>> selectFileByFileType(int fileType, Long currentPage, Long pageCount, @RequestHeader("token") String token) {
|
||||
public RestResult<List<Map<String, Object>>> selectFileByFileType(@Parameter(description = "文件类型", required = true) int fileType,
|
||||
@Parameter(description = "当前页", required = true) long currentPage,
|
||||
@Parameter(description = "页面数量", required = true) long pageCount,
|
||||
@RequestHeader("token") String token) {
|
||||
|
||||
UserBean sessionUserBean = userService.getUserBeanByToken(token);
|
||||
if (sessionUserBean == null) {
|
||||
@ -434,7 +442,7 @@ public class FileController {
|
||||
|
||||
List<FileListVo> fileList = new ArrayList<>();
|
||||
Long beginCount = 0L;
|
||||
if (pageCount == null || currentPage == null) {
|
||||
if (pageCount == 0 || currentPage == 0) {
|
||||
beginCount = 0L;
|
||||
pageCount = 10L;
|
||||
} else {
|
||||
|
@ -20,7 +20,7 @@ import com.qiwenshare.file.service.ShareService;
|
||||
import com.qiwenshare.file.service.StorageService;
|
||||
import com.qiwenshare.file.vo.file.FileListVo;
|
||||
import com.qiwenshare.file.vo.file.UploadFileVo;
|
||||
import com.qiwenshare.ufo.util.PathUtil;
|
||||
import com.qiwenshare.ufop.util.PathUtil;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
@ -15,11 +15,11 @@ import com.qiwenshare.file.dto.file.CreateOfficeFileDTO;
|
||||
import com.qiwenshare.file.dto.file.EditOfficeFileDTO;
|
||||
import com.qiwenshare.file.dto.file.PreviewOfficeFileDTO;
|
||||
import com.qiwenshare.file.helper.ConfigManager;
|
||||
import com.qiwenshare.ufo.factory.UFOFactory;
|
||||
import com.qiwenshare.ufo.operation.download.domain.DownloadFile;
|
||||
import com.qiwenshare.ufo.operation.write.Writer;
|
||||
import com.qiwenshare.ufo.operation.write.domain.WriteFile;
|
||||
import com.qiwenshare.ufo.util.PathUtil;
|
||||
import com.qiwenshare.ufop.factory.UFOPFactory;
|
||||
import com.qiwenshare.ufop.operation.download.domain.DownloadFile;
|
||||
import com.qiwenshare.ufop.operation.write.Writer;
|
||||
import com.qiwenshare.ufop.operation.write.domain.WriteFile;
|
||||
import com.qiwenshare.ufop.util.PathUtil;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -50,7 +50,7 @@ public class OfficeController {
|
||||
@Resource
|
||||
IUserService userService;
|
||||
@Resource
|
||||
UFOFactory ufoFactory;
|
||||
UFOPFactory ufopFactory;
|
||||
|
||||
@Value("${deployment.host}")
|
||||
private String deploymentHost;
|
||||
@ -61,9 +61,10 @@ public class OfficeController {
|
||||
@Resource
|
||||
IUserFileService userFileService;
|
||||
|
||||
@Operation(summary = "创建office文件", description = "创建office文件", tags = {"office"})
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "/createofficefile", method = RequestMethod.POST)
|
||||
public RestResult<Object> createOfficeFile(HttpServletRequest request, @RequestBody CreateOfficeFileDTO createOfficeFileDTO, @RequestHeader("token") String token) {
|
||||
public RestResult<Object> createOfficeFile(@RequestBody CreateOfficeFileDTO createOfficeFileDTO, @RequestHeader("token") String token) {
|
||||
RestResult<Object> result = new RestResult<>();
|
||||
try{
|
||||
|
||||
@ -168,7 +169,6 @@ public class OfficeController {
|
||||
}
|
||||
|
||||
@Operation(summary = "预览office文件", description = "预览office文件", tags = {"office"})
|
||||
@MyLog(operation = "查看报告接口", module = CURRENT_MODULE)
|
||||
@RequestMapping(value = "/previewofficefile", method = RequestMethod.POST)
|
||||
@ResponseBody
|
||||
public RestResult<Object> previewOfficeFile(HttpServletRequest request, @RequestBody PreviewOfficeFileDTO previewOfficeFileDTO, @RequestHeader("token") String token) {
|
||||
@ -206,7 +206,7 @@ public class OfficeController {
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Operation(summary = "编辑office文件", description = "编辑office文件", tags = {"office"})
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "/editofficefile", method = RequestMethod.POST)
|
||||
public RestResult<Object> editOfficeFile(HttpServletRequest request, @RequestBody EditOfficeFileDTO editOfficeFileDTO, @RequestHeader("token") String token) {
|
||||
@ -232,7 +232,7 @@ public class OfficeController {
|
||||
"edit");
|
||||
file.changeType(request.getParameter("mode"), "edit");
|
||||
|
||||
String query = "?type=edit&fileId="+userFile.getFileId()+"&token="+token;
|
||||
String query = "?type=edit&userFileId="+userFile.getUserFileId()+"&token="+token;
|
||||
file.editorConfig.callbackUrl= baseUrl + "/office/IndexServlet" + query;
|
||||
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
@ -267,14 +267,14 @@ public class OfficeController {
|
||||
JSONObject jsonObj = JSON.parseObject(body);
|
||||
log.info("===saveeditedfile:" + jsonObj.get("status")); ;
|
||||
String status = jsonObj != null ? jsonObj.get("status").toString() : "";
|
||||
if ("2".equals(status)) {//新建报告不强制手动操作时状态为2
|
||||
if ("2".equals(status) || "6".equals(status)) {
|
||||
String type = request.getParameter("type");
|
||||
String downloadUri = (String) jsonObj.get("url");
|
||||
|
||||
if("edit".equals(type)){//修改报告
|
||||
String fileId = request.getParameter("fileId");
|
||||
String userFileId = request.getParameter("userFileId");
|
||||
FileBean fileBean = fileService.getById(fileId);
|
||||
UserFile userFile = userFileService.getById(userFileId);
|
||||
FileBean fileBean = fileService.getById(userFile.getFileId());
|
||||
if (fileBean.getPointCount() > 1) {
|
||||
//该场景,暂不支持编辑修改
|
||||
writer.write("{\"error\":1}");
|
||||
@ -288,7 +288,7 @@ public class OfficeController {
|
||||
try {
|
||||
InputStream stream = connection.getInputStream();
|
||||
|
||||
Writer writer1 = ufoFactory.getWriter(fileBean.getStorageType());
|
||||
Writer writer1 = ufopFactory.getWriter(fileBean.getStorageType());
|
||||
WriteFile writeFile = new WriteFile();
|
||||
writeFile.setFileUrl(fileBean.getFileUrl());
|
||||
|
||||
@ -297,24 +297,25 @@ public class OfficeController {
|
||||
} catch (Exception e) {
|
||||
log.error(e.getMessage());
|
||||
} finally {
|
||||
//更新文件修改信息
|
||||
LambdaUpdateWrapper<UserFile> userFileUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
userFileUpdateWrapper
|
||||
.set(UserFile::getUploadTime, DateUtil.getCurrentTime())
|
||||
.eq(UserFile::getUserFileId, userFileId);
|
||||
userFileService.update(userFileUpdateWrapper);
|
||||
if ("2".equals(status)) {
|
||||
LambdaUpdateWrapper<UserFile> userFileUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
userFileUpdateWrapper
|
||||
.set(UserFile::getUploadTime, DateUtil.getCurrentTime())
|
||||
.eq(UserFile::getUserFileId, userFileId);
|
||||
userFileService.update(userFileUpdateWrapper);
|
||||
}
|
||||
LambdaUpdateWrapper<FileBean> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
fileLength = connection.getContentLength();
|
||||
log.info("当前修改文件大小为:" + Long.valueOf(fileLength));
|
||||
|
||||
DownloadFile downloadFile = new DownloadFile();
|
||||
downloadFile.setFileUrl(fileBean.getFileUrl());
|
||||
InputStream inputStream = ufoFactory.getDownloader(fileBean.getStorageType()).getInputStream(downloadFile);
|
||||
InputStream inputStream = ufopFactory.getDownloader(fileBean.getStorageType()).getInputStream(downloadFile);
|
||||
String md5Str = DigestUtils.md5Hex(inputStream);
|
||||
lambdaUpdateWrapper
|
||||
.set(FileBean::getIdentifier, md5Str)
|
||||
.set(FileBean::getFileSize, Long.valueOf(fileLength))
|
||||
.eq(FileBean::getFileId, fileId);
|
||||
.eq(FileBean::getFileId, fileBean.getFileId());
|
||||
fileService.update(lambdaUpdateWrapper);
|
||||
|
||||
connection.disconnect();
|
||||
|
@ -13,9 +13,9 @@ import com.qiwenshare.file.service.FiletransferService;
|
||||
import com.qiwenshare.file.service.UserFileService;
|
||||
import com.qiwenshare.file.service.UserService;
|
||||
import com.qiwenshare.file.vo.file.FileListVo;
|
||||
import com.qiwenshare.ufo.factory.UFOFactory;
|
||||
import com.qiwenshare.ufo.operation.read.Reader;
|
||||
import com.qiwenshare.ufo.operation.read.domain.ReadFile;
|
||||
import com.qiwenshare.ufop.factory.UFOPFactory;
|
||||
import com.qiwenshare.ufop.operation.read.Reader;
|
||||
import com.qiwenshare.ufop.operation.read.domain.ReadFile;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.catalina.User;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -2,7 +2,6 @@ package com.qiwenshare.file.controller;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.qiwenshare.common.result.RestResult;
|
||||
import com.qiwenshare.common.util.JjwtUtil;
|
||||
import com.qiwenshare.file.anno.MyLog;
|
||||
@ -10,12 +9,10 @@ import com.qiwenshare.file.api.IUserService;
|
||||
import com.qiwenshare.file.domain.UserBean;
|
||||
import com.qiwenshare.file.dto.user.RegisterDTO;
|
||||
import com.qiwenshare.file.vo.user.UserLoginVo;
|
||||
import com.qiwenshare.ufo.autoconfiguration.UFOAutoConfiguration;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.codec.digest.Md5Crypt;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.crypto.hash.SimpleHash;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@ -6,9 +6,9 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "批量移动文件DTO",required = true)
|
||||
public class BatchMoveFileDTO {
|
||||
@Schema(description="文件集合")
|
||||
@Schema(description="文件集合", required = true)
|
||||
private String files;
|
||||
@Schema(description="文件路径")
|
||||
@Schema(description="目的文件路径", required = true)
|
||||
private String filePath;
|
||||
|
||||
|
||||
|
@ -6,10 +6,10 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "文件列表DTO",required = true)
|
||||
public class FileListDTO {
|
||||
@Schema(description = "文件路径")
|
||||
@Schema(description = "文件路径", required = true)
|
||||
private String filePath;
|
||||
@Schema(description = "当前页码")
|
||||
@Schema(description = "当前页码", required = true)
|
||||
private Long currentPage;
|
||||
@Schema(description = "一页显示数量")
|
||||
@Schema(description = "一页显示数量", required = true)
|
||||
private Long pageCount;
|
||||
}
|
||||
|
@ -7,15 +7,15 @@ import lombok.Data;
|
||||
@Schema(name = "移动文件DTO",required = true)
|
||||
public class MoveFileDTO {
|
||||
|
||||
@Schema(description = "文件路径")
|
||||
@Schema(description = "文件路径", required = true)
|
||||
private String filePath;
|
||||
|
||||
@Schema(description = "文件名")
|
||||
@Schema(description = "文件名", required = true)
|
||||
private String fileName;
|
||||
|
||||
@Schema(description = "旧文件名")
|
||||
@Schema(description = "旧文件名", required = true)
|
||||
private String oldFilePath;
|
||||
@Schema(description = "扩展名")
|
||||
@Schema(description = "扩展名", required = true)
|
||||
private String extendName;
|
||||
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "批量删除文件DTO",required = true)
|
||||
public class BatchDeleteFileDTO {
|
||||
@Schema(description="文件集合")
|
||||
@Schema(description="文件集合", required = true)
|
||||
private String files;
|
||||
|
||||
|
||||
|
@ -6,8 +6,8 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "创建文件DTO",required = true)
|
||||
public class CreateFileDTO {
|
||||
@Schema(description="文件名")
|
||||
@Schema(description="文件名", required=true)
|
||||
private String fileName;
|
||||
@Schema(description="文件路径")
|
||||
@Schema(description="文件路径", required=true)
|
||||
private String filePath;
|
||||
}
|
||||
|
@ -6,17 +6,8 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "删除文件DTO",required = true)
|
||||
public class DeleteFileDTO {
|
||||
@Schema(description = "用户文件id")
|
||||
@Schema(description = "用户文件id", required = true)
|
||||
private Long userFileId;
|
||||
|
||||
|
||||
@Schema(description = "文件路径")
|
||||
@Deprecated
|
||||
private String filePath;
|
||||
@Schema(description = "文件名")
|
||||
@Deprecated
|
||||
private String fileName;
|
||||
@Schema(description = "是否是目录")
|
||||
@Deprecated
|
||||
private Integer isDir;
|
||||
}
|
||||
|
@ -6,26 +6,9 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "重命名文件DTO",required = true)
|
||||
public class RenameFileDTO {
|
||||
@Schema(description = "用户文件id", required = true)
|
||||
private Long userFileId;
|
||||
/**
|
||||
* 文件路径
|
||||
*/
|
||||
@Schema(description = "文件路径")
|
||||
@Deprecated
|
||||
private String filePath;
|
||||
|
||||
/**
|
||||
* 文件名
|
||||
*/
|
||||
@Schema(description = "文件名")
|
||||
@Schema(description = "文件名", required = true)
|
||||
private String fileName;
|
||||
@Schema(description = "是否是目录")
|
||||
@Deprecated
|
||||
private Integer isDir;
|
||||
@Schema(description = "旧文件名")
|
||||
@Deprecated
|
||||
private String oldFileName;
|
||||
@Schema(description = "是否是OSS")
|
||||
@Deprecated
|
||||
private Integer isOSS;
|
||||
}
|
||||
|
@ -1,12 +1,18 @@
|
||||
package com.qiwenshare.file.dto.file;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SearchFileDTO {
|
||||
@Schema(description="文件名", required=true)
|
||||
private String fileName;
|
||||
@Schema(description="当前页", required=true)
|
||||
private long currentPage;
|
||||
@Schema(description="每页数量", required=true)
|
||||
private long pageCount;
|
||||
@Schema(description="排序字段(可排序字段:fileName, fileSize, extendName, uploadTime)", required=false)
|
||||
private String order;
|
||||
@Schema(description="方向(升序:asc, 降序:desc)", required=false)
|
||||
private String direction;
|
||||
}
|
||||
|
@ -6,8 +6,8 @@ import lombok.Data;
|
||||
@Data
|
||||
@Schema(name = "解压缩文件DTO",required = true)
|
||||
public class UnzipFileDTO {
|
||||
@Schema(description = "文件url")
|
||||
@Schema(description = "文件url", required = true)
|
||||
private String fileUrl;
|
||||
@Schema(description = "文件路径")
|
||||
@Schema(description = "文件路径", required = true)
|
||||
private String filePath;
|
||||
}
|
||||
|
@ -33,19 +33,19 @@ import com.qiwenshare.file.domain.StorageBean;
|
||||
import com.qiwenshare.file.mapper.StorageMapper;
|
||||
import com.qiwenshare.file.mapper.UserFileMapper;
|
||||
import com.qiwenshare.file.vo.file.FileListVo;
|
||||
import com.qiwenshare.ufo.exception.DownloadException;
|
||||
import com.qiwenshare.ufo.exception.UploadException;
|
||||
import com.qiwenshare.ufo.factory.StorageTypeEnum;
|
||||
import com.qiwenshare.ufo.factory.UFOFactory;
|
||||
import com.qiwenshare.ufo.operation.delete.Deleter;
|
||||
import com.qiwenshare.ufo.operation.delete.domain.DeleteFile;
|
||||
import com.qiwenshare.ufo.operation.download.Downloader;
|
||||
import com.qiwenshare.ufo.operation.download.domain.DownloadFile;
|
||||
import com.qiwenshare.ufo.operation.preview.Previewer;
|
||||
import com.qiwenshare.ufo.operation.preview.domain.PreviewFile;
|
||||
import com.qiwenshare.ufo.operation.upload.Uploader;
|
||||
import com.qiwenshare.ufo.operation.upload.domain.UploadFile;
|
||||
import com.qiwenshare.ufo.util.PathUtil;
|
||||
import com.qiwenshare.ufop.exception.DownloadException;
|
||||
import com.qiwenshare.ufop.exception.UploadException;
|
||||
import com.qiwenshare.ufop.factory.StorageTypeEnum;
|
||||
import com.qiwenshare.ufop.factory.UFOPFactory;
|
||||
import com.qiwenshare.ufop.operation.delete.Deleter;
|
||||
import com.qiwenshare.ufop.operation.delete.domain.DeleteFile;
|
||||
import com.qiwenshare.ufop.operation.download.Downloader;
|
||||
import com.qiwenshare.ufop.operation.download.domain.DownloadFile;
|
||||
import com.qiwenshare.ufop.operation.preview.Previewer;
|
||||
import com.qiwenshare.ufop.operation.preview.domain.PreviewFile;
|
||||
import com.qiwenshare.ufop.operation.upload.Uploader;
|
||||
import com.qiwenshare.ufop.operation.upload.domain.UploadFile;
|
||||
import com.qiwenshare.ufop.util.PathUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -65,7 +65,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
UserFileMapper userFileMapper;
|
||||
|
||||
@Resource
|
||||
UFOFactory ufoFactory;
|
||||
UFOPFactory ufopFactory;
|
||||
@Resource
|
||||
FileDealComp fileDealComp;
|
||||
|
||||
@ -80,7 +80,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
uploadFile.setTotalSize(uploadFileDto.getTotalSize());
|
||||
uploadFile.setCurrentChunkSize(uploadFileDto.getCurrentChunkSize());
|
||||
|
||||
Uploader uploader = ufoFactory.getUploader();
|
||||
Uploader uploader = ufopFactory.getUploader();
|
||||
if (uploader == null) {
|
||||
log.error("上传失败,请检查storageType是否配置正确,当前storageType为:");
|
||||
throw new UploadException("上传失败");
|
||||
@ -135,7 +135,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
if (userFile.getIsDir() == 0) {
|
||||
|
||||
FileBean fileBean = fileMapper.selectById(userFile.getFileId());
|
||||
Downloader downloader = ufoFactory.getDownloader(fileBean.getStorageType());
|
||||
Downloader downloader = ufopFactory.getDownloader(fileBean.getStorageType());
|
||||
if (downloader == null) {
|
||||
log.error("下载失败,文件存储类型不支持下载,storageType:{}", fileBean.getStorageType());
|
||||
throw new DownloadException("下载失败");
|
||||
@ -175,7 +175,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
try {
|
||||
for (UserFile userFile1 : userFileList) {
|
||||
FileBean fileBean = fileMapper.selectById(userFile1.getFileId());
|
||||
Downloader downloader = ufoFactory.getDownloader(fileBean.getStorageType());
|
||||
Downloader downloader = ufopFactory.getDownloader(fileBean.getStorageType());
|
||||
if (downloader == null) {
|
||||
log.error("下载失败,文件存储类型不支持下载,storageType:{}, isOSS:{}", fileBean.getStorageType());
|
||||
throw new UploadException("下载失败");
|
||||
@ -219,7 +219,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
Downloader downloader = ufoFactory.getDownloader(StorageTypeEnum.LOCAL.getStorageType());
|
||||
Downloader downloader = ufopFactory.getDownloader(StorageTypeEnum.LOCAL.getStorageType());
|
||||
DownloadFile downloadFile = new DownloadFile();
|
||||
downloadFile.setFileUrl("temp" + File.separator+userFile.getFileName() + ".zip");
|
||||
File tempFile = FileOperation.newFile(PathUtil.getStaticPath() + downloadFile.getFileUrl());
|
||||
@ -238,7 +238,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
public void previewFile(HttpServletResponse httpServletResponse, PreviewDTO previewDTO) {
|
||||
UserFile userFile = userFileMapper.selectById(previewDTO.getUserFileId());
|
||||
FileBean fileBean = fileMapper.selectById(userFile.getFileId());
|
||||
Previewer previewer = ufoFactory.getPreviewer(fileBean.getStorageType());
|
||||
Previewer previewer = ufopFactory.getPreviewer(fileBean.getStorageType());
|
||||
if (previewer == null) {
|
||||
log.error("预览失败,文件存储类型不支持预览,storageType:{}", fileBean.getStorageType());
|
||||
throw new UploadException("预览失败");
|
||||
@ -258,7 +258,7 @@ public class FiletransferService implements IFiletransferService {
|
||||
public void deleteFile(FileBean fileBean) {
|
||||
Deleter deleter = null;
|
||||
|
||||
deleter = ufoFactory.getDeleter(fileBean.getStorageType());
|
||||
deleter = ufopFactory.getDeleter(fileBean.getStorageType());
|
||||
DeleteFile deleteFile = new DeleteFile();
|
||||
deleteFile.setFileUrl(fileBean.getFileUrl());
|
||||
deleteFile.setTimeStampName(fileBean.getTimeStampName());
|
||||
|
@ -49,18 +49,18 @@ mybatis-plus.configuration.map-underscore-to-camel-case=false
|
||||
mybatis-plus.global-config.banner=false
|
||||
|
||||
#存储类型
|
||||
ufo.storage-type=0
|
||||
ufop.storage-type=0
|
||||
#文件存储路径
|
||||
ufo.local-storage-path=
|
||||
ufop.local-storage-path=
|
||||
#图片缩略图
|
||||
ufo.thumb-image.width=150
|
||||
ufo.thumb-image.height=150
|
||||
ufop.thumb-image.width=150
|
||||
ufop.thumb-image.height=150
|
||||
|
||||
#阿里云oss基本配置
|
||||
ufo.aliyun.oss.endpoint=
|
||||
ufo.aliyun.oss.access-key-id=
|
||||
ufo.aliyun.oss.access-key-secret=
|
||||
ufo.aliyun.oss.bucket-name=
|
||||
ufop.aliyun.oss.endpoint=
|
||||
ufop.aliyun.oss.access-key-id=
|
||||
ufop.aliyun.oss.access-key-secret=
|
||||
ufop.aliyun.oss.bucket-name=
|
||||
|
||||
#FastDFS配置
|
||||
fdfs.so-timeout=1501
|
||||
@ -97,6 +97,6 @@ spring.elasticsearch.rest.password=
|
||||
|
||||
|
||||
# 当前部署外网IP,用于office预览
|
||||
deployment.host: 172.16.100.53:${server.port}
|
||||
deployment.host: 192.168.31.158:${server.port}
|
||||
|
||||
|
||||
|
@ -6,7 +6,7 @@ files.docservice.edited-docs=.docx|.xlsx|.csv|.pptx|.txt
|
||||
files.docservice.convert-docs=.docm|.dotx|.dotm|.dot|.doc|.odt|.fodt|.ott|.xlsm|.xltx|.xltm|.xlt|.xls|.ods|.fods|.ots|.pptm|.ppt|.ppsx|.ppsm|.pps|.potx|.potm|.pot|.odp|.fodp|.otp|.rtf|.mht|.html|.htm|.xml|.epub|.fb2
|
||||
files.docservice.timeout=120000
|
||||
|
||||
files.docservice.url.site=http://172.16.100.53:80/
|
||||
files.docservice.url.site=http://192.168.31.158:80/
|
||||
files.docservice.url.converter=ConvertService.ashx
|
||||
files.docservice.url.command=coauthoring/CommandService.ashx
|
||||
files.docservice.url.api=web-apps/apps/api/documents/api.js
|
||||
|
Loading…
Reference in New Issue
Block a user