add Gao user invite
This commit is contained in:
+6
-10
@@ -18,6 +18,7 @@ import com.imyeyu.java.bean.timi.TimiException;
|
||||
import com.imyeyu.spring.TimiSpring;
|
||||
import com.imyeyu.spring.util.Redis;
|
||||
import com.imyeyu.utils.Digest;
|
||||
import com.imyeyu.utils.Regex;
|
||||
import com.imyeyu.utils.Time;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -38,7 +39,6 @@ import java.util.concurrent.ThreadLocalRandom;
|
||||
@RequiredArgsConstructor(onConstructor_ = {@Lazy})
|
||||
public class UserLoginServiceImplement implements UserLoginService, TimiJava {
|
||||
|
||||
private static final String REGEX_PHONE_NO = "^1\\d{10}$";
|
||||
private static final String USER_TOKEN_KEY_PREFIX = "USER:TOKEN:";
|
||||
private static final String PHONE_VERIFY_KEY_PREFIX = "USER:PHONE:VERIFY:";
|
||||
private static final long PHONE_VERIFY_CODE_TTL = Time.M * 5;
|
||||
@@ -61,7 +61,7 @@ public class UserLoginServiceImplement implements UserLoginService, TimiJava {
|
||||
User dbUser = userService.get(req.getUser());
|
||||
if (dbUser == null && req.getUser().contains("@")) {
|
||||
dbUser = userService.getByVerifiedEmail(req.getUser());
|
||||
} else if (dbUser == null && isPhoneNo(req.getUser())) {
|
||||
} else if (dbUser == null && Regex.isMatch(Regex.MOBILE_PHONE, req.getUser())) {
|
||||
dbUser = userService.getByVerifiedPhoneNo(req.getUser());
|
||||
} else if (dbUser == null) {
|
||||
dbUser = userService.getByName(req.getUser());
|
||||
@@ -143,8 +143,8 @@ public class UserLoginServiceImplement implements UserLoginService, TimiJava {
|
||||
@Transactional(TimiServerDBConfig.ROLLBACKER)
|
||||
@Override
|
||||
public void sendPhoneVerifyCode(String phoneNo) {
|
||||
TimiException.requiredTrue(isPhoneNo(phoneNo), "invalid phone number");
|
||||
User verifiedUser = userService.getByVerifiedPhoneNo(phoneNo);
|
||||
TimiException.requiredTrue(Regex.isMatch(Regex.MOBILE_PHONE, phoneNo), "invalid phone number");
|
||||
User verifiedUser = userService.getByPhoneNo(phoneNo);
|
||||
User loginUser = getRequireLoginUser();
|
||||
TimiException.requiredTrue(verifiedUser == null || verifiedUser.getId().equals(loginUser.getId()), "existed phone number");
|
||||
|
||||
@@ -156,11 +156,11 @@ public class UserLoginServiceImplement implements UserLoginService, TimiJava {
|
||||
@Transactional(TimiServerDBConfig.ROLLBACKER)
|
||||
@Override
|
||||
public void verifyPhoneNo(String phoneNo, String verifyCode) {
|
||||
TimiException.requiredTrue(isPhoneNo(phoneNo), "invalid phone number");
|
||||
TimiException.requiredTrue(Regex.isMatch(Regex.MOBILE_PHONE, phoneNo), "invalid phone number");
|
||||
TimiException.required(verifyCode, "not found verify code");
|
||||
|
||||
User user = getRequireLoginUser();
|
||||
User verifiedUser = userService.getByVerifiedPhoneNo(phoneNo);
|
||||
User verifiedUser = userService.getByPhoneNo(phoneNo);
|
||||
TimiException.requiredTrue(verifiedUser == null || verifiedUser.getId().equals(user.getId()), "existed phone number");
|
||||
|
||||
String cacheCode = redisUserPhoneVerify.get(getPhoneVerifyKey(phoneNo));
|
||||
@@ -188,10 +188,6 @@ public class UserLoginServiceImplement implements UserLoginService, TimiJava {
|
||||
userService.delete(user.getId());
|
||||
}
|
||||
|
||||
private boolean isPhoneNo(String value) {
|
||||
return TimiJava.isNotEmpty(value) && value.matches(REGEX_PHONE_NO);
|
||||
}
|
||||
|
||||
private String getPhoneVerifyKey(String phoneNo) {
|
||||
return "%s%s".formatted(PHONE_VERIFY_KEY_PREFIX, phoneNo);
|
||||
}
|
||||
|
||||
+2
-2
@@ -57,7 +57,7 @@ public class UserServiceImplement extends AbstractEntityService<User, String> im
|
||||
{
|
||||
if (TimiJava.isNotEmpty(user.getPhoneNo())) {
|
||||
TimiException.requiredTrue(user.isValidPhone(), "invalid phone");
|
||||
User byPhoneNo = getByVerifiedPhoneNo(user.getPhoneNo());
|
||||
User byPhoneNo = getByPhoneNo(user.getPhoneNo());
|
||||
TimiException.requiredNull(byPhoneNo, "existed phone number");
|
||||
}
|
||||
}
|
||||
@@ -94,7 +94,7 @@ public class UserServiceImplement extends AbstractEntityService<User, String> im
|
||||
if (TimiJava.isNotEmpty(phoneNo)) {
|
||||
TimiException.requiredTrue(user.isValidPhone(), "invalid phone");
|
||||
if (!phoneNo.equals(dbUser.getPhoneNo())) {
|
||||
User byPhoneNo = getByVerifiedPhoneNo(phoneNo);
|
||||
User byPhoneNo = getByPhoneNo(phoneNo);
|
||||
TimiException.requiredTrue(byPhoneNo == null || byPhoneNo.getId().equals(dbUser.getId()), "existed phone number");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user