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

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

View File

@@ -289,4 +289,8 @@ public class CommonUtil {
} }
return phone.matches(phoneRegex); 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); Account account = getById(uid);
if (!StringUtils.isEmpty(account)) { if (!StringUtils.isEmpty(account)) {
if (!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())) { if (!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())) {
account.setPhone(String.valueOf(erbanNo)); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(String.valueOf(erbanNo)));
} }
account.setErbanNo(erbanNo); account.setErbanNo(erbanNo);
return updateById(account); return updateById(account);

View File

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

View File

@@ -370,7 +370,7 @@ public class UsersBaseService extends BaseService {
if (user != null) { if (user != null) {
//如果手机号是平台号,则更换为靓号 //如果手机号是平台号,则更换为靓号
if (StringUtils.isBlank(user.getPhone()) || !CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())) { 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.setErbanNo(erbanNo);
user.setHasPrettyErbanNo(isPrettyNo); 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.FileUploadRet;
import com.accompany.common.netease.neteaseacc.result.TokenRet; import com.accompany.common.netease.neteaseacc.result.TokenRet;
import com.accompany.common.redis.RedisKey; import com.accompany.common.redis.RedisKey;
import com.accompany.common.utils.CommonUtil;
import com.accompany.common.utils.DESUtils; import com.accompany.common.utils.DESUtils;
import com.accompany.common.utils.RandomUtil; import com.accompany.common.utils.RandomUtil;
import com.accompany.common.utils.UUIDUitl; import com.accompany.common.utils.UUIDUitl;
@@ -135,7 +136,7 @@ public class AutoGenRobotService extends BaseService {
Account account = new Account(); Account account = new Account();
try { try {
logger.info("start create robot account, erbanNo: {}", erbanNo); logger.info("start create robot account, erbanNo: {}", erbanNo);
account.setPhone(erbanNo.toString()); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password)); account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get()); account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date); account.setLastLoginTime(date);
@@ -212,7 +213,7 @@ public class AutoGenRobotService extends BaseService {
String nick = randomNickService.randomNick(); String nick = randomNickService.randomNick();
// 生成账号 // 生成账号
Account account = new Account(); Account account = new Account();
account.setPhone(erbanNo.toString()); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password)); account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get()); account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date); account.setLastLoginTime(date);
@@ -267,7 +268,7 @@ public class AutoGenRobotService extends BaseService {
try { try {
Long erbanNo = erBanNoService.getErBanNo(); Long erbanNo = erBanNoService.getErBanNo();
Account account = new Account(); Account account = new Account();
account.setPhone(erbanNo.toString()); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(erbanNo.toString()));
account.setPassword(encryptPassword(password)); account.setPassword(encryptPassword(password));
account.setNeteaseToken(UUIDUitl.get()); account.setNeteaseToken(UUIDUitl.get());
account.setLastLoginTime(date); account.setLastLoginTime(date);
@@ -376,7 +377,7 @@ public class AutoGenRobotService extends BaseService {
Users user = new Users(); Users user = new Users();
user.setUid(account.getUid()); user.setUid(account.getUid());
user.setErbanNo(account.getErbanNo()); user.setErbanNo(account.getErbanNo());
user.setPhone(account.getErbanNo().toString()); user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
user.setNewDevice(true); user.setNewDevice(true);
user.setDeviceId(UUID.randomUUID().toString()); user.setDeviceId(UUID.randomUUID().toString());
user.setOs("android"); 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.redis.RedisKey;
import com.accompany.common.result.BusiResult; import com.accompany.common.result.BusiResult;
import com.accompany.common.status.BusiStatus; import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.CommonUtil;
import com.accompany.core.model.*; import com.accompany.core.model.*;
import com.accompany.core.mybatismapper.PrettyErbanNoMapper; import com.accompany.core.mybatismapper.PrettyErbanNoMapper;
import com.accompany.core.mybatismapper.PrettyErbanNoRecordMapper; import com.accompany.core.mybatismapper.PrettyErbanNoRecordMapper;
@@ -241,15 +242,15 @@ public class PrettyNoService {
//获取原平台号 //获取原平台号
Long userErbanNo = prettyErbanNo.getUserErbanNo(); Long userErbanNo = prettyErbanNo.getUserErbanNo();
Account account = accountService.getById(prettyErbanNo.getUserUid()); Account account = accountService.getById(prettyErbanNo.getUserUid());
if (!checkisPhone(account.getPhone())) { if (!CommonUtil.checkPhoneFormat(account.getPhoneAreaCode(),account.getPhone())) {
account.setPhone(String.valueOf(userErbanNo)); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
} }
account.setErbanNo(userErbanNo); account.setErbanNo(userErbanNo);
//改成普通的平台号 //改成普通的平台号
accountService.updateById(account); accountService.updateById(account);
Users user = usersService.getUsersByUid(prettyErbanNo.getUserUid()); Users user = usersService.getUsersByUid(prettyErbanNo.getUserUid());
if (!checkisPhone(user.getPhone())) { if (!CommonUtil.checkPhoneFormat(user.getPhoneAreaCode(),user.getPhone())) {
user.setPhone(String.valueOf(userErbanNo)); user.setPhone(CommonUtil.genSpecialPhoneForInitAccount(userErbanNo.toString()));
} }
user.setErbanNo(userErbanNo); user.setErbanNo(userErbanNo);
//标记不是靓号 //标记不是靓号

View File

@@ -57,8 +57,7 @@ public class PhoneAuthApplyRecordController extends BaseController {
phoneAuthApplyRecordService.boundAuthCode(uid,phone,authCode,phoneAreaCode,deviceInfo); phoneAuthApplyRecordService.boundAuthCode(uid,phone,authCode,phoneAreaCode,deviceInfo);
return new BusiResult(BusiStatus.SUCCESS); return new BusiResult(BusiStatus.SUCCESS);
} }
@Authorization
@ApiOperation("用戶綁定的手機號是否 輸入過對應的授權碼") @ApiOperation("用戶綁定的手機號是否 輸入過對應的授權碼")
@GetMapping("/isBoundPhoneAuthCode") @GetMapping("/isBoundPhoneAuthCode")
public BusiResult isBoundPhoneAuthCode(HttpServletRequest request) { 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.redis.RedisKey;
import com.accompany.common.result.BusiResult; import com.accompany.common.result.BusiResult;
import com.accompany.common.status.BusiStatus; import com.accompany.common.status.BusiStatus;
import com.accompany.common.utils.BlankUtil; import com.accompany.common.utils.*;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.common.utils.GsonUtil;
import com.accompany.common.utils.UUIDUitl;
import com.accompany.core.constant.BlockTypeEnum; import com.accompany.core.constant.BlockTypeEnum;
import com.accompany.core.dto.ShuMeiDto; import com.accompany.core.dto.ShuMeiDto;
import com.accompany.core.dto.YiDunDto; import com.accompany.core.dto.YiDunDto;
@@ -163,7 +160,7 @@ public class AccountManageService {
account.setSignTime(date); account.setSignTime(date);
account.setState("1"); account.setState("1");
account.setErbanNo(erBanNoService.getErBanNo()); account.setErbanNo(erBanNoService.getErBanNo());
account.setPhone(account.getErbanNo().toString()); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
// 三方登录信息 // 三方登录信息
account.setThirdLoginType(type); account.setThirdLoginType(type);
account.setUnionId(unionId); account.setUnionId(unionId);
@@ -819,7 +816,7 @@ public class AccountManageService {
} }
account.setErbanNo(erBanNoService.getErBanNo()); account.setErbanNo(erBanNoService.getErBanNo());
if (phone == null) { if (phone == null) {
account.setPhone(account.getErbanNo().toString()); account.setPhone(CommonUtil.genSpecialPhoneForInitAccount(account.getErbanNo().toString()));
} else { } else {
account.setPhone(phone); account.setPhone(phone);
} }