验证码有效期调整

This commit is contained in:
2023-08-16 09:17:48 +08:00
parent 422e7ef9d9
commit 5bd8644ec3
3 changed files with 16 additions and 47 deletions

View File

@@ -77,23 +77,6 @@ public class AppUserController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
/**
* app用户注册完自动登录
*/
@OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.ADD)
@PostMapping("appAutoLogin")
@ApiOperation("app用户注册完自动登录")
@ApiImplicitParams({
@ApiImplicitParam(name = "phone", value = "手机号", required = true, paramType = "query"),
@ApiImplicitParam(name = "devCode", value = "设备码", required = true, paramType = "query")
})
@Deprecated
public HttpResult<Object> appAutoLogin(@Param("phone") String phone,@Param("devCode") String devCode) {
String methodDescribe = getMethodDescribe("appAutoLogin");
Object object = appUserService.autoLogin(phone,devCode);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, object, methodDescribe);
}
/**
* 手机app已登录修改密码
*/

View File

@@ -21,11 +21,6 @@ public interface IAppUserService {
*/
void register(String phone, String code, String devCode);
/**
* 手机app注册完自动登录
*/
Object autoLogin(String phone, String devCode);
/**
* 手机app已登录修改密码
*/

View File

@@ -41,8 +41,6 @@ import java.util.Collections;
import java.util.Objects;
import java.util.Random;
//import com.njcn.auth.api.AuthFeignClient;
/**
* 类的介绍:
*
@@ -68,8 +66,6 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
private final IUserRoleService userRoleService;
// private final AuthFeignClient authFeignClient;
@Override
@Transactional(rollbackFor = Exception.class)
public void setMessage(String phone, String devCode, String type) {
@@ -150,12 +146,11 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
String key = RedisKeyEnum.SMS_LOGIN_KEY.getKey() + phone;
if (sendSmsResponse.getCode() != null && "OK".equals(sendSmsResponse.getCode())) {
//成功发送短信验证码后保存进redis
redisUtil.saveByKey(key, vcode);
//成功发送短信验证码后保存进redis验证码失效为5分钟
redisUtil.saveByKeyWithExpire(key, vcode,300L);
} else {
throw new BusinessException(UserResponseEnum.SEND_CODE_FAIL);
}
redisUtil.saveByKey(key, vcode);
AppSendMsg appSendMsg = new AppSendMsg();
appSendMsg.setPhone(phone);
appSendMsg.setMessage(vcode);
@@ -204,24 +199,11 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
appInfoSetService.save(appInfoSet);
//发送用户初始密码
sendPasswordMessage(phone,newUser.getId());
//删除验证码
deleteCode(phone);
}
}
@Override
public Object autoLogin(String phone, String devCode) {
//获取登录信息
// Object object = authFeignClient.autoLogin(phone).getData();
// if (Objects.isNull(object)){
// throw new BusinessException(UserResponseEnum.LOGIN_ERROR);
// }
// //修改设备码
// User user = this.lambdaQuery().eq(User::getPhone,phone).one();
// user.setDevCode(devCode);
// this.updateById(user);
// return object;
return null;
}
@Override
public void modifyPsd(String userId, String phone, String code, String password, String devCode) {
if (!PubUtils.match(PatternRegex.PHONE_REGEX, phone)){
@@ -242,6 +224,8 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
user.setLoginTime(LocalDateTime.now());
user.setDevCode(devCode);
this.updateById(user);
//删除验证码
deleteCode(phone);
}
@Override
@@ -264,6 +248,8 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
user.setLoginTime(LocalDateTime.now());
user.setDevCode(devCode);
this.updateById(user);
//删除验证码
deleteCode(phone);
}
@Override
@@ -297,6 +283,8 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
user2.setPhone(phoneNew);
user2.setDevCode(devCode);
this.updateById(user2);
//删除验证码
deleteCode(phoneNew);
}
@Override
@@ -326,12 +314,15 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
String redisCode = redisUtil.getStringByKey(key);
if (StringUtils.isEmpty(redisCode) || !code.equalsIgnoreCase(redisCode)) {
throw new BusinessException(UserResponseEnum.LOGIN_WRONG_CODE);
} else {
//存在且正确的验证,用完即删
redisUtil.delete(key);
}
}
private void deleteCode(String phone) {
String key = RedisKeyEnum.SMS_LOGIN_KEY.getKey() + phone;
//存在且正确的验证,用完即删
redisUtil.delete(key);
}
/**
* 发送默认密码短信给用户
* @param phone