# Roadmap Gestione Affitti & Hub Fornitori Aggiornato al 28/11/2025 ## 1. Obiettivi strategici - **Gestione Affitti**: offrire una console operativa unica che monitori contratti, unità, task e timeline collegati ai ticket manutentivi. - **Hub Fornitori**: trasformare l’attuale elenco in un portale operativo con scheda 360°, SLA, documenti e collegamento diretto alla Rubrica Unica / Ticket Planner. - **Allineamento Legacy**: mappare i dati provenienti dalle viste storiche (screenshot/manuali allegati) per sapere dove innestare ogni informazione. ## 2. Stato attuale | Area | File / Endpoint | Note principali | |------|-----------------|-----------------| | Gestione Affitti | `App\Http\Controllers\Admin\AffittiController::index` + `resources/views/admin/affitti/index.blade.php` | Console mock completata (metriche, contratti, taskboard, timeline, CTA future). | | Scheda Anagrafica | `resources/views/anagrafica/show.blade.php` tab "Affitti" | CTA collegata alla console (`route('admin.affitti.index')`). | | Menu | `resources/views/components/menu/sidebar-netgescon.blade.php` | Nuove voci Amministrazione: Gestione Affitti, Hub Fornitori, Ticket Planner. | | Hub Fornitori | `App\Http\Controllers\Admin\FornitoreController`, `App\Models\Fornitore`, `resources/views/admin/fornitori/*.blade.php` | CRUD basico con tabella Bootstrap; nessun layer visivo NetGescon, niente filtri o agganci Rubrica/Tickets. | ## 3. Roadmap Gestione Affitti 1. **Fase A – Stabilizzazione UI (COMPLETATA)** - Console NetGescon reattiva, CTA dal menu e dalla scheda anagrafica. 2. **Fase B – Collegamento dati reali (in corso)** - Collegare `AffittiController@index` a modelli reali (contratti, unità, task). - Creare repository per aggregare: contratti attivi, prossime scadenze, incassi previsti, tasso occupazione. - Integrare filtri (stabile, tipologia, priorità), search e KPI storici. 3. **Fase C – Workflow 360° (da pianificare)** - Trigger da Rubrica Unica: dalla scheda soggetto si apre il contratto relativo. - Inline actions (rinnova contratto, genera bollettini, apri ticket manutenzione). - Timeline condivisa con Ticket Planner (mostra attività tecniche e autorizzazioni). ## 4. Roadmap Hub Fornitori ### 4.1 Vision UI - **Hero + KPI**: numero fornitori attivi, SLA in corso, ticket aperti per fornitore. - **Lista con filtri**: chips per categoria (impianti, pulizie, legale), quick search, badge SLA. - **Scheda Fornitore**: - Identità: `ragione_sociale`, `codice_univoco`, P.IVA / CF, riferimento Rubrica (`rubrica_id`). - Contatti: `email`, `pec`, `telefono`, `cellulare`, `sito_web`, geolocalizzazione (`indirizzo`, `civico`, `cap`, `citta`, `provincia`, `nazione`). - Compliance: `regime_fiscale_id`, `tipologia_cassa_id`, `aliquota_iva_id`, documenti garantiti. - Operatività: assignee nei ticket (`ticketsAssegnati`), storico interventi, rating qualità. - Timeline + allegati (verbali, DURC, assicurazioni). - **Ticket Planner widget**: card laterale con prossimi interventi e stato squadra. ### 4.2 Gap analisi rispetto al modello dati attuale - Il modello `Fornitore` espone già tutti i campi anagrafici e fiscali, oltre a `rubrica_id` e `ticketsAssegnati`. - Mancano campi per SLA e tagging (si possono calcolare con pivot custom o jsonb `metadata`). - Le viste Blade attuali mostrano solo poche colonne; non c’è componente NetGescon per card/filters. ### 4.3 Piano azioni | Step | Deliverable | Dettagli | Dipendenze | |------|-------------|----------|------------| | F1 | **Console Hub Fornitori (lista)** | Nuova view Tailwind con hero, filtri rapidi, tabella responsive e collegamento diretto alla Rubrica Unica (button "Apri contatto"). | Layout NetGescon pronto, metriche mock da `FornitoreController@index`. | | F2 | **Scheda Fornitore 360°** | Nuova route `admin.fornitori.show` ridisegnata: tabs Informazioni, Compliance, Documenti, Ticket. Include componenti cards e timeline. | Richiede mapping campi modello + endpoint `ticketsAssegnati`. | | F3 | **Modulo creazione/edizione guidato** | Wizard 3 step (Identità, Contatti, Fisco/Note) con validazioni UI, autocompletamento Rubrica (`rubrica_id`). | Nuovi componenti form NetGescon; eventuali API per ricerca rubrica. | | F4 | **Integrazione Ticket Planner** | Mostrare accanto ai fornitori i ticket assegnati e permettere di schedulare interventi (link `route('admin.tickets.index')#planner`). | Dipende dal refactoring Ticket Planner (macro roadmap manutenzioni). | | F5 | **Metrics & Insights** | Dashboard mini-KPI (tempo medio di intervento, fatturato, rating) alimentati da tabelle `tickets`, `documenti`, `fatture`. | Disponibilità dati contabili / ticket. | ## 5. Mappa dati verso Rubrica Unica | Campo Fornitore | Origine / Destinazione Rubrica | Note | |-----------------|-------------------------------|------| | `rubrica_id` | FK verso `rubrica_universale.id` | Necessario per aprire la scheda Rubrica direttamente dal fornitore. | | `ragione_sociale` / `nome` / `cognome` | Scheda contatto rubrica | Usare logica: se azienda ⇒ `ragione_sociale`, se professionista ⇒ `nome` + `cognome`. | | `indirizzo`, `civico`, `cap`, `citta`, `provincia`, `nazione` | Dati localizzazione Rubrica | Consentono mappe e filtri geografici condivisi. | | `email`, `pec`, `telefono`, `cellulare`, `sito_web` | Canali di contatto | Mappare multi-canale su Rubrica per usare il composer comunicazioni. | | `regime_fiscale_id`, `tipologia_cassa_id`, `aliquota_iva_id` | Tassonomia fiscale Rubrica | Serve per fatturazione e controllo DURC. | | `codice_univoco`, `old_id` | Bridge con legacy Gescon | Usati per sincronizzare record importati e storicizzare riferimenti manuali. | ## 6. Sequenza di implementazione suggerita 1. **Sprint 1 (in corso)** - Rifinitura console affitti con filtri e toggle dataset reali. - Aggiornamento menu + CTA (completati). 2. **Sprint 2** - Delivery F1 (lista Hub Fornitori) + endpoint API per filtri/search. - Introduzione skeleton component condiviso per card/liste. 3. **Sprint 3** - Delivery F2 + F3 (scheda completa + wizard). - Collegamento puntuale con Rubrica Unica (deep link "Apri contatto"). 4. **Sprint 4** - Ticket Planner integration (F4) + timeline condivisa con Affitti. - Prima versione insights (F5) e sincronizzazione con moduli contabili. ## 7. Prossimi passi immediati - Convertire `admin.fornitori.index` alla stessa estetica della console Affitti per creare continuità visiva. - Definire DTO o ViewModel condivisi per Contratti e Fornitori, così da popolare le viste senza query duplicate. - Mappare i campi legacy (screen/manuali) verso i componenti UI definiti qui per non perdere informazioni durante la migrazione finale.