# πŸ”§ INTERFACCIA UNICA - TROUBLESHOOTING NETGESCON > **Manual operativo** per risoluzione problemi interfaccia, layout e dashboard > **πŸ”— Master:** [`../../00-INDICE-MASTER-NETGESCON.md`](../../00-INDICE-MASTER-NETGESCON.md) > **πŸ“… Aggiornato:** 15/07/2025 --- ## 🚨 **PROBLEMI RISOLTI - QUICK REFERENCE** ### 1️⃣ **Dashboard si sposta dopo refresh** βœ… RISOLTO **Problema:** Layout che si sposta in basso dopo aggiornamento pagina **Causa:** Loading screen invasivo in `universal.blade.php` **Fix:** Commentata riga `@include('components.layout.loading-screen')` **File:** `resources/views/components/layout/universal.blade.php` ### 2️⃣ **View [dashboard.guest] not found** βœ… RISOLTO **Problema:** Errore view mancante per dashboard guest **Fix:** Creata `resources/views/dashboard/guest.blade.php` **Content:** Layout base con @extends('layouts.app') ### 3️⃣ **Form stabili non si visualizza** βœ… RISOLTO **Problema:** Maschera inserimento stabili non visibile, interfaccia rotta **Causa:** Form mista Bootstrap/Tailwind, layout tab non funzionante **Fix:** Rifatta completamente form con layout tab Bootstrap puro **File:** `resources/views/admin/stabili/_form.blade.php` ### 4️⃣ **Ruolo 'condomino' mancante** βœ… RISOLTO **Problema:** Errore ruolo condomino non trovato **Fix:** Seeder ruoli aggiornato e eseguito **Command:** `php artisan db:seed --class=RoleSeeder` ### 5️⃣ **Loading screen invasivo** βœ… RISOLTO **Problema:** Schermata loading copre tutta l'interfaccia **Fix:** Sostituito con progress bar footer non invasiva **File:** `resources/views/components/menu/sections/footer.blade.php` --- ## 🏒 **FORM STABILI - DETTAGLIO ARCHITETTURA** ### πŸ“‹ **Struttura Tab Implementate** | Tab | Contenuto | Status | |-----|-----------|--------| | 🏠 **Dati Generali** | Denominazione, codice stabile, CF, P.IVA, note | βœ… Completo | | πŸ“ **Indirizzo** | Via, cittΓ , CAP, provincia | βœ… Completo | | 🏒 **Palazzine** | Gestione multi-palazzine tabella Excel-like | βœ… Completo | | πŸ›οΈ **Dati Catastali** | Foglio, mappale, categoria, piani/interni evidenziati | βœ… Completo | | 🏦 **Dati Bancari** | IBAN principale/secondario, banche, filiali | βœ… Completo | | πŸ‘€ **Amministratore** | Nome, email, date nomina/scadenza | βœ… Completo | | πŸͺ **Locali Servizio** | Cantina, portiere, contatori, caldaia, biciclette | βœ… Completo | ### πŸ—οΈ **Tab Palazzine - Gestione Multi-Palazzine** **FunzionalitΓ :** - βœ… Tabella dinamica stile Excel - βœ… Aggiungi/Rimuovi righe con bottoni - βœ… Campi: Palazzina, Indirizzo, Scala, Interni, Piani - βœ… Dati esempio precaricati (Via Germanico, Via Catone, Via Gracchi) **Dati Esempio:** ``` PALAZZINA | INDIRIZZO | SCALA | INTERNI | PIANI 1 | Via Germanico 85 | A | 8 | 4 1 | Via Germanico 85 | B | 6 | 4 2 | Via Catone 34 | A | 12 | 4 2 | Via Catone 34 | B | 12 | 4 2 | Via Catone 34 | C | 12 | 4 3 | Via Gracchi 32 | A | 10 | 4 3 | Via Gracchi 32 | B | 10 | 4 ``` ### πŸ›οΈ **Tab Dati Catastali - Evidenziazione** **Caratteristiche:** - βœ… Alert warning per evidenziare importanza - βœ… Card dedicata per piani/interni con badge - βœ… Layout in evidenza per dati ufficiali **Piani/Interni Evidenziati:** ``` 🏒 PIANI E INTERNI Piano 1: [INTERNI 12] Piano 2: [INTERNI 34] Piano 3: [INTERNI 56] Piano 4: [INTERNI 78] ``` ### πŸͺ **Tab Locali di Servizio** **Tipi Locali Supportati:** - βœ… Cantina - βœ… Appartamento Portiere - βœ… Locale Contatori - βœ… Locale Caldaia - βœ… Locale Biciclette - βœ… Altro (personalizzabile) **Campi per Locale:** - **Tipo:** Dropdown con categorie predefinite - **Descrizione:** Testo libero (es. "Cantina 1 e 2") - **Ubicazione:** Piano/posizione (es. "Piano Interrato") ### πŸ’Ύ **Database - Campi JSON** **Tabella `stabili` - Nuovi Campi:** ```sql palazzine_data JSON -- Array palazzine locali_servizio JSON -- Array locali iban_principale VARCHAR -- IBAN primario banca_principale VARCHAR -- Nome banca amministratore_nome VARCHAR -- Nome amministratore foglio VARCHAR -- Catastale mappale VARCHAR -- Catastale categoria VARCHAR -- Catastale rendita_catastale DECIMAL -- Catastale ``` --- ## πŸ”§ **TROUBLESHOOTING SPECIFICO** ### ❌ **Form stabili non funziona** **Sintomi:** - Tab non responsive - Campi non visibili - JavaScript errors - Layout rotto **Diagnosi:** ```bash # Controlla il file form cat resources/views/admin/stabili/_form.blade.php | head -20 # Verifica Bootstrap loaded curl http://localhost:8000 | grep bootstrap # Controlla errori JavaScript # (F12 -> Console nel browser) ``` **Fix:** ```bash # Se la form Γ¨ rotta, ripristina da backup cp resources/views/admin/stabili/_form.blade.php.backup resources/views/admin/stabili/_form.blade.php # Oppure ricrea la form php artisan make:view admin.stabili._form ``` ### ❌ **Palazzine non salvano** **Sintomi:** - Dati palazzine non persistono - Errore validazione array - JSON malformato **Diagnosi:** ```bash # Controlla migration php artisan migrate:status | grep banking # Verifica colonna JSON php artisan tinker > Schema::hasColumn('stabili', 'palazzine_data') ``` **Fix:** ```bash # Riesegui migrazione se necessario php artisan migrate:fresh --seed # Controlla model cast grep -n "palazzine_data" app/Models/Stabile.php ``` ### ❌ **JavaScript tab non funziona** **Sintomi:** - Tab non clickable - Contenuto non si switcha - Console errors **Diagnosi:** ```javascript // Nel browser F12 -> Console document.querySelectorAll('[data-bs-toggle="tab"]') typeof bootstrap ``` **Fix:** ```html ``` --- ## πŸ“‹ **CHECKLIST VALIDAZIONE FORM STABILI** ### βœ… **Pre-Test** - [ ] Server Laravel running su http://localhost:8000 - [ ] Login admin funzionante (admin@example.com / password) - [ ] Menu Stabili accessibile - [ ] Nessun errore 500 in laravel.log ### βœ… **Test Interfaccia** - [ ] Tab visibili e clickable - [ ] Ogni tab mostra contenuto corretto - [ ] Font compatto e leggibile - [ ] Nessun overflow o scrollbar indesiderati ### βœ… **Test Palazzine** - [ ] Tabella visibile con dati esempio - [ ] Bottone "Aggiungi Palazzina" funziona - [ ] Bottone "Rimuovi" (trash) funziona - [ ] Impossibile rimuovere ultima riga - [ ] Validazione campi numerici (interni/piani) ### βœ… **Test Locali** - [ ] Dropdown tipo locale funziona - [ ] Bottone "Aggiungi Locale" funziona - [ ] Campi descrizione/ubicazione editabili - [ ] Rimozione locali funziona ### βœ… **Test Salvataggio** - [ ] Form submit senza errori - [ ] Dati persistono nel database - [ ] JSON palazzine_data ben formato - [ ] JSON locali_servizio ben formato - [ ] Redirect corretto dopo salvataggio ### βœ… **Test Dati Catastali** - [ ] Alert warning visibile - [ ] Card piani/interni in evidenza - [ ] Badge colorate per interni - [ ] Campi catastali editabili --- ## πŸ”— **RIFERIMENTI E LINK** ### πŸ“ **File Critici** - **Form:** `resources/views/admin/stabili/_form.blade.php` - **Controller:** `app/Http/Controllers/Admin/StabileController.php` - **Model:** `app/Models/Stabile.php` - **Migration:** `database/migrations/2025_07_15_063452_add_banking_and_palazzine_fields_to_stabili_table.php` ### πŸ”§ **Comandi Utili** ```bash # Restart server php artisan serve --host=0.0.0.0 --port=8000 # Check migrations php artisan migrate:status # Clear cache php artisan optimize:clear # Test database php artisan tinker ``` ### πŸ“ž **Link Documentazione** - **Master Index:** [`../../00-INDICE-MASTER-NETGESCON.md`](../../00-INDICE-MASTER-NETGESCON.md) - **Quick Reference:** [`../QUICK-REFERENCE-CARD.md`](../QUICK-REFERENCE-CARD.md) - **Log Sviluppo:** [`../LOG-SVILUPPO.md`](../LOG-SVILUPPO.md) --- > **πŸ’‘ TIP:** Questo manual viene aggiornato ad ogni fix. Documenta sempre nuovi problemi! > **πŸ”„ Mantieni aggiornato** con ogni modifica alla form stabili. --- **πŸ”§ Interfaccia Unica Troubleshooting** - NetGescon System **πŸ“§ Support:** admin@netgescon.it | **🌐 URL:** http://localhost:8000