|
@@ -227,6 +227,15 @@ public class AppAccountOidcServiceImpl implements AppAccountOidcService {
|
|
|
return toEndUser(phone, account, baseUser);
|
|
return toEndUser(phone, account, baseUser);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
|
|
+ public AccountProfileInfoDTO bindPhoneProfile(BindPhoneRequest request) {
|
|
|
|
|
+ EndUserDTO user = bindPhone(request);
|
|
|
|
|
+ AppBaseUser baseUser = poyeeAppBaseUserMapper.selectByUsername(user.getUsername());
|
|
|
|
|
+ AppAccount account = poyeeAppAccountMapper.selectByLoginId(user.getUsername());
|
|
|
|
|
+ return toProfileInfo(user.getUsername(), account, baseUser);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public AccountProfileInfoDTO getCurrentProfile(Integer userId) {
|
|
public AccountProfileInfoDTO getCurrentProfile(Integer userId) {
|
|
|
if (userId == null) {
|
|
if (userId == null) {
|
|
@@ -240,15 +249,7 @@ public class AppAccountOidcServiceImpl implements AppAccountOidcService {
|
|
|
? poyeeAppAccountMapper.selectByLoginId(baseUser.getUsername())
|
|
? poyeeAppAccountMapper.selectByLoginId(baseUser.getUsername())
|
|
|
: null;
|
|
: null;
|
|
|
|
|
|
|
|
- AccountProfileInfoDTO profile = new AccountProfileInfoDTO();
|
|
|
|
|
- profile.setAvatar(baseUser.getAvatar());
|
|
|
|
|
- profile.setUserId(userId.longValue());
|
|
|
|
|
- profile.setLoginId(baseUser.getUsername());
|
|
|
|
|
- profile.setNickname(baseUser.getNickname());
|
|
|
|
|
- profile.setFaceVerify(baseUser.getFaceVerify());
|
|
|
|
|
- profile.setIdCard(baseUser.getIdCard());
|
|
|
|
|
- profile.setPhone(account == null ? null : account.getPhone());
|
|
|
|
|
- return profile;
|
|
|
|
|
|
|
+ return toProfileInfo(baseUser.getUsername(), account, baseUser);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -409,6 +410,21 @@ public class AppAccountOidcServiceImpl implements AppAccountOidcService {
|
|
|
return dto;
|
|
return dto;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ private AccountProfileInfoDTO toProfileInfo(String loginId, AppAccount account, AppBaseUser baseUser) {
|
|
|
|
|
+ if (baseUser == null) {
|
|
|
|
|
+ throw new ServiceException("用户不存在");
|
|
|
|
|
+ }
|
|
|
|
|
+ AccountProfileInfoDTO profile = new AccountProfileInfoDTO();
|
|
|
|
|
+ profile.setAvatar(baseUser.getAvatar());
|
|
|
|
|
+ profile.setUserId(baseUser.getId() == null ? null : baseUser.getId().longValue());
|
|
|
|
|
+ profile.setLoginId(StringUtils.hasText(baseUser.getUsername()) ? baseUser.getUsername() : loginId);
|
|
|
|
|
+ profile.setNickname(baseUser.getNickname());
|
|
|
|
|
+ profile.setFaceVerify(baseUser.getFaceVerify());
|
|
|
|
|
+ profile.setIdCard(baseUser.getIdCard());
|
|
|
|
|
+ profile.setPhone(account == null ? null : account.getPhone());
|
|
|
|
|
+ return profile;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
private LocalDateTime resolveRegistrationTime(AppAccount account, AppBaseUser baseUser) {
|
|
private LocalDateTime resolveRegistrationTime(AppAccount account, AppBaseUser baseUser) {
|
|
|
Date createTime = baseUser != null && baseUser.getCreateTime() != null
|
|
Date createTime = baseUser != null && baseUser.getCreateTime() != null
|
|
|
? baseUser.getCreateTime()
|
|
? baseUser.getCreateTime()
|