Class UserRestApi
java.lang.Object
com.modulink.Controller.UserModules.GDU.UserRestApi
Controller REST per l'esposizione dei dati utente tramite API JSON.
Fornisce endpoint per il recupero asincrono delle informazioni di base degli utenti (nome, cognome, email), filtrati rigorosamente per azienda di appartenenza. Utilizzato principalmente da componenti frontend come campi di autocompletamento o liste dinamiche.
- Since:
- 1.4.0
- Version:
- 1.0.5
- Author:
- Modulink Team
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRecord DTO interno per informazioni di base utente (Lightweight).static final recordRecord DTO interno per trasferimento dati utente completo. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AziendaServiceprivate final CustomUserDetailsServiceprivate final UserRepository -
Constructor Summary
ConstructorsConstructorDescriptionUserRestApi(CustomUserDetailsService customUserDetailsService, UserRepository userRepository, AziendaService aziendaService) Costruttore per l'iniezione delle dipendenze. -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<List<UserRestApi.UserBasicInfo>> Endpoint amministrativo (in sviluppo) per recuperare utenti di una specifica azienda.org.springframework.http.ResponseEntity<List<UserRestApi.UserBasicInfo>> Recupera la lista di tutti gli utenti colleghi (stessa azienda) dell'utente richiedente.static List<UserRestApi.UserBasicInfo> parseUsers(List<UtenteEntity> users) Metodo di utilità per la conversione di una lista di entità Utente in DTO leggeri.
-
Field Details
-
customUserDetailsService
-
userRepository
-
aziendaService
-
-
Constructor Details
-
UserRestApi
public UserRestApi(CustomUserDetailsService customUserDetailsService, UserRepository userRepository, AziendaService aziendaService) Costruttore per l'iniezione delle dipendenze.- Parameters:
customUserDetailsService- Servizio utenti.userRepository- Repository utenti.aziendaService- Servizio aziende.- Since:
- 1.4.0
-
-
Method Details
-
getUsers
@GetMapping("/users") public org.springframework.http.ResponseEntity<List<UserRestApi.UserBasicInfo>> getUsers(Principal principal) Recupera la lista di tutti gli utenti colleghi (stessa azienda) dell'utente richiedente.Esclude l'utente richiedente dalla lista risultante.
- Parameters:
principal- Identità dell'utente autenticato.- Returns:
- Lista di
UserRestApi.UserBasicInfoin formato JSON. - Since:
- 1.4.0
-
parseUsers
Metodo di utilità per la conversione di una lista di entità Utente in DTO leggeri.- Parameters:
users- Lista di entità Utente.- Returns:
- Lista di DTO UserBasicInfo.
-
getUser
@GetMapping("/admin/users/{id}") public org.springframework.http.ResponseEntity<List<UserRestApi.UserBasicInfo>> getUser(@PathVariable int id, Principal principal) Endpoint amministrativo (in sviluppo) per recuperare utenti di una specifica azienda.Attualmente protetto da logica hardcoded (ID azienda 0) per restrizione accesso.
- Parameters:
id- ID dell'azienda target.principal- Identità richiedente.- Returns:
- Lista utenti o stato Forbidden.
- Since:
- 1.4.0
-