手机号授权:用户手机号设置特殊字符串区分真假手机号

This commit is contained in:
lzm
2022-11-28 18:41:27 +08:00
committed by yeungchihang
parent a3732cb4b5
commit 85f33db6ce
10 changed files with 38 additions and 34 deletions

View File

@@ -8,6 +8,7 @@ import com.accompany.business.service.noble.NobleHelperService;
import com.accompany.business.service.noble.NobleUsersService;
import com.accompany.business.service.user.UsersService;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.utils.CommonUtil;
import com.accompany.core.model.*;
import com.accompany.core.mybatismapper.NobleUsersMapper;
import com.accompany.core.mybatismapper.PrettyErbanNoMapper;
@@ -346,8 +347,8 @@ import java.util.regex.Pattern;
Long userErbanNo = prettyErbanNo.getUserErbanNo();//获取原平台号
Account account = accountService.getById(prettyErbanNo.getUserUid());
if(account != null){
if(!checkisPhone(account.getPhone())){
account.setPhone(String.valueOf(userErbanNo));
if(!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())){
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
account.setErbanNo(userErbanNo);
accountService.updateById(account);//改成普通的平台号
@@ -357,8 +358,8 @@ import java.util.regex.Pattern;
UserNoblePrettyNoAppExample userNoblePrettyNoAppExample =new UserNoblePrettyNoAppExample();
userNoblePrettyNoAppExample.createCriteria().andUidEqualTo(user.getUid());
userNoblePrettyNoAppMapper.deleteByExample(userNoblePrettyNoAppExample);
if(!checkisPhone(user.getPhone())){
user.setPhone(String.valueOf(userErbanNo));
if(!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())){
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
user.setErbanNo(userErbanNo);
user.setHasPrettyErbanNo(false);//标记不是靓号
@@ -429,16 +430,16 @@ import java.util.regex.Pattern;
Account account = accountService.getById(pretty.getUserUid());
if(account != null){
account.setErbanNo(userErbanNo);
if(!checkisPhone(account.getPhone())){
account.setPhone(String.valueOf(userErbanNo));
if(!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())){
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
//改成普通的平台号
accountService.updateById(account);
}
Users user = usersBaseService.getUsersByErBanNo(pretty.getPrettyErbanNo());
if(!StringUtils.isEmpty(user)){
if(!checkisPhone(user.getPhone())){
user.setPhone(String.valueOf(userErbanNo));
if(!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())){
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
user.setErbanNo(userErbanNo);
user.setHasPrettyErbanNo(false);//标记不是靓号
@@ -688,8 +689,8 @@ import java.util.regex.Pattern;
if(!StringUtils.isEmpty(user)){
user.setErbanNo(prettyErbanNo);
user.setHasPrettyErbanNo(true);
if(!checkisPhone(user.getPhone())){
user.setPhone(String.valueOf(prettyErbanNo));
if(!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())){
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(String.valueOf(prettyErbanNo)));
}
usersMapper.updateByPrimaryKeySelective(user);//把指定人的平台号改成靓号
Gson gson =new Gson();
@@ -715,8 +716,8 @@ import java.util.regex.Pattern;
byte mm =0;
Account account = accountService.getAccountByErBanNo(userId);
if (account != null) {
if(!checkisPhone(account.getPhone())){
account.setPhone(String.valueOf(prettyErbanNo));
if(!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())){
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(prettyErbanNo.toString()));
}
account.setErbanNo(prettyErbanNo);
//把指定人的平台号改成靓号
@@ -724,8 +725,8 @@ import java.util.regex.Pattern;
}
Users user = usersBaseService.getUsersByErBanNo(userId);
if(!StringUtils.isEmpty(user)){
if(!checkisPhone(user.getPhone())){
user.setPhone(String.valueOf(prettyErbanNo));
if(!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())){
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(prettyErbanNo.toString()));
}
user.setErbanNo(prettyErbanNo);
user.setHasPrettyErbanNo(true);

View File

@@ -21,6 +21,7 @@ import com.accompany.common.redis.RedisKey;
import com.accompany.common.result.BusiResult;
import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.BlankUtil;
import com.accompany.common.utils.CommonUtil;
import com.accompany.common.utils.StringUtils;
import com.accompany.core.exception.ServiceException;
import com.accompany.core.model.Account;
@@ -270,7 +271,7 @@ public class UserCheckAdminService {
BusiResult<Account> busiResult = new BusiResult<>(BusiStatus.SUCCESS);
// 改account表
Account account = accountService.getById(uid);
account.setPhone(account.getErbanNo().toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
accountService.updateById(account);
// 改users表
Users user = usersService.getUsersByUid(uid);

View File

@@ -289,4 +289,8 @@ public class CommonUtil {
}
return phone.matches(phoneRegex);
}
public static String genSpecialPhoneForInitAccount(String erbanNo) {
return new StringBuilder("-").append(erbanNo).toString();
}
}

View File

@@ -140,7 +140,7 @@ public class AccountService extends ServiceImpl<AccountMapper, Account> {
Account account = getById(uid);
if (!StringUtils.isEmpty(account)) {
if (!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())) {
account.setPhone(String.valueOf(erbanNo));
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(String.valueOf(erbanNo)));
}
account.setErbanNo(erbanNo);
return updateById(account);

View File

@@ -85,7 +85,7 @@ public class PhoneAuthApplyRecordServiceImpl extends ServiceImpl<PhoneAuthApplyR
applyRecord.setPhone(phone);
applyRecord.setAuthCode(getAuthCode());
applyRecord.setPhoneAreaCode(phone);
applyRecord.setPhoneAreaCode(phoneAreaCode);
applyRecord.setHasUsed(Constant.GlobalStatus.in_valid);
applyRecord.setStatus(Constant.PhoneAuthApplyStatus.wait_audit);
this.saveOrUpdate(applyRecord);

View File

@@ -370,7 +370,7 @@ public class UsersBaseService extends BaseService {
if (user != null) {
//如果手机号是平台号,则更换为靓号
if (StringUtils.isBlank(user.getPhone()) || !CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())) {
user.setPhone(String.valueOf(erbanNo));
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(String.valueOf(erbanNo)));
}
user.setErbanNo(erbanNo);
user.setHasPrettyErbanNo(isPrettyNo);

View File

@@ -13,6 +13,7 @@ import com.accompany.common.constant.Constant;
import com.accompany.common.netease.neteaseacc.result.FileUploadRet;
import com.accompany.common.netease.neteaseacc.result.TokenRet;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.utils.CommonUtil;
import com.accompany.common.utils.DESUtils;
import com.accompany.common.utils.RandomUtil;
import com.accompany.common.utils.UUIDUitl;
@@ -135,7 +136,7 @@ public class AutoGenRobotService extends BaseService {
Account account = new Account();
try {
logger.info("start create robot account, erbanNo: {}", erbanNo);
account.setPhone(erbanNo.toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date);
@@ -212,7 +213,7 @@ public class AutoGenRobotService extends BaseService {
String nick = randomNickService.randomNick();
// 生成账号
Account account = new Account();
account.setPhone(erbanNo.toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date);
@@ -267,7 +268,7 @@ public class AutoGenRobotService extends BaseService {
try {
Long erbanNo = erBanNoService.getErBanNo();
Account account = new Account();
account.setPhone(erbanNo.toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date);
@@ -376,7 +377,7 @@ public class AutoGenRobotService extends BaseService {
Users user = new Users();
user.setUid(account.getUid());
user.setErbanNo(account.getErbanNo());
user.setPhone(account.getErbanNo().toString());
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
user.setNewDevice(true);
user.setDeviceId(UUID.randomUUID().toString());
user.setOs("android");

View File

@@ -11,6 +11,7 @@ import com.accompany.common.config.SystemConfig;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.result.BusiResult;
import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.CommonUtil;
import com.accompany.core.model.*;
import com.accompany.core.mybatismapper.PrettyErbanNoMapper;
import com.accompany.core.mybatismapper.PrettyErbanNoRecordMapper;
@@ -241,15 +242,15 @@ public class PrettyNoService {
//获取原平台号
Long userErbanNo = prettyErbanNo.getUserErbanNo();
Account account = accountService.getById(prettyErbanNo.getUserUid());
if (!checkisPhone(account.getPhone())) {
account.setPhone(String.valueOf(userErbanNo));
if (!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())) {
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
account.setErbanNo(userErbanNo);
//改成普通的平台号
accountService.updateById(account);
Users user = usersService.getUsersByUid(prettyErbanNo.getUserUid());
if (!checkisPhone(user.getPhone())) {
user.setPhone(String.valueOf(userErbanNo));
if (!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())) {
user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
}
user.setErbanNo(userErbanNo);
//标记不是靓号

View File

@@ -58,7 +58,6 @@ public class PhoneAuthApplyRecordController extends BaseController {
return new BusiResult(BusiStatus.SUCCESS);
}
@Authorization
@ApiOperation("用戶綁定的手機號是否 輸入過對應的授權碼")
@GetMapping("/isBoundPhoneAuthCode")
public BusiResult isBoundPhoneAuthCode(HttpServletRequest request) {

View File

@@ -9,10 +9,7 @@ import com.accompany.common.netease.neteaseacc.result.TokenRet;
import com.accompany.common.redis.RedisKey;
import com.accompany.common.result.BusiResult;
import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.BlankUtil;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.common.utils.GsonUtil;
import com.accompany.common.utils.UUIDUitl;
import com.accompany.common.utils.*;
import com.accompany.core.constant.BlockTypeEnum;
import com.accompany.core.dto.ShuMeiDto;
import com.accompany.core.dto.YiDunDto;
@@ -163,7 +160,7 @@ public class AccountManageService {
account.setSignTime(date);
account.setState("1");
account.setErbanNo(erBanNoService.getErBanNo());
account.setPhone(account.getErbanNo().toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
// 三方登录信息
account.setThirdLoginType(type);
account.setUnionId(unionId);
@@ -819,7 +816,7 @@ public class AccountManageService {
}
account.setErbanNo(erBanNoService.getErBanNo());
if (phone == null) {
account.setPhone(account.getErbanNo().toString());
account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
} else {
account.setPhone(phone);
}