设置密码添加邮箱
This commit is contained in:
@@ -222,12 +222,12 @@ public class MyUserController {
|
|||||||
@RequestMapping("/getMailCaptcha")
|
@RequestMapping("/getMailCaptcha")
|
||||||
public R getMailCaptcha(String email) throws Exception {
|
public R getMailCaptcha(String email) throws Exception {
|
||||||
//验证一分钟内是否已经发过
|
//验证一分钟内是否已经发过
|
||||||
String redisCode = redisTemplate.opsForValue().get("RegistEMail" + email);
|
String redisCode = redisTemplate.opsForValue().get("RegistCode" + email);
|
||||||
if (!StringUtils.isEmpty(redisCode)) {
|
if (!StringUtils.isEmpty(redisCode)) {
|
||||||
long l = Long.parseLong(redisCode.split("_")[1]);
|
long l = Long.parseLong(redisCode.split("_")[1]);
|
||||||
if (System.currentTimeMillis() - l < 60000) {
|
if (System.currentTimeMillis() - l < 60000) {
|
||||||
//60s 内不能再发
|
//60s 内不能再发
|
||||||
return R.error(500,"邮箱验证码频率过高,请稍后再试!");
|
return R.error(500,"验证码频率过高,请稍后再试!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//生成随机五位数
|
//生成随机五位数
|
||||||
@@ -235,7 +235,7 @@ public class MyUserController {
|
|||||||
String code = random.nextInt(99999) + "";
|
String code = random.nextInt(99999) + "";
|
||||||
String timeCode = code + "_"+System.currentTimeMillis();
|
String timeCode = code + "_"+System.currentTimeMillis();
|
||||||
//redis 缓存验证码
|
//redis 缓存验证码
|
||||||
redisTemplate.opsForValue().set("RegistEMail"+email,timeCode,5, TimeUnit.MINUTES);
|
redisTemplate.opsForValue().set("RegistCode"+email,timeCode,5, TimeUnit.MINUTES);
|
||||||
//发送
|
//发送
|
||||||
return MailUtil.sendMail("疯子读书邮箱验证码",code,email);
|
return MailUtil.sendMail("疯子读书邮箱验证码",code,email);
|
||||||
}
|
}
|
||||||
@@ -279,11 +279,11 @@ public class MyUserController {
|
|||||||
String redisCode = redisTemplate.opsForValue().get("RegistCode" + tel);
|
String redisCode = redisTemplate.opsForValue().get("RegistCode" + tel);
|
||||||
System.out.println(redisCode);
|
System.out.println(redisCode);
|
||||||
if (StringUtils.isEmpty(redisCode)){
|
if (StringUtils.isEmpty(redisCode)){
|
||||||
return R.error(500,"短信验证码已过期,请重试");
|
return R.error(500,"验证码已过期,请重试");
|
||||||
}
|
}
|
||||||
String lcode = redisCode.split("_")[0];
|
String lcode = redisCode.split("_")[0];
|
||||||
if (!lcode.equals(code)) {
|
if (!lcode.equals(code)) {
|
||||||
return R.error(500,"短信验证码不符!");
|
return R.error(500,"验证码不符!");
|
||||||
}
|
}
|
||||||
//查询是否存在当前用户手机号
|
//查询是否存在当前用户手机号
|
||||||
LambdaQueryWrapper<MyUserEntity> wrapper = new LambdaQueryWrapper();
|
LambdaQueryWrapper<MyUserEntity> wrapper = new LambdaQueryWrapper();
|
||||||
@@ -334,6 +334,7 @@ public class MyUserController {
|
|||||||
for (MyUserEntity user : userList) {
|
for (MyUserEntity user : userList) {
|
||||||
if (user.getPassword() == null) {
|
if (user.getPassword() == null) {
|
||||||
flag++;
|
flag++;
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
if (MD5Utils.getSaltverifyMD5(password,user.getPassword())){
|
if (MD5Utils.getSaltverifyMD5(password,user.getPassword())){
|
||||||
R r = sysUserTokenService.createToken(user.getId());
|
R r = sysUserTokenService.createToken(user.getId());
|
||||||
@@ -354,34 +355,29 @@ public class MyUserController {
|
|||||||
public R setPassword(@RequestParam("phone") String phone,
|
public R setPassword(@RequestParam("phone") String phone,
|
||||||
@RequestParam("password") String password,
|
@RequestParam("password") String password,
|
||||||
@RequestParam("code") String code) {
|
@RequestParam("code") String code) {
|
||||||
|
|
||||||
String redisCode = redisTemplate.opsForValue().get("RegistCode" + phone);
|
String redisCode = redisTemplate.opsForValue().get("RegistCode" + phone);
|
||||||
|
|
||||||
System.out.println(redisCode);
|
System.out.println(redisCode);
|
||||||
|
|
||||||
if (StringUtils.isEmpty(redisCode)){
|
if (StringUtils.isEmpty(redisCode)){
|
||||||
return R.error(500,"短信验证码已过期,请重试");
|
return R.error(500,"验证码已过期,请重试");
|
||||||
}
|
}
|
||||||
|
|
||||||
String lcode = redisCode.split("_")[0];
|
String lcode = redisCode.split("_")[0];
|
||||||
|
|
||||||
if (!lcode.equals(code)) {
|
if (!lcode.equals(code)) {
|
||||||
return R.error(500,"短信验证码不符!");
|
return R.error(500,"验证码不符!");
|
||||||
}
|
}
|
||||||
|
|
||||||
//查询是否存在当前用户手机号
|
//查询是否存在当前用户手机号
|
||||||
MyUserEntity userEntity = userService.getBaseMapper().selectOne(new QueryWrapper<MyUserEntity>().eq("tel", phone));
|
LambdaQueryWrapper<MyUserEntity> wrapper = new LambdaQueryWrapper<>();
|
||||||
if (userEntity == null) {
|
if (phone.contains("@")){
|
||||||
// 用户不存在则创建用户 注册成功
|
wrapper.eq(MyUserEntity::getEmail, phone);
|
||||||
return R.error(500,"当前用户手机号不存在!");
|
}else {
|
||||||
|
wrapper.eq(MyUserEntity::getTel, phone);
|
||||||
|
}
|
||||||
|
MyUserEntity userEntity = userService.getBaseMapper().selectOne(wrapper);
|
||||||
|
if (userEntity == null) {
|
||||||
|
return R.error(500,"当前用户不存在!");
|
||||||
}
|
}
|
||||||
|
|
||||||
String saltMD5 = MD5Utils.getSaltMD5(password);
|
String saltMD5 = MD5Utils.getSaltMD5(password);
|
||||||
|
|
||||||
userEntity.setPassword(saltMD5);
|
userEntity.setPassword(saltMD5);
|
||||||
|
|
||||||
userService.updateById(userEntity);
|
userService.updateById(userEntity);
|
||||||
|
|
||||||
return R.ok("成功");
|
return R.ok("成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user