From 407eefd1abd21172c9242d0e63997b3524f4ab3c Mon Sep 17 00:00:00 2001 From: "pan.wl.2" Date: Mon, 18 Nov 2024 11:55:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/UploadController.java | 112 +++++++++++------- .../java/com/mdd/common/enums/AlbumEnum.java | 3 +- 2 files changed, 73 insertions(+), 42 deletions(-) diff --git a/server/like-admin/src/main/java/com/mdd/admin/controller/UploadController.java b/server/like-admin/src/main/java/com/mdd/admin/controller/UploadController.java index f67dabc4..983a0f77 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/controller/UploadController.java +++ b/server/like-admin/src/main/java/com/mdd/admin/controller/UploadController.java @@ -4,6 +4,7 @@ import com.mdd.admin.LikeAdminThreadLocal; import com.mdd.admin.aop.Log; import com.mdd.admin.aop.aspect.RequestType; import com.mdd.admin.service.IFileService; +import com.mdd.common.aop.NotPower; import com.mdd.common.core.AjaxResult; import com.mdd.common.enums.AlbumEnum; import com.mdd.common.exception.OperateException; @@ -14,6 +15,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartRequest; @@ -33,68 +35,96 @@ public class UploadController { @Log(title = "上传图片", requestType = RequestType.File) @PostMapping("/image") + @NotPower @ApiOperation(value="上传图片") - public AjaxResult image(HttpServletRequest request) { - MultipartFile multipartFile; - try { - multipartFile = ((MultipartRequest) request).getFile("file"); - } catch (Exception e) { - throw new OperateException("请正确选择上传图片!"); - } + public AjaxResult image(@RequestParam("file") MultipartFile[] files, @RequestParam("cid") String requestCid) { - if (multipartFile == null) { + String cid = StringUtils.isNotEmpty(requestCid) ? requestCid : "0"; + + if (files == null || files.length == 0) { throw new OperateException("请选择上传图片!"); } - StorageDriver storageDriver = new StorageDriver(); - UploadFilesVo vo = storageDriver.upload(multipartFile, "image", AlbumEnum.IMAGE.getCode()); - String cid = StringUtils.isNotEmpty(request.getParameter("cid")) ? request.getParameter("cid") : "0"; - Map album = new LinkedHashMap<>(); - album.put("aid", String.valueOf(LikeAdminThreadLocal.getAdminId())); - album.put("cid", cid); - album.put("type", String.valueOf(AlbumEnum.IMAGE.getCode())); + for (int i = 0; i < files.length; i++) { + StorageDriver storageDriver = new StorageDriver(); + UploadFilesVo vo = storageDriver.upload(files[i], "image", AlbumEnum.IMAGE.getCode()); + Map album = new LinkedHashMap<>(); + album.put("aid", String.valueOf(LikeAdminThreadLocal.getAdminId())); + album.put("cid", cid); + album.put("type", String.valueOf(AlbumEnum.IMAGE.getCode())); // album.put("size", vo.getSize().toString()); // album.put("ext", vo.getExt()); - album.put("url", vo.getUrl()); - album.put("name", vo.getName()); - Integer id = fileService.fileAdd(album); + album.put("url", vo.getUrl()); + album.put("name", vo.getName()); + Integer id = fileService.fileAdd(album); + vo.setId(id); + } - vo.setId(id); - return AjaxResult.success(vo); + return AjaxResult.success(); + } + + @Log(title = "上传图片", requestType = RequestType.File) + @PostMapping("/file") + @NotPower + @ApiOperation(value="上传文件") + public AjaxResult file(@RequestParam("file") MultipartFile[] files, @RequestParam("cid") String requestCid) { + + String cid = StringUtils.isNotEmpty(requestCid) ? requestCid : "0"; + + if (files == null || files.length == 0) { + throw new OperateException("请选择上传文件!"); + } + + + for (int i = 0; i < files.length; i++) { + StorageDriver storageDriver = new StorageDriver(); + UploadFilesVo vo = storageDriver.upload(files[i], "image", AlbumEnum.Doc.getCode()); + Map album = new LinkedHashMap<>(); + album.put("aid", String.valueOf(LikeAdminThreadLocal.getAdminId())); + album.put("cid", cid); + album.put("type", String.valueOf(AlbumEnum.Doc.getCode())); +// album.put("size", vo.getSize().toString()); +// album.put("ext", vo.getExt()); + album.put("url", vo.getUrl()); + album.put("name", vo.getName()); + Integer id = fileService.fileAdd(album); + vo.setId(id); + } + + return AjaxResult.success(); } @Log(title = "上传视频", requestType = RequestType.File) @PostMapping("/video") + @NotPower @ApiOperation(value="上传视频") - public AjaxResult video(HttpServletRequest request) { - MultipartFile multipartFile; - try { - multipartFile = ((MultipartRequest) request).getFile("file"); - } catch (Exception e) { + public AjaxResult video(@RequestParam("file") MultipartFile[] files, @RequestParam("cid") String requestCid) { + + String cid = StringUtils.isNotEmpty(requestCid) ? requestCid : "0"; + + + if (files == null || files.length == 0) { throw new OperateException("请选择上传视频!"); } + for (int i = 0; i < files.length; i++) { - if (multipartFile == null) { - throw new OperateException("请选择上传视频!"); - } + StorageDriver storageDriver = new StorageDriver(); + UploadFilesVo vo = storageDriver.upload(files[i], "video", AlbumEnum.Video.getCode()); - StorageDriver storageDriver = new StorageDriver(); - UploadFilesVo vo = storageDriver.upload(multipartFile, "video", AlbumEnum.Video.getCode()); - String cid = StringUtils.isNotEmpty(request.getParameter("cid")) ? request.getParameter("cid") : "0"; - - Map album = new LinkedHashMap<>(); - album.put("cid", cid); - album.put("aid", String.valueOf(LikeAdminThreadLocal.getAdminId())); - album.put("type", String.valueOf(AlbumEnum.Video.getCode())); + Map album = new LinkedHashMap<>(); + album.put("cid", cid); + album.put("aid", String.valueOf(LikeAdminThreadLocal.getAdminId())); + album.put("type", String.valueOf(AlbumEnum.Video.getCode())); // album.put("ext", vo.getExt()); // album.put("size", vo.getSize().toString()); - album.put("url", vo.getUrl()); - album.put("name", vo.getName()); - Integer id = fileService.fileAdd(album); + album.put("url", vo.getUrl()); + album.put("name", vo.getName()); + Integer id = fileService.fileAdd(album); - vo.setId(id); - return AjaxResult.success(vo); + vo.setId(id); + } + return AjaxResult.success(); } } diff --git a/server/like-common/src/main/java/com/mdd/common/enums/AlbumEnum.java b/server/like-common/src/main/java/com/mdd/common/enums/AlbumEnum.java index 31bf6159..22a1ef26 100644 --- a/server/like-common/src/main/java/com/mdd/common/enums/AlbumEnum.java +++ b/server/like-common/src/main/java/com/mdd/common/enums/AlbumEnum.java @@ -6,7 +6,8 @@ package com.mdd.common.enums; public enum AlbumEnum { IMAGE(10, "图片"), - Video(20, "视频"); + Video(20, "视频"), + Doc(30, "文件"); /** * 构造方法