Class GRUController
java.lang.Object
com.modulink.Controller.ModuloController
com.modulink.Controller.UserModules.GRU.GRUController
Controller per il modulo GRU (Gestione Ruoli Utenti).
Questo modulo permette di definire la struttura organizzativa dell'azienda attraverso la creazione
e gestione di ruoli personalizzati. Fornisce le funzionalità per creare, modificare ed eliminare ruoli,
nonché per assegnare massivamente utenti a specifici ruoli.
Estende ModuloController (ID Modulo: 1) per la gestione dei permessi di accesso.
- Since:
- 1.2.0
- Version:
- 2.1.0
- Author:
- Modulink Team
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CustomUserDetailsServiceprivate final ModuloServiceprivate final RuoloService -
Constructor Summary
ConstructorsConstructorDescriptionGRUController(ModuloService moduloService, CustomUserDetailsService customUserDetailsService, RuoloService ruoloService) Costruttore per l'iniezione delle dipendenze. -
Method Summary
Modifier and TypeMethodDescriptionaddRole(@Valid NewRoleForm newRoleForm, org.springframework.validation.BindingResult bindingResult, Principal principal, org.springframework.ui.Model model) Crea un nuovo ruolo aziendale personalizzato.assignRole(int idRuolo, List<Integer> userIds, Principal principal, org.springframework.ui.Model model, NewRoleForm newRoleForm) Assegna un insieme di utenti a uno specifico ruolo.dashboardDispatcher(Principal principal, org.springframework.ui.Model model) Visualizza la dashboard di gestione ruoli.deleteRole(int idRuolo, Principal principal, org.springframework.ui.Model model, NewRoleForm newRoleForm) Elimina un ruolo personalizzato.voiddisinstallaModulo(AziendaEntity azienda) Il modulo GRU è un componente core del sistema di gestione utenti e non può essere disinstallato.modifyRole(int idRuolo, String nome, String colore, String descrizione, Principal principal, org.springframework.ui.Model model, NewRoleForm newRoleForm) Modifica le proprietà di un ruolo esistente.Methods inherited from class ModuloController
getId, isAccessibleModulo, setId
-
Field Details
-
moduloService
-
customUserDetailsService
-
ruoloService
-
-
Constructor Details
-
GRUController
public GRUController(ModuloService moduloService, CustomUserDetailsService customUserDetailsService, RuoloService ruoloService) Costruttore per l'iniezione delle dipendenze.- Parameters:
moduloService- Servizio gestione moduli.customUserDetailsService- Servizio utenti.ruoloService- Servizio gestione ruoli.- Since:
- 1.2.0
-
-
Method Details
-
dashboardDispatcher
@GetMapping({"dashboard/gru/","dashboard/gru"}) public String dashboardDispatcher(Principal principal, org.springframework.ui.Model model) Visualizza la dashboard di gestione ruoli.Carica l'elenco dei ruoli esistenti e la lista completa degli utenti per facilitare le operazioni di assegnazione.
- Parameters:
principal- Identità utente loggato.model- Modello UI.- Returns:
- Vista "moduli/gru/GestioneRuoli" o redirect.
- Since:
- 1.2.0
-
addRole
@PostMapping("dashboard/gru/add-role") public String addRole(@ModelAttribute("newRoleForm") @Valid @Valid NewRoleForm newRoleForm, org.springframework.validation.BindingResult bindingResult, Principal principal, org.springframework.ui.Model model) Crea un nuovo ruolo aziendale personalizzato.- Parameters:
newRoleForm- DTO con i dati del nuovo ruolo (nome, colore, descrizione).bindingResult- Esito validazione.principal- Identità utente.model- Modello UI.- Returns:
- Redirect alla dashboard con esito.
- Since:
- 1.2.0
-
modifyRole
@PostMapping("dashboard/gru/modify-role") public String modifyRole(@RequestParam int idRuolo, @RequestParam String nome, @RequestParam String colore, @RequestParam String descrizione, Principal principal, org.springframework.ui.Model model, @ModelAttribute("newRoleForm") NewRoleForm newRoleForm) Modifica le proprietà di un ruolo esistente.- Parameters:
idRuolo- ID del ruolo da modificare.nome- Nuovo nome.colore- Nuovo colore (esadecimale).descrizione- Nuova descrizione.principal- Identità utente.model- Modello UI.newRoleForm- DTO placeholder.- Returns:
- Redirect alla dashboard con esito.
- Since:
- 1.2.0
-
deleteRole
@PostMapping("dashboard/gru/delete-role") public String deleteRole(@RequestParam int idRuolo, Principal principal, org.springframework.ui.Model model, @ModelAttribute("newRoleForm") NewRoleForm newRoleForm) Elimina un ruolo personalizzato.Non permette l'eliminazione dei ruoli di sistema (Default).
- Parameters:
idRuolo- ID del ruolo.principal- Identità utente.model- Modello UI.newRoleForm- DTO placeholder.- Returns:
- Redirect con esito operazione.
- Since:
- 1.2.0
-
assignRole
@PostMapping("dashboard/gru/assign-role") public String assignRole(@RequestParam int idRuolo, @RequestParam(required=false) List<Integer> userIds, Principal principal, org.springframework.ui.Model model, @ModelAttribute("newRoleForm") NewRoleForm newRoleForm) Assegna un insieme di utenti a uno specifico ruolo.Aggiorna le associazioni esistenti, sovrascrivendo la lista degli utenti appartenenti al ruolo.
- Parameters:
idRuolo- ID del ruolo target.userIds- Lista degli ID degli utenti da assegnare.principal- Identità utente.model- Modello UI.newRoleForm- DTO placeholder.- Returns:
- Redirect con esito.
- Since:
- 1.2.5
-
disinstallaModulo
Il modulo GRU è un componente core del sistema di gestione utenti e non può essere disinstallato.- Specified by:
disinstallaModuloin classModuloController- Parameters:
azienda- Azienda target.
-