NCBACK-33 add verification logic
Test Workflow / test (push) Successful in 3s

This commit is contained in:
vladp
2026-01-20 15:12:24 +07:00
parent 55fa8b84e2
commit f9accd7af1
14 changed files with 137 additions and 44 deletions
@@ -50,17 +50,14 @@ public class AuthService {
User savedUser = userRepository.save(user);
AuthToken authToken = new AuthToken();
authToken.setToken(generateAuthToken());
authToken.setUser(savedUser);
AuthToken authToken = genereateAuthToken(savedUser);
return authTokenRepository.save(authToken);
}
@Transactional
public AuthToken login(LoginRequest request) {
Optional<User> userOpt = userRepository.findByEmail(request.getEmail());
User user = userOpt.get();
User user = userRepository.findByEmail(request.getEmail());
if (!passwordEncoder.matches(request.getPassword(), user.getPassword())) {
LoginAnswer loginAnswer = new LoginAnswer();
@@ -87,6 +84,18 @@ public class AuthService {
.ifPresent(authTokenRepository::delete);
}
public AuthToken generateAuthToken(User user) {
return authTokenRepository.save(genereateAuthToken(user));
}
private AuthToken genereateAuthToken(User user) {
AuthToken authToken = new AuthToken();
authToken.setToken(generateAuthToken());
authToken.setUser(user);
return authToken;
}
private String generateAuthToken() {
byte[] bytes = new byte[32];
secureRandom.nextBytes(bytes);