|
public ResponseEntity<?> signUp(SignupRequest signUpRequest) { |
|
if (userRepository.existsByUsername(signUpRequest.getUsername())) { |
|
return ResponseEntity |
|
.badRequest() |
|
.body(AuthConstants.USERNAME_ALREADY_USED_INFO); |
|
} |
|
|
|
if (userRepository.existsByEmail(signUpRequest.getEmail())) { |
|
return ResponseEntity |
|
.badRequest() |
|
.body(AuthConstants.EMAIL_ALREADY_USED_INFO); |
|
} |
|
|
|
User user = new User(signUpRequest.getUsername(), signUpRequest.getFirstName(), signUpRequest.getSurname(), |
|
signUpRequest.getEmail(), |
|
encoder.encode(signUpRequest.getPassword())); |
|
|
|
Set<String> strRoles = signUpRequest.getRoles(); |
|
Set<Role> roles = new HashSet<>(); |
|
// |
|
if (strRoles == null) { |
|
Role userRole = roleRepository.findByName(ERole.ROLE_PLAYER) |
|
.orElseThrow(() -> new RuntimeException(AuthConstants.ROLE_IS_NOT_FOUND_INFO)); |
|
roles.add(userRole); |
|
|
|
Player player = new Player(signUpRequest.getUsername(), signUpRequest.getFirstName(), signUpRequest.getSurname(), |
|
signUpRequest.getEmail(), |
|
encoder.encode(signUpRequest.getPassword()), SettingsParams.START_BUDGET); |
|
|
|
player.setRoles(roles); |
|
|
|
playerRepository.save(player); |
|
return ResponseEntity.ok(AuthConstants.USER_SUCCESSFUL_REGISTERED); |
|
|
|
} else { |
|
strRoles.forEach(role -> { |
|
if ("mod".equals(role)) { |
|
Role modRole = roleRepository.findByName(ERole.ROLE_MODERATOR) |
|
.orElseThrow(() -> new RuntimeException(AuthConstants.ROLE_IS_NOT_FOUND_INFO)); |
|
roles.add(modRole); |
|
|
|
} else { |
|
Role userRole = roleRepository.findByName(ERole.ROLE_PLAYER) |
|
.orElseThrow(() -> new RuntimeException(AuthConstants.ROLE_IS_NOT_FOUND_INFO)); |
|
roles.add(userRole); |
|
} |
|
}); |
|
} |
|
|
|
user.setRoles(roles); |
|
userRepository.save(user); |
|
|
|
return ResponseEntity.ok(AuthConstants.USER_SUCCESSFUL_REGISTERED); |
|
} |
PredictBom_Backend/src/main/java/com/example/PredictBom/Services/AuthService.java
Lines 72 to 125 in 9080885