netgescon-day0/docs/roadmaps/affitti-fornitori-roadmap.md

84 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 lattuale 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.