|
|
@@ -0,0 +1,40 @@
|
|
|
+package me.zhengjie.application.bank.service.impl;
|
|
|
+
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import me.zhengjie.application.admin.service.dto.UserDto;
|
|
|
+import me.zhengjie.application.admin.service.mapstruct.UserMapper;
|
|
|
+import me.zhengjie.application.bank.controller.vo.BankUserPwdVO;
|
|
|
+import me.zhengjie.application.bank.service.BankUserService;
|
|
|
+import me.zhengjie.base.AppBaseResponse;
|
|
|
+import me.zhengjie.base.util.ApplicationContextUtil;
|
|
|
+import me.zhengjie.config.RsaProperties;
|
|
|
+import me.zhengjie.dao.mybatis.entity.User;
|
|
|
+import me.zhengjie.dao.mybatis.mapper.UserRepository;
|
|
|
+import me.zhengjie.exception.BadRequestException;
|
|
|
+import me.zhengjie.utils.RsaUtils;
|
|
|
+import org.springframework.security.crypto.password.PasswordEncoder;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.Date;
|
|
|
+
|
|
|
+@Service
|
|
|
+@Slf4j
|
|
|
+@RequiredArgsConstructor
|
|
|
+public class BankUserServiceImpl implements BankUserService {
|
|
|
+ private final UserRepository userRepository;
|
|
|
+ private final ApplicationContextUtil contextUtil;
|
|
|
+ private final PasswordEncoder passwordEncoder;
|
|
|
+
|
|
|
+
|
|
|
+ public void updatePwd(BankUserPwdVO userPwdVO) {
|
|
|
+ User user = userRepository.findByUsername(contextUtil.getCurrentUsername());
|
|
|
+ if (!passwordEncoder.matches(userPwdVO.getOldPwd(), user.getPassword())) {
|
|
|
+ throw new BadRequestException("修改失败,旧密码错误");
|
|
|
+ }
|
|
|
+ if (passwordEncoder.matches(userPwdVO.getNewPwd(), user.getPassword())) {
|
|
|
+ throw new BadRequestException("新密码不能与旧密码相同");
|
|
|
+ }
|
|
|
+ userRepository.updatePass(user.getUsername(), userPwdVO.getNewPwd(), new Date());
|
|
|
+ }
|
|
|
+}
|