From d9e54388e7fde2462e8b7e0165c5e7da3f202593 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期四, 07 七月 2022 19:07:59 +0800
Subject: [PATCH] add 整合 springdoc-openapi-javadoc 基于代码注释生成文档

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java |   32 +++++++++++++++++---------------
 1 files changed, 17 insertions(+), 15 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
index 84d4c0b..bb63b07 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.web.controller.system;
 
 import cn.dev33.satoken.secure.BCrypt;
+import cn.hutool.core.io.FileUtil;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.controller.BaseController;
@@ -9,19 +10,20 @@
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.helper.LoginHelper;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.file.MimeTypeUtils;
 import com.ruoyi.system.domain.SysOss;
 import com.ruoyi.system.service.ISysOssService;
 import com.ruoyi.system.service.ISysUserService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import io.swagger.v3.oas.annotations.tags.Tag;
 import lombok.RequiredArgsConstructor;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.io.File;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -31,7 +33,7 @@
  * @author Lion Li
  */
 @Validated
-@Api(value = "涓汉淇℃伅鎺у埗鍣�", tags = {"涓汉淇℃伅绠$悊"})
+@Tag(name ="涓汉淇℃伅鎺у埗鍣�", description = "涓汉淇℃伅绠$悊")
 @RequiredArgsConstructor
 @RestController
 @RequestMapping("/system/user/profile")
@@ -43,7 +45,6 @@
     /**
      * 涓汉淇℃伅
      */
-    @ApiOperation("涓汉淇℃伅")
     @GetMapping
     public R<Map<String, Object>> profile() {
         SysUser user = userService.selectUserById(getUserId());
@@ -57,7 +58,6 @@
     /**
      * 淇敼鐢ㄦ埛
      */
-    @ApiOperation("淇敼鐢ㄦ埛")
     @Log(title = "涓汉淇℃伅", businessType = BusinessType.UPDATE)
     @PutMapping
     public R<Void> updateProfile(@RequestBody SysUser user) {
@@ -81,10 +81,9 @@
     /**
      * 閲嶇疆瀵嗙爜
      */
-    @ApiOperation("閲嶇疆瀵嗙爜")
-    @ApiImplicitParams({
-        @ApiImplicitParam(name = "oldPassword", value = "鏃у瘑鐮�", paramType = "query", dataTypeClass = String.class),
-        @ApiImplicitParam(name = "newPassword", value = "鏂板瘑鐮�", paramType = "query", dataTypeClass = String.class)
+    @Parameters({
+        @Parameter(name = "oldPassword", description = "鏃у瘑鐮�", in = ParameterIn.QUERY),
+        @Parameter(name = "newPassword", description = "鏂板瘑鐮�", in = ParameterIn.QUERY)
     })
     @Log(title = "涓汉淇℃伅", businessType = BusinessType.UPDATE)
     @PutMapping("/updatePwd")
@@ -108,15 +107,18 @@
     /**
      * 澶村儚涓婁紶
      */
-    @ApiOperation("澶村儚涓婁紶")
-    @ApiImplicitParams({
-        @ApiImplicitParam(name = "avatarfile", value = "鐢ㄦ埛澶村儚", paramType = "query", dataTypeClass = File.class, required = true)
+    @Parameters({
+        @Parameter(name = "avatarfile", description = "鐢ㄦ埛澶村儚", in = ParameterIn.QUERY, required = true)
     })
     @Log(title = "鐢ㄦ埛澶村儚", businessType = BusinessType.UPDATE)
     @PostMapping("/avatar")
     public R<Map<String, Object>> avatar(@RequestPart("avatarfile") MultipartFile file) {
         Map<String, Object> ajax = new HashMap<>();
         if (!file.isEmpty()) {
+            String extension = FileUtil.extName(file.getOriginalFilename());
+            if (!StringUtils.equalsAnyIgnoreCase(extension, MimeTypeUtils.IMAGE_EXTENSION)) {
+                return R.fail("鏂囦欢鏍煎紡涓嶆纭紝璇蜂笂浼�" + Arrays.toString(MimeTypeUtils.IMAGE_EXTENSION) + "鏍煎紡");
+            }
             SysOss oss = iSysOssService.upload(file);
             String avatar = oss.getUrl();
             if (userService.updateUserAvatar(getUsername(), avatar)) {

--
Gitblit v1.9.3