From b20738061e479f78c6b67e5ebaaf2ea313570a96 Mon Sep 17 00:00:00 2001 From: mlzhang <1371582736@qq.com> Date: Sun, 25 Sep 2022 03:39:58 +0800 Subject: [PATCH] =?UTF-8?q?fixed=201d998d1=20from=20https://gitee.com/zmld?= =?UTF-8?q?aniu/likeadmin=5Fjava/pulls/17=20:bug:=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E7=B1=BB=E5=9E=8B=E3=80=81=E5=88=A4=E6=96=AD?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=B1=BB=E5=9E=8B=E8=AE=B0=E5=BD=95=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=90=8D=E7=A7=B0=20#I5SYLB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mdd/admin/config/aop/Log.java | 6 +++++ .../com/mdd/admin/config/aop/LogAspect.java | 25 +++++++++++++++++-- .../com/mdd/admin/config/aop/RequestType.java | 17 +++++++++++++ .../controller/common/UploadController.java | 3 ++- 4 files changed, 48 insertions(+), 3 deletions(-) create mode 100644 server/like-admin/src/main/java/com/mdd/admin/config/aop/RequestType.java diff --git a/server/like-admin/src/main/java/com/mdd/admin/config/aop/Log.java b/server/like-admin/src/main/java/com/mdd/admin/config/aop/Log.java index 473843ae..accee6c8 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/config/aop/Log.java +++ b/server/like-admin/src/main/java/com/mdd/admin/config/aop/Log.java @@ -13,4 +13,10 @@ public @interface Log { */ String title() default ""; + /** + * 模块 + * @return String + */ + RequestType requestType() default RequestType.Default; + } diff --git a/server/like-admin/src/main/java/com/mdd/admin/config/aop/LogAspect.java b/server/like-admin/src/main/java/com/mdd/admin/config/aop/LogAspect.java index ffbf11ba..63fb2293 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/config/aop/LogAspect.java +++ b/server/like-admin/src/main/java/com/mdd/admin/config/aop/LogAspect.java @@ -16,12 +16,18 @@ import org.aspectj.lang.reflect.MethodSignature; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import org.springframework.util.MultiValueMap; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.support.StandardMultipartHttpServletRequest; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.lang.reflect.Method; +import java.util.*; +import java.util.stream.Collectors; +import java.util.stream.Stream; @Aspect @Component @@ -96,9 +102,24 @@ public class LogAspect { String queryString = request.getQueryString(); Object[] args = joinPoint.getArgs(); String params = ""; - if(args.length>0){ + if (args.length > 0) { if("POST".equals(request.getMethod())){ - params = JSON.toJSONString(args); + if (RequestType.File.equals(logAnnotation.requestType())){ + //文件类型获取文件名称作为参数 + StandardMultipartHttpServletRequest standardMultipartHttpServletRequest = (StandardMultipartHttpServletRequest) args[0]; + //提取文件名 + params = standardMultipartHttpServletRequest + .getMultiFileMap() + .values() + .stream() + .map(m -> m.stream() + .map(mf-> mf.getOriginalFilename()) + .collect(Collectors.joining(","))) + .collect(Collectors.joining(",")); + } else { + params = JSON.toJSONString(args); + } + } else if("GET".equals(request.getMethod())){ params = queryString; } diff --git a/server/like-admin/src/main/java/com/mdd/admin/config/aop/RequestType.java b/server/like-admin/src/main/java/com/mdd/admin/config/aop/RequestType.java new file mode 100644 index 00000000..abc398d2 --- /dev/null +++ b/server/like-admin/src/main/java/com/mdd/admin/config/aop/RequestType.java @@ -0,0 +1,17 @@ +package com.mdd.admin.config.aop; + +/** + * 请求参数类 + */ +public enum RequestType { + /** + * 文件类型 + */ + File, + /** + * 默认数据类型 + */ + Default + ; + +} diff --git a/server/like-admin/src/main/java/com/mdd/admin/controller/common/UploadController.java b/server/like-admin/src/main/java/com/mdd/admin/controller/common/UploadController.java index aaa9fee4..45b78e8e 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/controller/common/UploadController.java +++ b/server/like-admin/src/main/java/com/mdd/admin/controller/common/UploadController.java @@ -2,6 +2,7 @@ package com.mdd.admin.controller.common; import com.mdd.admin.LikeAdminThreadLocal; import com.mdd.admin.config.aop.Log; +import com.mdd.admin.config.aop.RequestType; import com.mdd.admin.service.common.IAlbumService; import com.mdd.common.core.AjaxResult; import com.mdd.common.enums.AlbumEnum; @@ -36,7 +37,7 @@ public class UploadController { * @param request 请求对象 * @return Object */ - @Log(title = "上传图片") + @Log(title = "上传图片", requestType = RequestType.File) @PostMapping("/image") public Object image(HttpServletRequest request) { MultipartFile multipartFile; -- Gitee