飞行员端修改密码

This commit is contained in:
lihongbiao 2025-07-17 17:22:13 +08:00
parent eedc56e346
commit dbce92d07b

View File

@ -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<Object> 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("删除员工管理")