版权声明:有一种生活不去经历不知其中艰辛,有一种艰辛不去体会,不会知道其中快乐,有一种快乐,没有拥有不知其中纯粹 https://blog.csdn.net/wwwzydcom/article/details/83105462
前台:使用的是easyUI的插件
//打开窗口
function openPasswordModifyDialog() {
$('#dlg').dialog('open');
}
点击保存按钮的绑定事件
function modifyPassword() {
$('#fm').form('submit',{
url: ctx+'/user/updateUserPwd',
onSubmit:function () {
return $(this).form('validate');
},
success: function (data) {
//console.log(data);
// 手动解析json 框架是json字符串 手动转换成json对象
data = JSON.parse(data);
if(data.code==200){
$.messager.alert('来自Crm',data.msg,'info',function () {
//登录成功,将原有的cookie信息删除 并跳转回登录页面
$.removeCookie("userIdStr");
$.removeCookie("userName");
$.removeCookie("realName");
window.location.href = ctx + '/index';
});
}else{
$.messager.alert('来自Crm',data.msg,'error');
}
}
});
}
Controller层
public ResultInfo updateUserPwd(String oldPassword,
String newPassword,
String confirmPassword, HttpServletRequest request){
Integer userId = LoginUserUtil.releaseUserIdFromCookie(request); //获取用户id
//将信息传递给service层
userService.updateUserPwd(oldPassword,newPassword,confirmPassword,userId);
return success("修改成功!");
}
service层
public void updateUserPwd(String oldPassword,
String newPassword,
String confirmPassword,
Integer userId){
//校验参数,非空,旧密码是否正确
checkUpdateUserPwdParams(oldPassword,newPassword,confirmPassword
User user = userMapper.queryById(userId);
AssertUtil.isTrue(null==user,"用户不存在或者已注销");
AssertUtil.isTrue(!Md5Util.encode(oldPassword).equals(user.getUserPwd()),"旧密码不正确");
//存加密后的字符串
String encodeNewPassword = Md5Util.encode(newPassword);
AssertUtil.isTrue(userMapper.updateUserPwd(encodeNewPassword,userId)<1,"用户密码更新失败");
);
private void checkUpdateUserPwdParams(String oldPassword, String newPassword, String confirmPassword) {
AssertUtil.isTrue(StringUtils.isBlank(oldPassword),"旧密码为空");
AssertUtil.isTrue(StringUtils.isBlank(newPassword),"新密码为空");
AssertUtil.isTrue(!newPassword.equals(confirmPassword),"两次密码不一致");
}
dao层
//修改密码
public Integer updateUserPwd(@Param("userPwd") String userPwd,@Param("id") Integer id);
注意:@Param(“userPwd”) 指定sql语句中的parameterType,即传入参数类型
UserMapper.xml
<!--修改密码-->
<update id="updateUserPwd">
UPDATE t_user SET user_pwd=#{userPwd} WHERE id=#{id}
</update>