添加了用户修改账号密码的功能模块
This commit is contained in:
		| @@ -314,4 +314,36 @@ public class SysUserController { | |||||||
|         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,maps,locale); |         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,maps,locale); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * 用户修改密码 | ||||||
|  |      * @param map | ||||||
|  |      * @param token | ||||||
|  |      * @return | ||||||
|  |      */ | ||||||
|  |     @PostMapping("/updatePassword") | ||||||
|  |     public String updatePassword(@RequestBody Map map,@RequestHeader(value="Authorization") String token){ | ||||||
|  |         // 获取区域信息 | ||||||
|  |         Locale locale = LocaleContextHolder.getLocale(); | ||||||
|  |         String userName = (String) map.get("userName"); | ||||||
|  |         String oldPassword = (String) map.get("oldPassword"); | ||||||
|  |         String newPassword = (String) map.get("newPassword"); | ||||||
|  |         String confirmPassword = (String) map.get("confirmPassword"); | ||||||
|  |         // 验证token | ||||||
|  |         String tokenUserName = TokenUtil.getTokenUserName(token); | ||||||
|  |         SysUserEntity sysUserEntity = sysUserDao.selectByUserName(tokenUserName); | ||||||
|  |         if(sysUserEntity == null){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.USER_LOGIN_ERROR,"您还没有注册登录,请先注册登录",locale); | ||||||
|  |         } | ||||||
|  |         if(oldPassword == null || "".equals(oldPassword)){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"旧密码不能为空!",locale); | ||||||
|  |         } | ||||||
|  |         if(newPassword == null || "".equals(newPassword)){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"新密码不能为空!",locale); | ||||||
|  |         } | ||||||
|  |         if(userName == null || "".equals(userName)){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.DATA_NONE,"账号不能为空!",locale); | ||||||
|  |         } | ||||||
|  |         return sysUserService.updatePassword(oldPassword,newPassword,confirmPassword,userName,sysUserEntity); | ||||||
|  |     } | ||||||
|  |  | ||||||
| } | } | ||||||
|   | |||||||
| @@ -153,4 +153,14 @@ public interface SysUserDao extends JpaRepository<SysUserEntity,Integer> { | |||||||
|             "last_entry_time lastentrytime,add_time addtime from sys_user",nativeQuery = true) |             "last_entry_time lastentrytime,add_time addtime from sys_user",nativeQuery = true) | ||||||
|     List<Map<String,Object>> selectAllUser(); |     List<Map<String,Object>> selectAllUser(); | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * 用户修改账号密码 | ||||||
|  |      * @param userId | ||||||
|  |      * @param newPassword | ||||||
|  |      * @param userName | ||||||
|  |      */ | ||||||
|  |     @Query(value = "update sys_user set password = ?2,user_name = ?3 where id = ?1",nativeQuery = true) | ||||||
|  |     @Modifying(clearAutomatically=true) | ||||||
|  |     void updatePassword(Integer userId,String newPassword,String userName); | ||||||
|  |  | ||||||
| } | } | ||||||
|   | |||||||
| @@ -105,4 +105,15 @@ public interface SysUserService { | |||||||
|      * @param userId |      * @param userId | ||||||
|      */ |      */ | ||||||
|     void updateDisable(Integer userId); |     void updateDisable(Integer userId); | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * 用户修改密码 | ||||||
|  |      * @param oldPassword | ||||||
|  |      * @param newPassword | ||||||
|  |      * @param confirmPassword | ||||||
|  |      * @param userName | ||||||
|  |      * @param sysUserEntity | ||||||
|  |      * @return | ||||||
|  |      */ | ||||||
|  |     String updatePassword(String oldPassword,String newPassword,String confirmPassword,String userName,SysUserEntity sysUserEntity); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -268,4 +268,29 @@ public class SysUserServiceImpl implements SysUserService { | |||||||
|         sysUserDao.updateDisable(userId); |         sysUserDao.updateDisable(userId); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * 用户修改账号密码 | ||||||
|  |      * @param oldPassword | ||||||
|  |      * @param newPassword | ||||||
|  |      * @param confirmPassword | ||||||
|  |      * @param userName | ||||||
|  |      * @param sysUserEntity | ||||||
|  |      * @return | ||||||
|  |      */ | ||||||
|  |     @Transactional(rollbackFor=Exception.class) | ||||||
|  |     @Override | ||||||
|  |     public String updatePassword(String oldPassword, String newPassword, String confirmPassword, String userName, SysUserEntity sysUserEntity) { | ||||||
|  |         Locale locale = LocaleContextHolder.getLocale(); | ||||||
|  |         String oldFrontPassword = encry256(oldPassword + sysUserEntity.getSalt()); | ||||||
|  |         if(!oldFrontPassword.equals(sysUserEntity.getPassword())){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.PROCESS_FAIL,"旧密码输入错误",locale); | ||||||
|  |         } | ||||||
|  |         if(!newPassword.equals(confirmPassword)){ | ||||||
|  |             return outputEncapsulationObject(PromptMessageEnum.PROCESS_FAIL,"两次密码输入不一致",locale); | ||||||
|  |         } | ||||||
|  |         String newAfterPassword = encry256(newPassword + sysUserEntity.getSalt()); | ||||||
|  |         sysUserDao.updatePassword(sysUserEntity.getId(),newAfterPassword,userName); | ||||||
|  |         return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"密码修改成功",locale); | ||||||
|  |     } | ||||||
|  |  | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user