|
|
@@ -64,6 +64,7 @@ public class UserService {
|
|
|
private AdapayService adapayService;
|
|
|
private UserBankCardRepo userBankCardRepo;
|
|
|
private InviteRepo inviteRepo;
|
|
|
+ private NFTService nftService;
|
|
|
|
|
|
@CacheEvict(value = "user", key = "#user.username")
|
|
|
public User update(User user) {
|
|
|
@@ -116,7 +117,16 @@ public class UserService {
|
|
|
if (StringUtils.isNotBlank(userRegister.getPassword())) {
|
|
|
user.setPassword(new BCryptPasswordEncoder().encode(userRegister.getPassword()));
|
|
|
}
|
|
|
- return userRepo.save(user);
|
|
|
+ user = userRepo.save(user);
|
|
|
+ User finalUser = user;
|
|
|
+ new Thread(() -> {
|
|
|
+ NFTAccount account = nftService.createAccount(finalUser.getUsername() + "_");
|
|
|
+ finalUser.setNftAccount(account.getAccountId());
|
|
|
+ finalUser.setKmsId(account.getAccountKmsId());
|
|
|
+ finalUser.setPublicKey(account.getPublicKey());
|
|
|
+ userRepo.save(finalUser);
|
|
|
+ }).start();
|
|
|
+ return user;
|
|
|
}
|
|
|
|
|
|
public User phoneRegister(String phone, String code, String password, String inviteCode) {
|
|
|
@@ -125,6 +135,7 @@ public class UserService {
|
|
|
if (StringUtils.isNotBlank(inviteCode)) {
|
|
|
invite = inviteRepo.findFirstByCode(inviteCode).orElse(null);
|
|
|
}
|
|
|
+ smsService.verify(phone, code);
|
|
|
User user = create(UserRegister.builder()
|
|
|
.authorities(Collections.singleton(Authority.get(AuthorityName.ROLE_USER)))
|
|
|
.username(name)
|