package com.ard.web.controller.data; import com.ard.common.utils.file.FileUtils; import com.ard.work.domain.entity.MinioSysFile; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import static com.ard.work.component.minio.utils.MinioUtil.uploadFile; /** * 文件请求处理 * * @author ard */ @Api(tags = "MinIo文件上传") @RestController @RequestMapping("/minoFile") public class MinioFileController { private static final Logger log = LoggerFactory.getLogger(MinioFileController.class); /** * 文件上传-指定桶名称 */ @ApiOperation("文件上传-指定桶名称") @PostMapping("upload/{bucketName}/{fileName}") public MinioSysFile upload(@RequestPart("file")MultipartFile file, @PathVariable String bucketName, @PathVariable String fileName) { try { // 上传并返回访问地址 String url = uploadFile(bucketName,fileName,file); MinioSysFile minioSysFile = new MinioSysFile(); minioSysFile.setName(FileUtils.getName(url)); minioSysFile.setUrl(url); return minioSysFile; } catch (Exception e) { log.error("上传文件失败", e); //return R.fail(e.getMessage()); return null; } } }