From 686bd303ddc68db338fe352c38392194217168a5 Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期二, 11 三月 2025 15:27:59 +0800 Subject: [PATCH] 修改业务逻辑增加项目编码 --- expert-admin/src/main/java/com/gkhy/web/controller/system/SysProfileController.java | 28 +++++++++++++++++++++++++--- 1 files changed, 25 insertions(+), 3 deletions(-) diff --git a/expert-admin/src/main/java/com/gkhy/web/controller/system/SysProfileController.java b/expert-admin/src/main/java/com/gkhy/web/controller/system/SysProfileController.java index c1f8d01..ea900b2 100644 --- a/expert-admin/src/main/java/com/gkhy/web/controller/system/SysProfileController.java +++ b/expert-admin/src/main/java/com/gkhy/web/controller/system/SysProfileController.java @@ -1,5 +1,9 @@ package com.gkhy.web.controller.system; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -10,7 +14,7 @@ import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import com.gkhy.common.annotation.Log; -import com.gkhy.common.config.expertConfig; +import com.gkhy.common.config.ExpertConfig; import com.gkhy.common.core.controller.BaseController; import com.gkhy.common.core.domain.AjaxResult; import com.gkhy.common.core.domain.entity.SysUser; @@ -30,6 +34,7 @@ */ @RestController @RequestMapping("/system/user/profile") +@Api(tags = "基础信息修改") public class SysProfileController extends BaseController { @Autowired @@ -87,7 +92,12 @@ */ @Log(title = "个人信息", businessType = BusinessType.UPDATE) @PutMapping("/updatePwd") - public AjaxResult updatePwd(String oldPassword, String newPassword) + @ApiOperation(value = "修改密码") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "query", name = "oldPassword", dataType = "String", required = true, value = "原密码"), + @ApiImplicitParam(paramType = "query", name = "newPassword", dataType = "String", required = true, value = "新密码") + }) + public AjaxResult updatePwd(@RequestParam("oldPassword") String oldPassword, @RequestParam("newPassword")String newPassword) { LoginUser loginUser = getLoginUser(); String userName = loginUser.getUsername(); @@ -100,6 +110,11 @@ { return error("新密码不能与旧密码相同"); } + // 检查新密码复杂性 + if (!isValidPassword(newPassword)) { + return error("新密码必须包含数字和字母,并且可以包含特殊符号,长度至少为8个字符"); + } + newPassword = SecurityUtils.encryptPassword(newPassword); if (userService.resetUserPwd(userName, newPassword) > 0) { @@ -111,6 +126,13 @@ return error("修改密码异常,请联系管理员"); } + // 添加密码复杂性检查方法 + private static boolean isValidPassword(String password) { + // 正则表达式检查密码是否包含数字和字母,并且长度至少为8个字符 + //String passwordPattern = "^(?=.*[0-9])(?=.*[a-zA-Z]).{8,}$"; + String passwordPattern = "^(?=.*[0-9])(?=.*[a-zA-Z])[a-zA-Z0-9@#$%^&+=]{8,}$"; + return password.matches(passwordPattern); + } /** * 头像上传 */ @@ -121,7 +143,7 @@ if (!file.isEmpty()) { LoginUser loginUser = getLoginUser(); - String avatar = FileUploadUtils.upload(expertConfig.getAvatarPath(), file, MimeTypeUtils.IMAGE_EXTENSION); + String avatar = FileUploadUtils.upload(ExpertConfig.getAvatarPath(), file, MimeTypeUtils.IMAGE_EXTENSION); if (userService.updateUserAvatar(loginUser.getUsername(), avatar)) { AjaxResult ajax = AjaxResult.success(); -- Gitblit v1.9.2