# πŸ€– NETGESCON - GUIDA PER GITHUB COPILOT/AI ## πŸ“‹ Istruzioni Complete per Continuare lo Sviluppo > **🎯 DOCUMENTO MASTER** per GitHub Copilot/AI > **πŸ“ Posizione:** `~/netgescon/docs/00-COPILOT-MASTER-GUIDE.md` > **πŸ”„ Creato:** 18/07/2025 - Handoff completo Michele β†’ AI --- ## 🚨 **ATTENZIONE: PRIMA DI INIZIARE** ### ⚠️ **REGOLA D'ORO: NON PERDERE I DATI** 1. **MAI** modificare direttamente il database di produzione 2. **SEMPRE** fare backup prima di modifiche strutturali 3. **TESTARE** ogni modifica su ambiente di sviluppo 4. **VERIFICARE** autenticazione e permessi dopo ogni modifica ### πŸ”‘ **CREDENZIALI E ACCESSI ATTUALI** ```bash # Login applicazione URL: http://192.168.0.200:8000 Admin: admin@example.com / password SuperAdmin: superadmin@example.com / password # Server Linux SSH: netgescon@192.168.0.200 Password: [verificare con Michele] # Database Host: localhost DB: netgescon User: netgescon_user Password: [verificare .env] ``` --- ## πŸ“‚ **STRUTTURA PROGETTO - MAPPA COMPLETA** ### 🏠 **DIRECTORY PRINCIPALE** ``` ~/netgescon/ β”œβ”€β”€ netgescon-laravel/ # 🌐 APPLICAZIONE PRINCIPALE LARAVEL β”‚ β”œβ”€β”€ app/ # Models, Controllers, Middleware β”‚ β”œβ”€β”€ database/ # Migrations, Seeders β”‚ β”œβ”€β”€ resources/views/ # Template Blade β”‚ β”œβ”€β”€ routes/ # Route definitions β”‚ β”œβ”€β”€ storage/logs/ # Log applicazione β”‚ └── .env # ⚠️ CONFIGURAZIONE CRITICA β”œβ”€β”€ docs/ # πŸ“š DOCUMENTAZIONE UNIFICATA β”‚ β”œβ”€β”€ 00-COPILOT-MASTER-GUIDE.md # πŸ€– QUESTO DOCUMENTO β”‚ β”œβ”€β”€ 00-INDICE-DOCS-UNIFICATA.md # 🧭 INDICE PRINCIPALE β”‚ β”œβ”€β”€ 00-transizione-linux/ # πŸ”‘ GUIDE TRANSIZIONE β”‚ β”œβ”€β”€ 01-manuali-aggiuntivi/ # πŸ› οΈ MANUALI OPERATIVI β”‚ β”œβ”€β”€ 02-architettura-laravel/ # πŸ—οΈ ARCHITETTURA SISTEMA β”‚ β”œβ”€β”€ 03-scripts-automazione/ # βš™οΈ SCRIPT UTILITΓ€ β”‚ └── images/ # πŸ–ΌοΈ SCREENSHOT DEBUG └── backup/ # πŸ’Ύ BACKUP SICUREZZA ``` ### 🎯 **ENTRY POINT - DA DOVE INIZIARE** #### 1️⃣ **DOCUMENTO PRINCIPALE** **πŸ“ INIZIO QUI:** [`docs/00-INDICE-DOCS-UNIFICATA.md`](00-INDICE-DOCS-UNIFICATA.md) - Contiene **navigazione completa** di tutta la documentazione - Link diretti a tutti i documenti chiave - Scenari di navigazione per ogni situazione #### 2️⃣ **DOCUMENTI CHIAVE FONDAMENTALI** 1. **[`docs/00-transizione-linux/README-TRANSITION-COMPLETE.md`](00-transizione-linux/README-TRANSITION-COMPLETE.md)** - πŸ”‘ **GUIDA TRANSIZIONE COMPLETA** - Struttura progetto, configurazione, troubleshooting - **LEGGI QUESTO PER PRIMO** 2. **[`docs/00-transizione-linux/FEATURES-INVENTORY-COMPLETE.md`](00-transizione-linux/FEATURES-INVENTORY-COMPLETE.md)** - πŸ“Š **INVENTARIO COMPLETO FUNZIONALITΓ€** - Stato implementazione, roadmap, prioritΓ  - **CONSULTA PER CAPIRE COSA È GIΓ€ FATTO** 3. **[`docs/00-MANUALE-COMPLETO-NETGESCON-UNIFICATO.md`](00-MANUALE-COMPLETO-NETGESCON-UNIFICATO.md)** - πŸ“– **MANUALE COMPLETO SISTEMA** - Come funziona tutto, procedure operative 4. **[`docs/05-INTERFACCIA-UNIVERSALE.md`](05-INTERFACCIA-UNIVERSALE.md)** - 🎨 **SISTEMA INTERFACCIA UNIFICATA** - Come funziona il layout, sidebar, AJAX - **FONDAMENTALE** per modifiche frontend --- ## πŸ”§ **WORKFLOW SVILUPPO SICURO** ### βœ… **PROCEDURA STANDARD** ```bash # 1. Backup prima di qualsiasi modifica cd ~/netgescon/netgescon-laravel ./docs/03-scripts-automazione/manage-database.sh backup # 2. Test ambiente php artisan test # 3. Verifica login funzionante curl -I http://localhost:8000 # 4. Sempre versioning git add . git commit -m "Descrizione modifica" # 5. Deploy step-by-step php artisan migrate --dry-run # Verifica migrations php artisan migrate # Solo se tutto OK ``` ### ⚠️ **COSA NON FARE MAI** - ❌ `php artisan migrate:fresh` in produzione - ❌ Modificare .env senza backup - ❌ Cancellare migrations esistenti - ❌ Cambiare chiavi di autenticazione senza test - ❌ Modificare ruoli/permessi senza verificare accessi --- ## 🎯 **TASK PRIORITARI - COSA FARE DOPO** ### πŸš€ **IMMEDIATE (Prossimi giorni)** 1. **Completare gestione economica** - File: `app/Http/Controllers/EconomicaController.php` - Riferimento: [`docs/00-transizione-linux/FEATURES-INVENTORY-COMPLETE.md`](00-transizione-linux/FEATURES-INVENTORY-COMPLETE.md) sezione "GESTIONE ECONOMICA" 2. **Migliorare sistema upload documenti** - File: `app/Http/Controllers/DocumentiController.php` - Riferimento: [`docs/04-DATABASE-STRUTTURE.md`](04-DATABASE-STRUTTURE.md) 3. **Espandere reportistica** - Directory: `resources/views/reports/` - Riferimento: [`docs/07-API-INTEGRAZIONI.md`](07-API-INTEGRAZIONI.md) ### πŸ“‹ **BREVE TERMINE (1-2 settimane)** 1. **API REST complete** - Directory: `routes/api.php` - Riferimento: [`docs/02-architettura-laravel/ARCHITETTURA_MODULARE_COMPLETATA.md`](02-architettura-laravel/ARCHITETTURA_MODULARE_COMPLETATA.md) 2. **Sistema notifiche** - File: `app/Notifications/` - Riferimento: [`docs/06-SISTEMA-MULTI-RUOLO.md`](06-SISTEMA-MULTI-RUOLO.md) --- ## πŸ› οΈ **SCRIPT E AUTOMAZIONE DISPONIBILI** ### πŸ“ **Directory:** `docs/03-scripts-automazione/` #### πŸ”§ **Setup e Manutenzione** - `setup-complete-environment.sh` - Setup ambiente completo - `fix-vscode-install.sh` - Fix installazione VS Code - `manage-database.sh` - Gestione database (backup/restore) #### πŸ”„ **Sincronizzazione** - `sync-bidirectional.sh` - Sync bidirezionale file - `sync-to-remote.sh` - Sync verso server remoto #### ⚑ **Testing e Deploy** - `test-dashboard.sh` - Test dashboard e funzionalitΓ  - `quick-deploy.sh` - Deploy rapido - `verify-system.sh` - Verifica sistema --- ## πŸ—„οΈ **COMPRENSIONE DATABASE** ### πŸ“Š **Tabelle Principali** ```sql -- Riferimento: docs/04-DATABASE-STRUTTURE.md stabili # Edifici/condomini persone # Anagrafica (inquilini, proprietari, admin) unita_immobiliari # Appartamenti/locali users # Sistema autenticazione roles # Ruoli utenti (admin, superadmin, inquilino) ``` ### πŸ”‘ **Migrations Critiche** ```bash # Directory: database/migrations/ # ATTENZIONE: Non modificare quelle esistenti # Per nuove modifiche: php artisan make:migration nome_modifica ``` ### πŸ‘₯ **Sistema Autenticazione** - **Controller:** `app/Http/Controllers/Auth/SecureDashboardController.php` - **Middleware:** `app/Http/Middleware/` - **Spatie Roles:** Sistema ruoli e permessi - **Riferimento:** [`docs/06-SISTEMA-MULTI-RUOLO.md`](06-SISTEMA-MULTI-RUOLO.md) --- ## 🎨 **SISTEMA INTERFACCIA** ### πŸ—οΈ **Layout Universale** - **File principale:** `resources/views/components/layout/universal.blade.php` - **Sistema sidebar:** `resources/views/components/sidebar-dynamic.blade.php` - **AJAX navigation:** `public/js/dashboard.js` ### πŸ“± **Componenti UI** - **Cards dashboard:** `resources/views/dashboard/` - **Form modali:** `resources/views/forms/` - **Tabelle data:** `resources/views/tables/` ### 🎯 **Riferimenti Interfaccia** - [`docs/05-INTERFACCIA-UNIVERSALE.md`](05-INTERFACCIA-UNIVERSALE.md) - **Sistema completo** - [`docs/02-architettura-laravel/sidebar-modulare.md`](02-architettura-laravel/sidebar-modulare.md) - **Sidebar** - [`docs/08-FRONTEND-UX.md`](08-FRONTEND-UX.md) - **Frontend guidelines** --- ## πŸ” **TROUBLESHOOTING RAPIDO** ### ❌ **Problema: Dashboard non carica** ```bash # Soluzione rapida php artisan optimize:clear php artisan config:cache # Riferimento: docs/01-manuali-aggiuntivi/QUICK_REFERENCE_LARAVEL.md ``` ### ❌ **Problema: Errori permessi** ```bash # Fix permessi sudo chown -R www-data:www-data ~/netgescon/netgescon-laravel sudo chmod -R 755 ~/netgescon/netgescon-laravel sudo chmod -R 775 storage bootstrap/cache ``` ### ❌ **Problema: Database connection** ```bash # Verifica configurazione cat .env | grep DB_ mysql -u netgescon_user -p # Riferimento: docs/00-transizione-linux/README-TRANSITION-COMPLETE.md ``` ### ❌ **Problema: Autenticazione rotta** ```bash # Verifica ruoli php artisan tinker User::with('roles')->get(); # Riferimento: docs/06-SISTEMA-MULTI-RUOLO.md ``` --- ## πŸ”„ **SINCRONIZZAZIONE SERVER REMOTO** ### πŸ“‘ **Script Rsync Pronto** ```bash # Da eseguire per sincronizzare con server remoto cd ~/netgescon rsync -avz --delete \ --exclude='.git' \ --exclude='node_modules' \ --exclude='vendor' \ --exclude='storage/logs' \ ./ utente@server-remoto:/percorso/destinazione/ ``` ### 🎯 **Cartelle da Sincronizzare SEMPRE** - `docs/` - Documentazione completa - `netgescon-laravel/app/` - Codice applicazione - `netgescon-laravel/resources/` - Template e asset - `netgescon-laravel/database/migrations/` - Strutture DB - `netgescon-laravel/.env.example` - Configurazione template ### ⚠️ **Cartelle da NON Sincronizzare** - `netgescon-laravel/storage/logs/` - Log locali - `netgescon-laravel/vendor/` - Dipendenze (ricostruire con composer) - `netgescon-laravel/node_modules/` - Dipendenze npm - `.git/` - Storia git (sync separato) --- ## πŸ€– **MESSAGGI PER IL TUO ALTER EGO** ### πŸ’¬ **Cosa dirgli per iniziare** ``` "Ciao! Sono il tuo 'alter ego' Michele. Ho preparato tutto per te: 1. INIZIA DA: ~/netgescon/docs/00-INDICE-DOCS-UNIFICATA.md 2. LEGGI SUBITO: docs/00-transizione-linux/README-TRANSITION-COMPLETE.md 3. INVENTARIO: docs/00-transizione-linux/FEATURES-INVENTORY-COMPLETE.md 4. QUESTA GUIDA: docs/00-COPILOT-MASTER-GUIDE.md REGOLA D'ORO: Sempre backup prima di modifiche! La struttura Γ¨ completa e documentata. Hai accesso a: - 301 file di documentazione - Script automazione pronti - Database funzionante - Sistema autenticazione attivo Tutto Γ¨ nella cartella docs/ organizzato per categoria. Non perderti, segui gli indici! 🧭" ``` ### 🎯 **Come risolvere primi problemi** ``` "Per i primi problemi: 1. SEMPRE consulta: docs/01-manuali-aggiuntivi/QUICK_REFERENCE_LARAVEL.md 2. Script emergenza: docs/03-scripts-automazione/verify-system.sh 3. Troubleshooting: docs/00-transizione-linux/README-TRANSITION-COMPLETE.md 4. Database issues: docs/04-DATABASE-STRUTTURE.md Tutti gli screenshot debug sono in: docs/images/ Michele ha documentato TUTTO. Usa la documentazione!" ``` --- ## πŸ“‹ **CHECKLIST FINALE HANDOFF** ### βœ… **Verifica Completezza** - [ ] Documentazione unificata in docs/ - [ ] Script automazione testati - [ ] Database funzionante - [ ] Autenticazione attiva - [ ] Backup sistema configurato - [ ] Rsync script preparato ### βœ… **Test FunzionalitΓ ** - [ ] Login admin funziona - [ ] Dashboard carica - [ ] CRUD stabili operativo - [ ] Sistema ruoli attivo - [ ] Sidebar AJAX funziona ### βœ… **Documentazione Accessibile** - [ ] Indici navigabili - [ ] Cross-reference funzionanti - [ ] Screenshot disponibili - [ ] Script documentati --- ## πŸš€ **PASSAGGIO DI CONSEGNE COMPLETATO** > **🎯 Michele β†’ GitHub Copilot/AI** > > **Data handoff:** 18/07/2025 > **Stato sistema:** βœ… Funzionante e documentato > **Copertura documentazione:** 301 file, 11MB > **Entry point:** `docs/00-INDICE-DOCS-UNIFICATA.md` > > **πŸ”‘ Tutto Γ¨ pronto per continuare lo sviluppo in autonomia!** --- **🏒 NETGESCON** - Passaggio Consegne Completo **πŸ€– Da:** Michele (Human Developer) **πŸ€– A:** GitHub Copilot/AI Assistant **πŸ“… Data:** 18 Luglio 2025