Add SUPERADMIN role and update user handling logic

Introduces a new SUPERADMIN role in the Role enum. Updates UserService to handle SUPERADMIN users by setting firstLogin to false upon creation and excluding SUPERADMIN users from the getAllUsers() result. Also removes some fields from the mapToResponseDTO method.
PRE-PRODUCTION-2026-NAEEM
Naeem Ullah 1 week ago
parent ff8cd6044a
commit 73ab08e9c5

@ -1,5 +1,5 @@
package com.mfsys.aconnect.usermanagement.model; package com.mfsys.aconnect.usermanagement.model;
public enum Role { public enum Role {
USER, ADMIN USER, ADMIN, SUPERADMIN
} }

@ -42,6 +42,9 @@ public class UserService {
user.setUserFullname(request.getUserFullname()); user.setUserFullname(request.getUserFullname());
user.setEmail(request.getEmail()); user.setEmail(request.getEmail());
user.setRole(request.getRole()); user.setRole(request.getRole());
if(request.getRole() == Role.SUPERADMIN){
user.setFirstLogin(false);
}
user.setPassword(passwordEncryptionService.hashPassword(request.getPassword())); user.setPassword(passwordEncryptionService.hashPassword(request.getPassword()));
User savedUser = userRepository.save(user); User savedUser = userRepository.save(user);
return mapToResponseDTO(savedUser); return mapToResponseDTO(savedUser);
@ -88,7 +91,7 @@ public class UserService {
public List<UserDTOs.UserResponse> getAllUsers() { public List<UserDTOs.UserResponse> getAllUsers() {
return userRepository.findAll().stream() return userRepository.findAll().stream()
.filter(user -> user.getRole() != Role.ADMIN && .filter(user -> user.getRole() != Role.SUPERADMIN &&
user.isActive()) user.isActive())
.map(this::mapToResponseDTO) .map(this::mapToResponseDTO)
.collect(Collectors.toList()); .collect(Collectors.toList());
@ -126,11 +129,6 @@ public class UserService {
response.setUserId(user.getUserId()); response.setUserId(user.getUserId());
response.setUserFullname(user.getUserFullname()); response.setUserFullname(user.getUserFullname());
response.setEmail(user.getEmail()); response.setEmail(user.getEmail());
response.setRole(user.getRole());
response.setIsFirstLogin(user.isFirstLogin());
response.setIsActive(user.isActive());
response.setCreatedAt(user.getCreatedAt());
response.setUpdatedAt(user.getUpdatedAt());
return response; return response;
} }

Loading…
Cancel
Save