Class CalendarioController

java.lang.Object
com.modulink.Controller.ModuloController
com.modulink.Controller.UserModules.GDE.CalendarioController

@Controller public class CalendarioController extends ModuloController
Controller dedicato alla gestione della visualizzazione del calendario per il modulo GDE (Gestione Eventi).

Questa classe si occupa di servire la pagina principale del calendario aziendale, orchestrando il caricamento degli eventi a cui l'utente loggato partecipa. Implementa i meccanismi di controllo accesso ereditati da ModuloController per garantire l'isolamento dei dati tra i diversi tenant (Aziende).

Since:
1.1.0
Version:
1.4.2
Author:
Modulink Team
  • Field Details

  • Constructor Details

    • CalendarioController

      public CalendarioController(ModuloService moduloService, CustomUserDetailsService customUserDetailsService, EventoService eventoService)
      Costruttore per l'iniezione delle dipendenze e configurazione del modulo.
      Parameters:
      moduloService - Servizio per la verifica dei moduli attivi.
      customUserDetailsService - Servizio per il recupero dell'utente corrente.
      eventoService - Servizio per la logica di business degli eventi.
      Since:
      1.1.0
  • Method Details

    • calendario

      @GetMapping({"/dashboard/calendar","/dashboard/calendar/"}) public String calendario(Principal principal, org.springframework.ui.Model model)
      Gestisce la richiesta GET per la visualizzazione della dashboard del calendario.

      Recupera l'identità dell'utente autenticato, verifica i permessi di accesso al modulo GDE (ID: 4) e carica la lista degli eventi filtrata per l'utente specifico.

      Parameters:
      principal - Identità dell'utente fornita da Spring Security.
      model - Modello UI per il passaggio dei dati alla vista Thymeleaf.
      Returns:
      Il nome della vista "moduli/gde/calendario" o un redirect in caso di accesso non autorizzato.
      Since:
      1.1.0
    • disinstallaModulo

      public void disinstallaModulo(AziendaEntity azienda)
      Esegue le operazioni di pulizia necessarie durante la disinstallazione del modulo GDE.

      Rimuove massivamente tutti gli eventi e le partecipazioni correlate per l'azienda specificata per garantire la coerenza del database post-disattivazione.

      Specified by:
      disinstallaModulo in class ModuloController
      Parameters:
      azienda - L'entità AziendaEntity che sta dismettendo il modulo.
      Since:
      1.2.0