package com.ard.web.controller.storage;
|
|
import com.ard.common.core.domain.AjaxResult;
|
import com.ard.oss.model.MinioUploadResult;
|
import com.ard.common.utils.file.FileUtils;
|
import com.ard.oss.service.impl.OssServiceContext;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.annotation.Resource;
|
|
/**
|
* 文件上传管理接口
|
*
|
* @author ruoyi
|
*/
|
@Api(tags = "文件上传管理接口")
|
@RestController
|
@RequestMapping("/common")
|
public class FileUploadController {
|
|
@Resource
|
private OssServiceContext ossService;
|
|
/**
|
* minio上传文件
|
*/
|
@ApiOperation("minio文件上传")
|
@PostMapping("/uploadMinio")
|
public AjaxResult uploadFileMinio(@RequestPart MultipartFile file) {
|
try {
|
// 上传并返回新文件名称
|
String url = ossService.upload(file);
|
MinioUploadResult minioUploadResult = MinioUploadResult.builder()
|
.url(url)
|
.newFileName(FileUtils.getName(url))
|
.originalFilename(file.getOriginalFilename())
|
.build();
|
return AjaxResult.success(minioUploadResult);
|
} catch (Exception e) {
|
return AjaxResult.error(e.getMessage());
|
}
|
}
|
|
/**
|
* minio文件上传-指定桶
|
*/
|
@ApiOperation("minio文件上传-指定桶")
|
@PostMapping("/uploadMinio/{bucketName}")
|
public AjaxResult upload(@RequestPart("file") MultipartFile file,
|
@PathVariable String bucketName) {
|
try {
|
// 上传并返回访问地址
|
String url = ossService.upload(bucketName,file);
|
MinioUploadResult minioUploadResult = MinioUploadResult.builder()
|
.url(url)
|
.newFileName(FileUtils.getName(url))
|
.originalFilename(file.getOriginalFilename())
|
.build();
|
return AjaxResult.success(minioUploadResult);
|
} catch (Exception e) {
|
return AjaxResult.error(e.getMessage());
|
}
|
}
|
|
}
|