Guida utente — livello 3
Organization multi-utente (Business / Enterprise)
Il piano Business e Enterprise prevedono più utenti (seats) che condividono un archivio aziendale degli immobili. Il proprietario ("owner") ha un pannello locale /manage per gestire i colleghi senza passare dall'amministrazione globale.
Come si costituisce un'organization
L'organization viene creata dall'amministrazione catastima al momento dell'attivazione del piano Business (nome, P.IVA, numero di seats acquistati). L'email che ha acquistato il piano diventa owner. Dal pannello /manage, l'owner aggiunge i colleghi con il bottone + Invita utente.
I tre ruoli
| Ruolo | Cosa può fare |
|---|---|
| Owner | Gestisce seats (invita/rimuove/cambia ruolo), piano e fatturazione dell'organizzazione. Può fare tutto quello che fa un editor. Un'org deve avere almeno un owner: non può auto-degradarsi se unico. |
| Editor | Crea, modifica, archivia immobili aziendali. Genera report. Non gestisce seats né piano. |
| Viewer | Consulta l'archivio in sola lettura. Utile per ruoli di audit interno o membri del consiglio. |
Il flusso di invito
- 1. Owner apre /manage, sezione Utenti dell'organization.
- 2. Click "+ Invita utente". Inserisce email, nome, cognome, ruolo (owner / editor / viewer).
- 3. Il collega riceve un'email con un link di setup password valido 7 giorni. Click → imposta password → accede subito. Lo stato resta "pending invito" finché non completa il setup.
- 4. Se il link scade senza che l'utente abbia impostato la password, l'owner può cliccare "Re-invia invito" per generarne uno nuovo.
Archivio immobili aziendali
A differenza del piano Professional (client-centric: clienti → immobili del cliente), il piano Business ha un archivio organization-centric: gli immobili appartengono all'azienda e sono visibili a tutti gli utenti. Flusso tipico:
- Definizione delle sedi (owner): in /manage usa "Aggiungi sede" per creare le shell delle sedi aziendali (etichetta, indirizzo, opzionalmente metadata polizza CAT NAT). I dati strutturali (epoca, tipologia, mq, ecc.) si compilano poi al primo /check.
- Valutazione di una sede: da /manage click "Rivaluta →" su una shell. /check?property=N prefilla l'indirizzo. Compila i dati edificio nel form, clicca "Calcola PAM": il backend salva automaticamente building_json sulla sede al successo del calcolo (niente bisogno di Archiviare di nuovo). Alternativa "valuta + archivia": editor apre /check da zero, compila tutto, e nel modal Archivia sceglie "Aggiorna immobile esistente" con la sede dal dropdown — popola così una shell creata dall'owner.
- Generazione PDF: dopo il PAM, clicca "Genera PDF personalizzato". Se hai già un report con esattamente gli stessi parametri (stesso indirizzo + stessi dati edificio + stesso suolo/topografia + stessa mitigazione + stesso opt-in DVR), si apre un popup di conferma con i link PDF/Word ai report esistenti — eviti di consumare quota su un duplicato. Il bottone mostra anche la quota residua dell'organizzazione (es. "3/50": cumulativa, condivisa tra tutti i seats).
- Consultazione nel tempo: tutti gli utenti dell'organizzazione (owner/editor/viewer) vedono la property in /manage. Click "▶ Mostra storico report" sulla property: per ogni record (data + ID) compaiono due bottoni PDF e Word che riaprono il deliverable in nuova scheda — link firmati con token JWT temporaneo. Il viewer può consultare/scaricare ma non rivalutare né modificare.
- Rivalutazione periodica: click "Rivaluta →" ricalcola PAM con gli hazard correnti (MPS04/ISPRA), utile per intercettare aggiornamenti annuali dei dataset. Le modifiche ai parametri strutturali vengono salvate sulla sede senza creare duplicati.
Mappa interattiva poligoni hazard
Sulla pagina del risultato in /check sostituiamo la mappa standard con un viewer MapLibre che sovrappone alla carta OSM i poligoni PAI frana ISPRA (classi P1-P4 con scala colori graduata) e marker puntuali delle frane IFFI entro 2 km dall'immobile. Click su un poligono mostra la classe di pericolosità, click su un marker mostra la distanza e linka alla geometria completa su IdroGEO ISPRA. Utile per il perito che vuole verificare a colpo d'occhio il contesto idrogeologico dell'immobile e allegare lo screenshot al fascicolo.
Cosa NON è esposto come tile: le aree alluvione (la mosaicatura nazionale ISPRA è CC BY-SA 4.0, la cui clausola ShareAlike rende rischioso il rendering pubblico delle tile) e la geometria poligonale completa di IFFI. Per la pericolosità idraulica resta il dato testuale (zona P1/P2/P3) e per la geometria delle frane il link diretto a idrogeo.isprambiente.it.
DVR sismico aggregato multi-sede
Il piano Business (e Enterprise) produce un PDF unico con la sezione DVR sismico (D.Lgs. 81/08 artt. 17, 28, 29) per ciascuna sede dell'organizzazione con destinazione produttivo / commerciale / ricettivo. Utile all'RSPP e al datore di lavoro come traccia operativa unitaria per il DVR aziendale. Include:
- • tabella riepilogativa: sede, indirizzo, zona OPCM, PAM p50, classe di rischio D.M. 58/2017
- • sezione dedicata per sede: identificazione luogo di lavoro, quantificazione del pericolo, misure preventive e protettive richiamate, richiamo all'obbligo di aggiornamento ex art. 29 c. 3
- • elenco delle sedi escluse (residenziali o senza valutazione PAM registrata)
Il testo è deterministico (senza AI) — per DVR narrativi dettagliati per singola sede usa comunque il flusso standard /check con opzione "Includi sezione DVR sismico".
Persistenza al rientro: il pannello DVR aggregato in /manage ricorda l'ultimo PDF generato per la tua organizzazione: rientrando in pagina vedi un banner "Ultimo DVR aggregato disponibile" con la data di generazione e il bottone Scarica PDF. Il bottone principale diventa "Rigenera DVR aggregato": rigenera dopo aver aggiornato le valutazioni delle sedi.
Tutte le sedi escluse? Se nessuna sede dell'organizzazione ha una valutazione PAM registrata oppure tutte sono residenziali, la generazione viene bloccata prima del rendering del PDF (niente spreco di risorse). L'UI mostra l'elenco delle sedi escluse con bottone "Valuta ora →" accanto a ciascuna shell vuota, che ti porta direttamente a /check?property=N per popolarla. Una volta valutata almeno una sede compatibile, riapri il pannello DVR aggregato e clicca Rigenera.
Branding nei PDF dei seats: il template PDF brandizzato (logo + nome studio + indirizzo) è dell'intera organizzazione. L'owner lo carica una volta sola da /account → Template PDF brandizzato; tutti i seats (editor, viewer) vedranno lo stesso branding nei PDF e nei DVR aggregati che generano. Editor e viewer possono consultarlo ma il pannello è in sola lettura per loro.
Scadenze polizze CAT NAT
Su ciascuna property dell'archivio puoi registrare i dati della polizza catastrofale (data di scadenza, compagnia, numero polizza). Il pannello /manage mostra un badge colorato per ciascuna sede: verde se la polizza è attiva, arancio se la scadenza è entro 60 giorni, rosso se è già scaduta. Non memorizziamo le polizze firmate né facciamo sottoscrizione assicurativa (scelta deliberata per evitare l'ambito IVASS).
Whitelist IP (Enterprise)
Il piano Enterprise consente all'owner di limitare l'accesso API ai propri utenti solo da IP o subnet specifici (es. rete aziendale, VPN). Dal pannello /manage, sezione Whitelist IP, aggiungi regole in notazione CIDR IPv4/IPv6 (es. 10.0.0.0/8 oppure 203.0.113.42). Se la lista è vuota nessuna restrizione (default open); alla prima regola l'accesso viene limitato agli IP in lista per tutti i seats dell'organizzazione. Utile per rispettare policy di sicurezza interne.
Sicurezza
- • Isolamento tenant: nessun utente di un'organization può vedere immobili o dati di altre organization. Il backend applica lo scope su ogni query.
- • Sessione: cookie httpOnly SameSite=Lax, durata 24 ore. Password conservata come hash bcrypt (cost 12), mai in chiaro.
- • Disabilitazione account: l'owner può disabilitare un seat senza cancellarlo (blocco login, conservazione audit). Non si può auto-disabilitare.