上传文件改变

This commit is contained in:
pengjie 2023-07-19 16:56:45 +08:00
parent e5f9895385
commit 3cbcab2532

View File

@ -17,6 +17,7 @@ import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.net.URLEncoder;
import java.util.Map;
/**
@ -41,25 +42,25 @@ public class FileController {
/**
* 上传文件到指定存储平台成功返回文件信息
*/
// @OperLog(operModul = "文件管理", operType = "文件上传", operDesc = "文件上传")
// @ApiOperation(value = "文件上传", notes = "文件上传", httpMethod="POST")
// @PostMapping("/upload")
// public Result<FileInfo> uploadPlatform(MultipartFile file) {
// return Result.success(fileStorageService.of(file)
// .setPlatform("minio-1") //使用指定的存储平台
// .upload());
// }
/**
* 上传文件到本地成功返回文件信息
*/
@OperLog(operModul = "文件管理", operType = "文件上传", operDesc = "文件上传")
@ApiOperation(value = "文件上传", notes = "文件上传", httpMethod="POST")
@PostMapping("/upload")
public Result<Map<String, Object>> upload(MultipartFile file) {
return Result.success(fileDetailService.upload(file));
public Result<FileInfo> uploadPlatform(MultipartFile file) {
return Result.success(fileStorageService.of(file)
.setPlatform("minio-1") //使用指定的存储平台
.upload());
}
// /**
// * 上传文件到本地成功返回文件信息
// */
// @OperLog(operModul = "文件管理", operType = "文件上传", operDesc = "文件上传")
// @ApiOperation(value = "文件上传", notes = "文件上传", httpMethod="POST")
// @PostMapping("/upload")
// public Result<Map<String, Object>> upload(MultipartFile file) {
// return Result.success(fileDetailService.upload(file));
// }
/**
* 上传BASE64文件
*/
@ -79,38 +80,21 @@ public class FileController {
/**
* 下载文件
*/
// @OperLog(operModul = "文件管理", operType = "文件下载", operDesc = "文件下载")
// @ApiOperation(value = "文件下载", notes = "文件下载", httpMethod="POST")
// @ApiImplicitParam(name = "fileUrl", value = "文件路径", paramType = "body", dataType = "String")
// @PostMapping("/download")
// public void download(@ApiIgnore @RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
// // 获取文件信息
// String fileUrl = MapUtils.getString(map, "fileUrl");
// FileInfo fileInfo = fileStorageService.getFileInfoByUrl(fileUrl);
// if (null == fileInfo) {
// throw new Exception("缩略图文件下载失败文件不存在fileInfo" + fileInfo);
// }
// response.setHeader("Content-disposition", "attachment; filename=" + fileUrl.substring(fileUrl.lastIndexOf("/") + 1));
// response.setContentType("application/octet-stream");// 定义输出类型
// fileStorageService.download(fileInfo).outputStream(response.getOutputStream());
// }
/**
* 获取预览文件流
*/
// @OperLog(operModul = "文件管理", operType = "获取预览文件流", operDesc = "获取预览文件流")
// @ApiOperation(value = "获取预览文件流", notes = "获取预览文件流", httpMethod="POST")
// @GetMapping("/preview")
// public void download(@RequestParam(value = "fileUrl", required = true) String fileUrl, HttpServletResponse response) throws Exception {
// // 获取文件信息
// FileInfo fileInfo = fileStorageService.getFileInfoByUrl(fileUrl);
// if (null == fileInfo) {
// throw new Exception("缩略图文件预览失败文件不存在fileInfo" + fileInfo);
// }
// response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(fileInfo.getOriginalFilename(), "UTF-8"));
// response.setContentType("application/octet-stream");// 定义输出类型
// fileStorageService.download(fileInfo).outputStream(response.getOutputStream());
// }
@OperLog(operModul = "文件管理", operType = "文件下载", operDesc = "文件下载")
@ApiOperation(value = "文件下载", notes = "文件下载", httpMethod="POST")
@ApiImplicitParam(name = "fileUrl", value = "文件路径", paramType = "body", dataType = "String")
@PostMapping("/download")
public void download(@ApiIgnore @RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
// 获取文件信息
String fileUrl = MapUtils.getString(map, "fileUrl");
FileInfo fileInfo = fileStorageService.getFileInfoByUrl(fileUrl);
if (null == fileInfo) {
throw new Exception("缩略图文件下载失败文件不存在fileInfo" + fileInfo);
}
response.setHeader("Content-disposition", "attachment; filename=" + fileUrl.substring(fileUrl.lastIndexOf("/") + 1));
response.setContentType("application/octet-stream");// 定义输出类型
fileStorageService.download(fileInfo).outputStream(response.getOutputStream());
}
/**
* 获取预览文件流
@ -120,6 +104,23 @@ public class FileController {
@GetMapping("/preview")
public void download(@RequestParam(value = "fileUrl", required = true) String fileUrl, HttpServletResponse response) throws Exception {
// 获取文件信息
fileDetailService.download(fileUrl, response);
FileInfo fileInfo = fileStorageService.getFileInfoByUrl(fileUrl);
if (null == fileInfo) {
throw new Exception("缩略图文件预览失败文件不存在fileInfo" + fileInfo);
}
response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(fileInfo.getOriginalFilename(), "UTF-8"));
response.setContentType("application/octet-stream");// 定义输出类型
fileStorageService.download(fileInfo).outputStream(response.getOutputStream());
}
/**
* 获取预览文件流
*/
// @OperLog(operModul = "文件管理", operType = "获取预览文件流", operDesc = "获取预览文件流")
// @ApiOperation(value = "获取预览文件流", notes = "获取预览文件流", httpMethod="POST")
// @GetMapping("/preview")
// public void download(@RequestParam(value = "fileUrl", required = true) String fileUrl, HttpServletResponse response) throws Exception {
// // 获取文件信息
// fileDetailService.download(fileUrl, response);
// }
}