dev add test find by searchapo
Test Workflow / test (push) Successful in 3s

This commit is contained in:
vladp
2026-02-05 17:16:16 +07:00
parent 27b812b0da
commit 7bb48f3944
2 changed files with 26 additions and 1 deletions
@@ -27,4 +27,6 @@ public class RegRequest {
@NotBlank(message = "Password is required") @NotBlank(message = "Password is required")
@Size(min = 8, message = "Password must be at least 8 characters") @Size(min = 8, message = "Password must be at least 8 characters")
private String password; private String password;
private String authToken;
} }
@@ -62,8 +62,10 @@ public class AuthService {
if (accountType == AccountType.B2B && registerRequest.getCompanyName() != null) { if (accountType == AccountType.B2B && registerRequest.getCompanyName() != null) {
createCompanyAccount(registerRequest, user); createCompanyAccount(registerRequest, user);
} else { } else if (accountType == AccountType.B2C && registerRequest.getCompanyName() == null) {
createIndividualAccount(user); createIndividualAccount(user);
} else {
createIndividualCompanyAccount(registerRequest, user);
} }
if (registerRequest.getPhone() != null) { if (registerRequest.getPhone() != null) {
@@ -169,4 +171,25 @@ public class AuthService {
user.setPersonalTariffInfo(personalTariff); user.setPersonalTariffInfo(personalTariff);
user.grantPermission(Permission.DEFAULT_USER_PERMISSIONS); user.grantPermission(Permission.DEFAULT_USER_PERMISSIONS);
} }
private void createIndividualCompanyAccount(RegRequest request, User user) {
String authToken = request.getAuthToken();
Long userIdByToken = authTokenRepository.findUserIdByToken(authToken);
User companyUser = userRepository.findById(userIdByToken).orElseThrow();
Company company = companyUser.getCompany();
TariffInfo tariffInfo = company.getTariffInfo();
Long maxUsers = tariffInfo.getTariff().getMaxUsers();
long currentCountUsers = userRepository.findByCompanyId(company.getId()).size();
//TODO add exception
if (maxUsers < currentCountUsers) {
throw new RuntimeException();
}
user.setCompany(companyUser.getCompany());
user.grantPermission(Permission.DEFAULT_USER_PERMISSIONS);
}
} }