java 短信找回密码_Java --修改密码/找回密码 接口共用

最近做完工程总结接口

接口定义如下

5f6d87197846bdcf752e1713409ce220.png

思路如下

1.修改密码

sql如下,看看就懂

update t_user set

PASSWORD = #{newPassword}

where

t_user.PASSWORD = #{oldPassword}

AND

(PHONE_NUM = #{loginInfo}

or

EMAIL = #{loginInfo})

2.找回密码

找回密码即是重置密码,用户短信验证成功后,只需要将新密码设置进来即可,sql如下

update t_user set

t_user.PASSWORD = #{newPassword}

where

PHONE_NUM = #{loginInfo}

or

EMAIL = #{loginInfo}

3.实现层如下

/**

* 用户密码修改

*

* @param loginInfo

*            用户手机号码或邮箱

* @param newPassword

*            新密码

* @param oldPassword

*            旧密码

* @param optType

*            密码修改模式(0, 修改密码;1:找回密码)

* @return 成功/失败

* @throws Exception

*/

public ResultObject updatePassword(String loginInfo, String newPassword, String oldPassword, Integer optType){

ResultObject ro = new ResultObject();

//判断标志位

boolean needBreak = false;

//修改密码

switch (optType) {

case 0:

//账号、新密码、旧密码不能为空

if ( StringUtils.isEmpty(loginInfo)||

StringUtils.isEmpty(newPassword) ||

StringUtils.isEmpty(oldPassword)){

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_FAILED);

needBreak = true;

}else if (StringUtils.equals(newPassword, oldPassword)) {

//新旧密码不能相同

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_FAILED);

needBreak = true;

}

if (!needBreak) {

//修改密码

int success = customerInfoMapper.updPassword(loginInfo, newPassword, oldPassword);

if (success == 1) {

//成功

ro.setResultCode(ResultCode.SUCCESS);

ro.setResultMsg(ResultMsg.MSG_SUCCESS);

}else

{

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_MODIFY_PASSWORD_FAILED);

}

}

break;

case 1:

//账号、重置密码不能为空

if ( StringUtils.isEmpty(loginInfo)||

StringUtils.isEmpty(newPassword)){

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_FAILED);

needBreak = true;

}

if (!needBreak) {

int success = customerInfoMapper.setPassword(loginInfo, newPassword);

if (success == 1) {

//成功

ro.setResultCode(ResultCode.SUCCESS);

ro.setResultMsg(ResultMsg.MSG_SUCCESS);

}else

{

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_SET_PASSWORD_FAILED);

}

}

default:

ro.setResultCode(ResultCode.FAILED);

ro.setResultMsg(ResultMsg.MSG_FAILED);

break;

}

return ro;

}


版权声明:本文为weixin_39581716原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。