From 179c4d64313c9b7572778da4aaaf6c6584fe457d Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期二, 20 五月 2025 23:48:08 +0800
Subject: [PATCH] 修改文件上传类型限制

---
 springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/CommonApi.java |   42 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 41 insertions(+), 1 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/CommonApi.java b/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/CommonApi.java
index 51bd3a3..2fbd308 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/CommonApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/CommonApi.java
@@ -12,6 +12,9 @@
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
+import com.panzhihua.common.utlis.MimeTypeUtils;
+import com.panzhihua.grid_app.config.MinioUtil;
+import org.apache.commons.io.FilenameUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -24,6 +27,8 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+
+import static com.panzhihua.common.utlis.FileTypeUploadUtils.assertAllowed;
 
 /**
  * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -61,6 +66,8 @@
     private String url;
     @Resource
     private CommunityService communityService;
+    @Resource
+    private MinioUtil minioUtil;
 
     @ApiOperation(value = "上传照片/视频 (jpg/jpeg/png/mp4/mov)")
     @PostMapping(value = "uploadimage", consumes = "multipart/*", headers = "content-type=multipart/form-date")
@@ -109,9 +116,24 @@
 
     }
 
+    @ApiOperation(value = "新上传照片接口")
+    @PostMapping(value = "/uploadimages", consumes = "multipart/*", headers = "content-type=multipart/form-date")
+    public R uploadImages(@RequestParam MultipartFile file, HttpServletRequest request) {
+        try {
+            assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION);
+            String extension = FilenameUtils.getExtension(file.getOriginalFilename());
+            String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
+            String imageUrl = minioUtil.upload(file, name);
+            return R.ok(imageUrl);
+        } catch (Exception e) {
+            log.error("上传照片失败【{}】", e.getMessage());
+            return R.fail();
+        }
+    }
+
     @ApiOperation(value = "批量上传照片/视频 (jpg/jpeg/png/mp4/mov)")
     @PostMapping(value = "uploads", consumes = "multipart/*", headers = "content-type=multipart/form-date")
-    public R uploadImages(@RequestParam MultipartFile[] files, HttpServletRequest request) throws IOException {
+    public R uploads(@RequestParam MultipartFile[] files, HttpServletRequest request) throws IOException {
         // 微信图片内容校验
         // WxMaSecCheckService wxMaSecCheckService = wxMaConfiguration.getMaService().getSecCheckService();
         String property = System.getProperty("user.dir");
@@ -158,6 +180,24 @@
         return R.ok(urlList);
     }
 
+    @ApiOperation(value = "新批量文件上传接口")
+    @PostMapping(value = "/uploadsimages", consumes = "multipart/*", headers = "content-type=multipart/form-date")
+    public R ossUploads(@RequestParam MultipartFile[] files, HttpServletRequest request) {
+        try {
+            List<String> urlList = new ArrayList<>();
+            for (MultipartFile file : files) {
+                String extension = FilenameUtils.getExtension(file.getOriginalFilename());
+                String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
+                String imageUrl = minioUtil.upload(file, name);
+                urlList.add(imageUrl);
+            }
+            return R.ok(urlList);
+        } catch (Exception e) {
+            log.error("上传文件失败【{}】", e.getMessage());
+            return R.fail();
+        }
+    }
+
     @GetMapping("/getConf/noToken")
     @ApiOperation(value = "根据code查询系统配置")
     public R getConf(@RequestParam("code") String code) {

--
Gitblit v1.7.1