Class ModuloEntity

java.lang.Object
com.modulink.Model.Modulo.ModuloEntity

@Entity public class ModuloEntity extends Object
Rappresenta l'entità anagrafica di un Modulo funzionale all'interno della piattaforma Modulink.

I moduli costituiscono le unità atomiche di funzionalità del sistema (es. Gestione Dipendenti, Magazzino, ecc.). Questa entità mappa la tabella modulo dello schema modulink e definisce le proprietà descrittive e di navigazione (URL) necessarie per il rendering dinamico dell'interfaccia utente (Dashboard).

La relazione con PertinenzaEntity gestisce l'associazione logica tra il modulo e le aziende abilitate al suo utilizzo.

Since:
1.0.0
Version:
2.1.0
Author:
Modulink Team
  • Field Details

    • id_modulo

      private int id_modulo
      Identificativo univoco (Primary Key) del modulo.

      Questo ID è assegnato staticamente o manualmente (non autogenerato) per garantire la coerenza dei riferimenti hardcoded o di configurazione attraverso diversi ambienti di deploy.

      Since:
      1.0.0
    • nome

      private String nome
      Nome visualizzato del modulo (Label).
      Since:
      1.0.0
    • descrizione

      private String descrizione
      Descrizione estesa delle funzionalità offerte dal modulo. Utilizzata nei tooltip o nelle pagine di dettaglio del marketplace interno.
      Since:
      1.0.0
    • url_modulo

      private String url_modulo
      Endpoint o percorso relativo per l'accesso al modulo. Utilizzato dal router lato client/server per indirizzare l'utente.
      Since:
      1.0.0
    • url_icona

      private String url_icona
      Percorso o URL dell'icona rappresentativa del modulo. Supporta formati standard web (SVG, PNG).
      Since:
      1.1.0
    • Visible

      private boolean Visible
      Flag di visibilità globale.

      Se false, il modulo viene nascosto a tutti gli utenti indipendentemente dalle pertinenze. Utile per disabilitare temporaneamente funzionalità in manutenzione (Feature Toggle).

      Since:
      1.2.0
    • affiliazioni

      private Set<PertinenzaEntity> affiliazioni
      Insieme delle relazioni di pertinenza che legano il modulo alle aziende.

      Relazione 1-N gestita con fetch EAGER per ottimizzare il caricamento delle dashboard. La cancellazione a cascata assicura l'integrità referenziale.

      Since:
      1.0.0
  • Constructor Details

    • ModuloEntity

      public ModuloEntity()
      Costruttore predefinito (No-Args) richiesto da JPA.
      Since:
      1.0.0
    • ModuloEntity

      public ModuloEntity(int id_modulo, String nome, String descrizione, String url_modulo, String url_icona, boolean Visible)
      Costruttore parametrico completo per l'inizializzazione dell'entità.
      Parameters:
      id_modulo - ID univoco statico.
      nome - Nome visualizzato.
      descrizione - Descrizione funzionale.
      url_modulo - Path di navigazione.
      url_icona - Path dell'icona.
      Visible - Stato di visibilità.
      Since:
      1.0.0
  • Method Details

    • getId_modulo

      public int getId_modulo()
      Recupera l'ID del modulo.
      Returns:
      Intero ID.
      Since:
      1.0.0
    • setId_modulo

      public void setId_modulo(int id_modulo)
      Imposta l'ID del modulo.
      Parameters:
      id_modulo - Nuovo ID.
      Since:
      1.0.0
    • getNome

      public String getNome()
      Recupera il nome del modulo.
      Returns:
      Stringa nome.
      Since:
      1.0.0
    • setNome

      public void setNome(String nome)
      Imposta il nome del modulo.
      Parameters:
      nome - Nuovo nome.
      Since:
      1.0.0
    • getDescrizione

      public String getDescrizione()
      Recupera la descrizione.
      Returns:
      Stringa descrizione.
      Since:
      1.0.0
    • setDescrizione

      public void setDescrizione(String descrizione)
      Imposta la descrizione.
      Parameters:
      descrizione - Nuova descrizione.
      Since:
      1.0.0
    • getUrl_modulo

      public String getUrl_modulo()
      Recupera l'URL del modulo.
      Returns:
      Stringa URL.
      Since:
      1.0.0
    • setUrl_modulo

      public void setUrl_modulo(String url_modulo)
      Imposta l'URL del modulo.
      Parameters:
      url_modulo - Nuovo URL.
      Since:
      1.0.0
    • getUrl_icona

      public String getUrl_icona()
      Recupera l'URL dell'icona.
      Returns:
      Stringa URL icona.
      Since:
      1.1.0
    • setUrl_icona

      public void setUrl_icona(String url_icona)
      Imposta l'URL dell'icona.
      Parameters:
      url_icona - Nuovo URL icona.
      Since:
      1.1.0
    • getAffiliazioni

      public Set<PertinenzaEntity> getAffiliazioni()
      Recupera le affiliazioni (pertinenze) associate.
      Returns:
      Set di PertinenzaEntity.
      Since:
      1.0.0
    • setAffiliazioni

      public void setAffiliazioni(Set<PertinenzaEntity> affiliazioni)
      Imposta le affiliazioni.
      Parameters:
      affiliazioni - Nuovo set di pertinenze.
      Since:
      1.0.0
    • isVisible

      public boolean isVisible()
      Verifica se il modulo è visibile globalmente.
      Returns:
      true se visibile, false altrimenti.
      Since:
      1.2.0
    • setVisible

      public void setVisible(boolean visible)
      Imposta la visibilità globale del modulo.
      Parameters:
      visible - Stato di visibilità.
      Since:
      1.2.0
    • toString

      public String toString()
      Rappresentazione stringa dell'oggetto per debug.
      Overrides:
      toString in class Object
      Returns:
      Stringa contenente i valori dei campi principali.
      Since:
      1.0.0