提交 82cff69c authored 作者: Whispa's avatar Whispa

commit commit

上级 200f870e
......@@ -228,104 +228,110 @@ public class AuthController extends Controller {
// "token":"token",
// }
// Check if firebase token is valid
boolean isTokenValid = user.getToken() != null && validateFirebaseToken(user.getToken());
try {
// Check if firebase token is valid
boolean isTokenValid = user.getToken() != null && validateFirebaseToken(user.getToken());
boolean gotFromOld = false;
boolean gotFromOld = false;
// if valid do sign in if firebase Uid exist in database or register as new user
if (isTokenValid) {
//Query to find user from database by firebase uid
Optional<TbCfUserInfo> optional = userRepository.findByFirebaseUid(user.getFirebaseUid());
// if valid do sign in if firebase Uid exist in database or register as new user
if (isTokenValid) {
//Query to find user from database by firebase uid
Optional<TbCfUserInfo> optional = userRepository.findByFirebaseUid(user.getFirebaseUid());
if ( !optional.isPresent() && user.getEmail() != null && !user.getEmail().isEmpty() && userRepository.existsByAccount(user.getEmail())) {
optional = userRepository.findFirstByAccount(user.getEmail());
gotFromOld = optional.isPresent();
}
if (!optional.isPresent() && user.getEmail() != null && !user.getEmail().isEmpty() && userRepository.existsByAccount(user.getEmail())) {
optional = userRepository.findFirstByAccount(user.getEmail());
gotFromOld = optional.isPresent();
}
if ( !optional.isPresent() && user.getPhone() != null && !user.getPhone().isEmpty() && userRepository.existsByAccount(user.getPhone().replace("+",""))) {
optional = userRepository.findFirstByAccount(user.getPhone().replace("+",""));
gotFromOld = optional.isPresent();
}
if (!optional.isPresent() && user.getPhone() != null && !user.getPhone().isEmpty() && userRepository.existsByAccount(user.getPhone().replace("+", ""))) {
optional = userRepository.findFirstByAccount(user.getPhone().replace("+", ""));
gotFromOld = optional.isPresent();
}
if (!optional.isPresent()) {
if (!optional.isPresent()) {
String userid = IdUtil.createIdbyUUID();
String userid = IdUtil.createIdbyUUID();
user.setPassword(encoder.encode(user.getFirebaseUid()));
user.setUserId(userid);
user.setPassword(encoder.encode(user.getFirebaseUid()));
user.setUserId(userid);
fillUserNecessayInfo(user);
user = userRepository.save(user);
fillUserNecessayInfo(user);
user = userRepository.save(user);
//赠送用户优惠券
fixCoupon(user);
} else {
TbCfUserInfo userInfo = optional.get();
//赠送用户优惠券
fixCoupon(user);
} else {
TbCfUserInfo userInfo = optional.get();
if (user.hasFcm()) {
userInfo.setFcm(user.getFcm());
}
if (user.hasFcm()) {
userInfo.setFcm(user.getFcm());
}
String property = domainProperties.getProperty("user.avatar");
String property = domainProperties.getProperty("user.avatar");
property = property == null ? "" : property;
property = property == null ? "" : property;
boolean b = property.equals(userInfo.getAvatar()) || userInfo.getAvatar() == null || userInfo.getAvatar().isEmpty();
boolean b = property.equals(userInfo.getAvatar()) || userInfo.getAvatar() == null || userInfo.getAvatar().isEmpty();
if (user.getAvatar() != null && b) {
userInfo.setAvatar(user.getAvatar());
}
if (user.getAvatar() != null && b) {
userInfo.setAvatar(user.getAvatar());
}
boolean b1 = userInfo.getNick() == null || userInfo.getNick().isEmpty();
if (user.getNick() != null && b1) {
userInfo.setNick(user.getNick());
}
boolean b1 = userInfo.getNick() == null || userInfo.getNick().isEmpty();
if (user.getNick() != null && b1) {
userInfo.setNick(user.getNick());
}
if (user.getEmail() != null) {
userInfo.setEmail(user.getEmail());
}
if (user.getEmail() != null) {
userInfo.setEmail(user.getEmail());
}
if (user.getUserType() != null) {
userInfo.setUserType(user.getUserType());
}
if (user.getUserType() != null) {
userInfo.setUserType(user.getUserType());
}
if (user.getPhone() != null) {
userInfo.setPhone(user.getPhone());
}
if (user.getPhone() != null) {
userInfo.setPhone(user.getPhone());
}
user = userInfo;
user = userInfo;
}
}
String very = gotFromOld ? user.getPassword() : null;
// generate token codes has been moved downwards from if condition of checking if user doesn't exist in database, because even if
// user exist we have to generate token also
if (user.getPassword() == null || gotFromOld) {
user.setPassword(encoder.encode(user.getFirebaseUid()));// Assign user from database to the user we have to return back to request
}
String very = gotFromOld ? user.getPassword() : null;
// generate token codes has been moved downwards from if condition of checking if user doesn't exist in database, because even if
// user exist we have to generate token also
if (user.getPassword() == null || gotFromOld) {
user.setPassword(encoder.encode(user.getFirebaseUid()));// Assign user from database to the user we have to return back to request
}
fixCode(user);
fixCode(user);
//addToNetwork(user);
//addToNetwork(user);
user.setLastLoginTime(new Date());
userRepository.save(user);
//注册成功 创建token
user.setLastLoginTime(new Date());
userRepository.save(user);
//注册成功 创建token
LoginRequest loginRequest = new LoginRequest(user.getFirebaseUid(), user.getFirebaseUid());
LoginRequest loginRequest = new LoginRequest(user.getFirebaseUid(), user.getFirebaseUid());
loginRequest.setVeryOldPassword(very);
loginRequest.setVeryOldPassword(very);
return authenticateUser(loginRequest);
return authenticateUser(loginRequest);
} else {
return new Result<>(ResultCodeEnum.ILLEGAL_ARGUMENT.getCode(), ResultCodeEnum.ILLEGAL_ARGUMENT.getDesc());
}
}catch (Exception e){
System.out.println(e.getMessage());
return new Result<>(ResultCodeEnum.ILLEGAL_ARGUMENT.getCode(), e.getMessage());
} else {
return new Result<>(ResultCodeEnum.ILLEGAL_ARGUMENT.getCode(), ResultCodeEnum.ILLEGAL_ARGUMENT.getDesc());
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论