|
@@ -197,54 +197,58 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public boolean forgetOrModifyPassword(String phone, String newPhone, String oldPassword, String newPassword, String confirmNewPassword, String verificationCode, Integer type) {
|
|
|
|
|
|
+ public R<String> forgetOrModifyPassword(String phone, String newPhone, String oldPassword, String newPassword, String confirmNewPassword, String verificationCode, Integer type) {
|
|
boolean flag = false;
|
|
boolean flag = false;
|
|
- //类型为0 忘记密码
|
|
|
|
- if (type == 0) {
|
|
|
|
- flag = forgetPassword(phone, newPassword, verificationCode);
|
|
|
|
- }
|
|
|
|
- //修改密码
|
|
|
|
- else if (type == 1) {
|
|
|
|
- //效验新密码规则
|
|
|
|
- passwordVerification(phone, oldPassword, newPassword, confirmNewPassword);
|
|
|
|
- LambdaUpdateWrapper<StoreUser> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
- updateWrapper.eq(StoreUser::getPhone, phone);
|
|
|
|
- updateWrapper.set(StoreUser::getPassword, newPassword);
|
|
|
|
- flag = this.update(updateWrapper);
|
|
|
|
-
|
|
|
|
- //修改成功后同步删除redis缓存token
|
|
|
|
- if (flag) {
|
|
|
|
- String token = "store_" + phone;
|
|
|
|
- String toKenStr = baseRedisService.getString(token);
|
|
|
|
- if (toKenStr != null) {
|
|
|
|
- baseRedisService.delete(token);
|
|
|
|
|
|
+ try{
|
|
|
|
+ //类型为0 忘记密码
|
|
|
|
+ if (type == 0) {
|
|
|
|
+ return forgetPassword(phone, newPassword, verificationCode);
|
|
|
|
+ }
|
|
|
|
+ //修改密码
|
|
|
|
+ else if (type == 1) {
|
|
|
|
+ //效验新密码规则
|
|
|
|
+ passwordVerification(phone, oldPassword, newPassword, confirmNewPassword);
|
|
|
|
+ LambdaUpdateWrapper<StoreUser> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
+ updateWrapper.eq(StoreUser::getPhone, phone);
|
|
|
|
+ updateWrapper.set(StoreUser::getPassword, newPassword);
|
|
|
|
+ flag = this.update(updateWrapper);
|
|
|
|
+
|
|
|
|
+ //修改成功后同步删除redis缓存token
|
|
|
|
+ if (flag) {
|
|
|
|
+ String token = "store_" + phone;
|
|
|
|
+ String toKenStr = baseRedisService.getString(token);
|
|
|
|
+ if (toKenStr != null) {
|
|
|
|
+ baseRedisService.delete(token);
|
|
|
|
+ }
|
|
|
|
+ return R.success("密码修改成");
|
|
|
|
+ } else {
|
|
|
|
+ log.error("密码修改失败");
|
|
|
|
+ return R.fail("密码修改失败");
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
- log.error("密码修改失败");
|
|
|
|
- throw new RuntimeException("密码修改失败");
|
|
|
|
}
|
|
}
|
|
- return flag;
|
|
|
|
- }
|
|
|
|
- //更换绑定手机号
|
|
|
|
- else if (type == 2) {
|
|
|
|
- flag = ChangeBoundPhone(phone, newPhone, verificationCode);
|
|
|
|
|
|
+ //更换绑定手机号
|
|
|
|
+ else if (type == 2) {
|
|
|
|
+ return ChangeBoundPhone(phone, newPhone, verificationCode);
|
|
|
|
+ }
|
|
|
|
+ return R.success("密码修改成功");
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ return R.fail(e.getMessage());
|
|
}
|
|
}
|
|
- return flag;
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Map<String, String> changePhoneVerification(String phone, String oldPassword, String verificationCode) {
|
|
public Map<String, String> changePhoneVerification(String phone, String oldPassword, String verificationCode) {
|
|
Map<String, String> changePhoneMap = new HashMap<>();
|
|
Map<String, String> changePhoneMap = new HashMap<>();
|
|
|
|
|
|
- if (oldPassword != null || !oldPassword.equals("")) {
|
|
|
|
|
|
+ if (oldPassword != null && !oldPassword.equals("")) {
|
|
LambdaUpdateWrapper<StoreUser> userLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
LambdaUpdateWrapper<StoreUser> userLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
userLambdaUpdateWrapper.eq(StoreUser::getPhone, phone);
|
|
userLambdaUpdateWrapper.eq(StoreUser::getPhone, phone);
|
|
StoreUser storeUser = this.getOne(userLambdaUpdateWrapper);
|
|
StoreUser storeUser = this.getOne(userLambdaUpdateWrapper);
|
|
if (storeUser.getPassword().equals(oldPassword)) {
|
|
if (storeUser.getPassword().equals(oldPassword)) {
|
|
- changePhoneMap.put("passwordStatus", "0");
|
|
|
|
|
|
+ changePhoneMap.put("passwordStatus", "1");
|
|
return changePhoneMap;
|
|
return changePhoneMap;
|
|
} else {
|
|
} else {
|
|
- changePhoneMap.put("passwordStatus", "1");
|
|
|
|
|
|
+ changePhoneMap.put("passwordStatus", "0");
|
|
return changePhoneMap;
|
|
return changePhoneMap;
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
@@ -252,10 +256,10 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
//获取新手机号验证码
|
|
//获取新手机号验证码
|
|
String redisVerificationCode = baseRedisService.getString(oldPhoneVerification);
|
|
String redisVerificationCode = baseRedisService.getString(oldPhoneVerification);
|
|
if (redisVerificationCode.equals(verificationCode)) {
|
|
if (redisVerificationCode.equals(verificationCode)) {
|
|
- changePhoneMap.put("verificationStatus", "0");
|
|
|
|
|
|
+ changePhoneMap.put("verificationStatus", "1");
|
|
return changePhoneMap;
|
|
return changePhoneMap;
|
|
} else {
|
|
} else {
|
|
- changePhoneMap.put("verificationStatus", "1");
|
|
|
|
|
|
+ changePhoneMap.put("verificationStatus", "0");
|
|
return changePhoneMap;
|
|
return changePhoneMap;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -265,6 +269,10 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
LambdaUpdateWrapper<StoreUser> wrapperFans = new LambdaUpdateWrapper<>();
|
|
LambdaUpdateWrapper<StoreUser> wrapperFans = new LambdaUpdateWrapper<>();
|
|
wrapperFans.eq(StoreUser::getPhone, phone);
|
|
wrapperFans.eq(StoreUser::getPhone, phone);
|
|
StoreUser storeUser = this.getOne(wrapperFans);
|
|
StoreUser storeUser = this.getOne(wrapperFans);
|
|
|
|
+ if (!newPassword.equals(confirmNewPassword)) {
|
|
|
|
+ log.info("两次新密码输入不一致 请重新输入");
|
|
|
|
+ throw new RuntimeException("两次新密码输入不一致 请重新输入");
|
|
|
|
+ }
|
|
if (storeUser == null || storeUser.equals("")) {
|
|
if (storeUser == null || storeUser.equals("")) {
|
|
log.info("该手机号没有注册过账户");
|
|
log.info("该手机号没有注册过账户");
|
|
throw new RuntimeException("该手机号没有注册过账户");
|
|
throw new RuntimeException("该手机号没有注册过账户");
|
|
@@ -276,13 +284,9 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
throw new RuntimeException("密码输入错误 请重新输入");
|
|
throw new RuntimeException("密码输入错误 请重新输入");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (!newPassword.equals(confirmNewPassword)) {
|
|
|
|
- log.info("两次新密码输入不一致 请重新输入");
|
|
|
|
- throw new RuntimeException("两次新密码输入不一致 请重新输入");
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean forgetPassword(String phone, String newPassword, String verificationCode) {
|
|
|
|
|
|
+ private R<String> forgetPassword(String phone, String newPassword, String verificationCode) {
|
|
boolean flag = false;
|
|
boolean flag = false;
|
|
String key = "verification_" + phone;
|
|
String key = "verification_" + phone;
|
|
String redisVerificationCode = baseRedisService.getString(key);
|
|
String redisVerificationCode = baseRedisService.getString(key);
|
|
@@ -303,25 +307,32 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
log.error("密码修改失败");
|
|
log.error("密码修改失败");
|
|
throw new RuntimeException("密码修改失败");
|
|
throw new RuntimeException("密码修改失败");
|
|
}
|
|
}
|
|
- return flag;
|
|
|
|
|
|
+ return R.success("密码修改成功");
|
|
} else {
|
|
} else {
|
|
throw new RuntimeException("验证码错误");
|
|
throw new RuntimeException("验证码错误");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean ChangeBoundPhone(String phone, String newPhone, String verificationCode) {
|
|
|
|
|
|
+ private R<String> ChangeBoundPhone(String phone, String newPhone, String verificationCode) {
|
|
boolean flag = false;
|
|
boolean flag = false;
|
|
String newPhoneVerification = "verification_" + newPhone;
|
|
String newPhoneVerification = "verification_" + newPhone;
|
|
//获取新手机号验证码
|
|
//获取新手机号验证码
|
|
String redisVerificationCode = baseRedisService.getString(newPhoneVerification);
|
|
String redisVerificationCode = baseRedisService.getString(newPhoneVerification);
|
|
- if(!StringUtils.isEmpty(redisVerificationCode) && redisVerificationCode.equals(verificationCode)){
|
|
|
|
- LambdaUpdateWrapper<StoreUser> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
- updateWrapper.eq(StoreUser::getPhone, phone);
|
|
|
|
- StoreUser storeUser = this.getOne(updateWrapper);
|
|
|
|
- if(storeUser !=null){
|
|
|
|
|
|
+ if (!StringUtils.isEmpty(redisVerificationCode) && redisVerificationCode.equals(verificationCode)) {
|
|
|
|
+ LambdaUpdateWrapper<StoreUser> newUpdateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
+ newUpdateWrapper.eq(StoreUser::getPhone, newPhone);
|
|
|
|
+ StoreUser newStoreUser = this.getOne(newUpdateWrapper);
|
|
|
|
+ if (newStoreUser != null) {
|
|
|
|
+ if(newStoreUser.getPhone().equals(newPhone)){
|
|
|
|
+ throw new RuntimeException("该手机号已注册过商户");
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ LambdaUpdateWrapper<StoreUser> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
|
+ updateWrapper.eq(StoreUser::getPhone, phone);
|
|
|
|
+ StoreUser storeUser = this.getOne(updateWrapper);
|
|
storeUser.setPhone(newPhone);
|
|
storeUser.setPhone(newPhone);
|
|
flag = this.updateById(storeUser);
|
|
flag = this.updateById(storeUser);
|
|
- if(flag){
|
|
|
|
|
|
+ if (flag) {
|
|
String token = "store_" + phone;
|
|
String token = "store_" + phone;
|
|
String tokenStr = baseRedisService.getString(token);
|
|
String tokenStr = baseRedisService.getString(token);
|
|
if (tokenStr != null) {
|
|
if (tokenStr != null) {
|
|
@@ -329,10 +340,10 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }else{
|
|
|
|
|
|
+ } else {
|
|
throw new RuntimeException("验证码错误");
|
|
throw new RuntimeException("验证码错误");
|
|
}
|
|
}
|
|
- return flag;
|
|
|
|
|
|
+ return R.success("新手机号绑定成功");
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -576,9 +587,9 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
if (null != storeUser.getStoreId()) {
|
|
if (null != storeUser.getStoreId()) {
|
|
StoreInfo storeInfo = storeInfoMapper.selectById(storeUser.getStoreId());
|
|
StoreInfo storeInfo = storeInfoMapper.selectById(storeUser.getStoreId());
|
|
//vaule为0代表有商铺未注销
|
|
//vaule为0代表有商铺未注销
|
|
- storeMap.put("accountStore", "0");
|
|
|
|
|
|
+ storeMap.put("accountStore", "1");
|
|
} else {
|
|
} else {
|
|
- //vaule为1代表绑定店铺注销
|
|
|
|
|
|
+ //vaule为1代表绑定店铺已注销
|
|
storeMap.put("accountStore", "1");
|
|
storeMap.put("accountStore", "1");
|
|
}
|
|
}
|
|
if (storeUser.getMoney() != null && storeUser.getMoney() > 0) {
|
|
if (storeUser.getMoney() != null && storeUser.getMoney() > 0) {
|
|
@@ -661,7 +672,7 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
if (num > 0) {
|
|
if (num > 0) {
|
|
// 发送通知
|
|
// 发送通知
|
|
LifeNotice lifeMessage = new LifeNotice();
|
|
LifeNotice lifeMessage = new LifeNotice();
|
|
- lifeMessage.setReceiverId("user_" + storeUser.getPhone());
|
|
|
|
|
|
+ lifeMessage.setReceiverId("store_" + storeUser.getPhone());
|
|
String text = "您提交的账号注销申请已成功提交, 系统将按流程进行处理. 注销申请提交后, 将进入7天的冷静期. 期间您可以随时在" +
|
|
String text = "您提交的账号注销申请已成功提交, 系统将按流程进行处理. 注销申请提交后, 将进入7天的冷静期. 期间您可以随时在" +
|
|
"[账号信息]撤回申请. 冷静期结束后, 系统将正式开始注销操作. 账号内所有数据(包括但不限于个人信息、 资产等) 将被永久清除, 且无法恢复." +
|
|
"[账号信息]撤回申请. 冷静期结束后, 系统将正式开始注销操作. 账号内所有数据(包括但不限于个人信息、 资产等) 将被永久清除, 且无法恢复." +
|
|
"如有疑问, 可联系【客服】咨询. 感谢您使用我们的服务.";
|
|
"如有疑问, 可联系【客服】咨询. 感谢您使用我们的服务.";
|
|
@@ -699,7 +710,7 @@ public class StoreUserServiceImpl extends ServiceImpl<StoreUserMapper, StoreUser
|
|
if (num > 0) {
|
|
if (num > 0) {
|
|
// 发送通知
|
|
// 发送通知
|
|
LifeNotice lifeMessage = new LifeNotice();
|
|
LifeNotice lifeMessage = new LifeNotice();
|
|
- lifeMessage.setReceiverId("user_" + storeUser.getPhone());
|
|
|
|
|
|
+ lifeMessage.setReceiverId("store_" + storeUser.getPhone());
|
|
String text = "处理结果:已撤回注销申请" +
|
|
String text = "处理结果:已撤回注销申请" +
|
|
"处理时间:" + storeUser.getCreatedTime() +
|
|
"处理时间:" + storeUser.getCreatedTime() +
|
|
"当前账号状态已恢复正常. 您可以继续使用该账号登录并享受各项服务, 所有个人数据及账户信息" +
|
|
"当前账号状态已恢复正常. 您可以继续使用该账号登录并享受各项服务, 所有个人数据及账户信息" +
|