netgescon-master/docs/05-backup-unificazione/DOCS-UNIFIED/01-MANUALI-OPERATIVI/INTERFACCIA-UNICA-TROUBLESHOOTING.md
Pikappa2 480e7eafbd 🎯 NETGESCON - Setup iniziale repository completo
📋 Commit iniziale con:
-  Documentazione unificata in docs/
-  Codice Laravel in netgescon-laravel/
-  Script automazione in scripts/
-  Configurazione sync rsync
-  Struttura organizzata e pulita

🔄 Versione: 2025.07.19-1644
🎯 Sistema pronto per Git distribuito
2025-07-19 16:44:47 +02:00

8.6 KiB
Raw Permalink Blame History

🔧 INTERFACCIA UNICA - TROUBLESHOOTING NETGESCON

Manual operativo per risoluzione problemi interfaccia, layout e dashboard
🔗 Master: ../../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:

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:

# 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:

# 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:

# Controlla migration
php artisan migrate:status | grep banking

# Verifica colonna JSON
php artisan tinker
> Schema::hasColumn('stabili', 'palazzine_data')

Fix:

# 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:

// Nel browser F12 -> Console
document.querySelectorAll('[data-bs-toggle="tab"]')
typeof bootstrap

Fix:

<!-- Assicurati Bootstrap JS sia caricato -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>

<!-- Inizializza tab manualmente se necessario -->
<script>
document.querySelectorAll('[data-bs-toggle="tab"]').forEach(tab => {
    new bootstrap.Tab(tab)
});
</script>

📋 CHECKLIST VALIDAZIONE FORM STABILI

Pre-Test

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

📁 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

# 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

💡 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