From bc7678e6d564b9696fbd1eddebf1584522ad7440 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 13 Oct 2025 11:08:47 +0800
Subject: [PATCH] minio集成到公共模块

---
 ard-admin/src/main/java/com/ard/web/controller/common/CommonController.java |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 54 insertions(+), 4 deletions(-)

diff --git a/ard-admin/src/main/java/com/ard/web/controller/common/CommonController.java b/ard-admin/src/main/java/com/ard/web/controller/common/CommonController.java
index 0b38fdd..d8fd6fe 100644
--- a/ard-admin/src/main/java/com/ard/web/controller/common/CommonController.java
+++ b/ard-admin/src/main/java/com/ard/web/controller/common/CommonController.java
@@ -4,14 +4,16 @@
 import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
+import com.ard.common.core.domain.entity.MinioUploadResult;
+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.beans.factory.annotation.Autowired;
 import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import com.ard.common.config.UavConfig;
 import com.ard.common.constant.Constants;
@@ -21,11 +23,14 @@
 import com.ard.common.utils.file.FileUtils;
 import com.ard.framework.config.ServerConfig;
 
+import static com.ard.common.utils.file.MinioUtil.uploadFile;
+
 /**
  * 通用请求处理
  * 
  * @author ruoyi
  */
+@Api(tags = "通用请求处理")
 @RestController
 @RequestMapping("/common")
 public class CommonController
@@ -160,4 +165,49 @@
             log.error("下载文件失败", e);
         }
     }
+
+
+    /**
+     * minio上传文件
+     */
+    @ApiOperation("minio文件上传")
+    @PostMapping("/uploadMinio")
+    public AjaxResult uploadFileMinio(@RequestPart MultipartFile file) {
+        try
+        {
+            // 上传并返回新文件名称
+            String url = FileUploadUtils.uploadMinio(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 = FileUploadUtils.uploadMinio(file,bucketName);
+            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());
+        }
+    }
+
 }

--
Gitblit v1.9.3