Introduzione
Il modulo Anagrafiche e Policy raccoglie e gestisce le informazioni sugli attori che operano nel sistema e definisce chi può fare cosa.
Cosa Troverai in Questo Modulo
Questo modulo si occupa di gestire tre macro-aree:
👤 Le Persone e le Organizzazioni
Il sistema tiene traccia di utenti/profili, aziende, fornitori, studi di progettazione e partner. Ogni persona può avere più "profili" (ad esempio: stesso utente che lavora come gestore in un'azienda e come cliente). Le aziende possono essere appaltatrici, subappaltatrici o entrambi,e il sistema gestisce anche i rapporti di subappalto.
🔐 Chi Può Fare Cosa
Attraverso un sistema di ruoli e permessi, il modulo definisce le autorizzazioni: un amministratore può fare certe operazioni, un consulente altre, un operatore partner altre ancora. Il sistema include anche AutoPermissions, un meccanismo intelligente che genera automaticamente i permessi necessari basandosi sul codice, riducendo gli errori e mantenendo tutto sincronizzato.
📋 Informazioni Condivise
Il modulo espone una serie di strutture dati comuni (DTO) e valori standardizzati (Enum) utilizzati da tutti gli altri moduli della piattaforma: tipi di documenti, stati, categorie merceologiche, codici fiscali, dati di fatturazione e molto altro.
Funzionalità Principali
Gestione Entità Anagrafiche
- Utenti e Profili: Un utente può avere più profili, ognuno con il proprio ruolo e contesto lavorativo
- Ruoli e Permessi: Sistema di autorizzazione basato su Spatie Permission
- Aziende: Gestione completa con tipi multipli (azienda, fornitore, progettista) e subappalti
- Partner: Banche, CAF, CRECO con struttura gerarchica di filiali
- Dati Fiscali: Invoice data polimorfici per profili e aziende
Sistema AutoPermissions
Il modulo include un sistema avanzato per la generazione automatica dei permessi basato su attributi PHP, che:
- Genera automaticamente permessi per controller e metodi
- Utilizza convenzioni di naming intelligenti
- Integrazione con Laravel Policies per autorizzazione
- BasePolicy con verifica automatica permessi + logica custom
- Include sistema di cache per ottimizzare le performance
Documentazione completa: AutoPermissions →