From dbce92d07b97d5875a9529f22cc8b77712d041eb Mon Sep 17 00:00:00 2001 From: lihongbiao <964708803@qq.com> Date: Thu, 17 Jul 2025 17:22:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A3=9E=E8=A1=8C=E5=91=98=E7=AB=AF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=AF=86=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/EmEmployeesController.java | 38 ++++++++++++------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/aircraft-system/src/main/java/com/aircraft/modules/system/controller/EmEmployeesController.java b/aircraft-system/src/main/java/com/aircraft/modules/system/controller/EmEmployeesController.java index b4ee189..7b9e34b 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/system/controller/EmEmployeesController.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/system/controller/EmEmployeesController.java @@ -19,7 +19,6 @@ import com.aircraft.annotation.Log; import com.aircraft.annotation.rest.AnonymousPostMapping; import com.aircraft.config.properties.RsaProperties; import com.aircraft.exception.BadRequestException; -import com.aircraft.modules.security.config.CaptchaConfig; import com.aircraft.modules.security.config.LoginProperties; import com.aircraft.modules.security.config.SecurityProperties; import com.aircraft.modules.security.security.TokenProvider; @@ -28,34 +27,28 @@ import com.aircraft.modules.security.service.UserDetailsServiceImpl; import com.aircraft.modules.security.service.dto.AuthUserDto; import com.aircraft.modules.security.service.dto.JwtUserDto; import com.aircraft.modules.system.domain.EmEmployees; -import com.aircraft.modules.system.domain.EmScenic; +import com.aircraft.modules.system.domain.User; +import com.aircraft.modules.system.domain.dto.UserPassVo; import com.aircraft.modules.system.domain.vo.EmEmployeesDetailVo; import com.aircraft.modules.system.domain.vo.EmEmployeesVo; import com.aircraft.modules.system.service.EmEmployeesService; -import com.aircraft.modules.system.domain.dto.EmEmployeesQueryCriteria; -import com.aircraft.utils.PageResult; -import com.aircraft.utils.RedisUtils; -import com.aircraft.utils.RsaUtils; -import com.aircraft.utils.StringUtils; +import com.aircraft.modules.system.service.UserService; +import com.aircraft.utils.*; import lombok.RequiredArgsConstructor; import java.util.HashMap; -import java.util.List; + import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; -import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.*; -import java.io.IOException; + import java.util.Map; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; /** @@ -76,6 +69,7 @@ public class EmEmployeesController { private final PasswordEncoder passwordEncoder; private final UserDetailsServiceImpl userDetailsService; private final EmEmployeesService emEmployeesService; + private final UserService userService; // @ApiOperation("导出数据") // @GetMapping(value = "/download") @@ -121,6 +115,24 @@ public class EmEmployeesController { throw new RuntimeException("查询详细信息失败"); } } + + @ApiOperation("修改密码") + @PostMapping(value = "/updatePass") + public ResponseEntity updateUserPass(@RequestBody UserPassVo passVo) throws Exception { + User user = userService.findByName(SecurityUtils.getCurrentUsername()); + String oldPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,passVo.getOldPass()); + String newPass = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey,passVo.getNewPass()); + + if(!passwordEncoder.matches(oldPass, user.getPassword())){ + throw new BadRequestException("修改失败,旧密码错误"); + } + if(passwordEncoder.matches(newPass, user.getPassword())){ + throw new BadRequestException("新密码不能与旧密码相同"); + } + userService.updatePass(user.getUsername(),passwordEncoder.encode(newPass)); + return new ResponseEntity<>(HttpStatus.OK); + } + // // @DeleteMapping // @Log("删除员工管理")