提交 e0622ed3 authored 作者: Whispa's avatar Whispa

commit commit

上级 32bf46d7
......@@ -230,111 +230,115 @@ public class AuthController extends Controller {
// }
// Check if firebase token is valid
boolean isTokenValid = user.getToken() != null && validateFirebaseToken(user.getToken());
try {
boolean isTokenValid = user.getToken() != null && validateFirebaseToken(user.getToken());
String firebaseUid = user.getFirebaseUid();
String firebaseUid = 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(firebaseUid);
// 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(firebaseUid);
if (!optional.isPresent() && user.getEmail() != null && !user.getEmail().isEmpty() && userRepository.existsByAccount(user.getEmail())) {
optional = userRepository.findFirstByAccount(user.getEmail());
}
if (!optional.isPresent() && user.getEmail() != null && !user.getEmail().isEmpty() && userRepository.existsByAccount(user.getEmail())) {
optional = userRepository.findFirstByAccount(user.getEmail());
}
if (!optional.isPresent() && user.getPhone() != null && !user.getPhone().isEmpty() && userRepository.existsByAccount(user.getPhone().replace("+", ""))) {
optional = userRepository.findFirstByAccount(user.getPhone().replace("+", ""));
}
if (!optional.isPresent() && user.getPhone() != null && !user.getPhone().isEmpty() && userRepository.existsByAccount(user.getPhone().replace("+", ""))) {
optional = userRepository.findFirstByAccount(user.getPhone().replace("+", ""));
}
if (!optional.isPresent()) {
if (!optional.isPresent()) {
String userid = IdUtil.createIdbyUUID();
String userid = IdUtil.createIdbyUUID();
// user.setPassword(encoder.encode(firebaseUid));
user.setUserId(userid);
// user.setPassword(encoder.encode(firebaseUid));
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());
}
if (userInfo.getFirebaseUid() == null) {
userInfo.setFirebaseUid(firebaseUid);
}
if (userInfo.getFirebaseUid() == null) {
userInfo.setFirebaseUid(firebaseUid);
}
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;
}
}
fixCode(user);
fixCode(user);
//addToNetwork(user);
//addToNetwork(user);
user.setLastLoginTime(new Date());
userRepository.save(user);
//注册成功 创建token
user.setLastLoginTime(new Date());
userRepository.save(user);
//注册成功 创建token
Authentication authentication;
try {
authentication = new UsernamePasswordAuthenticationToken(UserDetailsImpl.build(user), null);
} catch (BadCredentialsException e) {
return new Result(ResultCodeEnum.VALIDATE_ERROR.getCode(), "Invalid username or password");
}
Authentication authentication;
try {
authentication = new UsernamePasswordAuthenticationToken(UserDetailsImpl.build(user), null);
} catch (BadCredentialsException e) {
return new Result(ResultCodeEnum.VALIDATE_ERROR.getCode(), "Invalid username or password");
}
SecurityContextHolder.getContext().setAuthentication(authentication);
String jwt = jwtUtils.generateJwtToken(authentication);
SecurityContextHolder.getContext().setAuthentication(authentication);
String jwt = jwtUtils.generateJwtToken(authentication);
user.setToken(jwt);
user.setToken(jwt);
return new Result<>(user);
return new Result<>(user);
} else {
return new Result<>(ResultCodeEnum.ILLEGAL_ARGUMENT.getCode(), ResultCodeEnum.ILLEGAL_ARGUMENT.getDesc());
}
} else {
return new Result<>(ResultCodeEnum.ILLEGAL_ARGUMENT.getCode(), ResultCodeEnum.ILLEGAL_ARGUMENT.getDesc());
}
}catch (Exception e){
return new Result(ResultCodeEnum.VALIDATE_ERROR.getCode(),e.getMessage());
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论