#!/bin/bash # Script di verifica completa del sistema Netgescon # Uso: ./verify-system.sh echo "🔍 VERIFICA COMPLETA SISTEMA NETGESCON" echo "======================================" echo "" echo "1️⃣ Controllo struttura database..." mysql -u root -p -e " USE netgescon; SELECT 'Tabella amministratori:' as info; DESCRIBE amministratori; SELECT '' as separator; SELECT 'Utenti esistenti:' as info; SELECT id, name, email FROM users LIMIT 5; " echo "" echo "2️⃣ Test generazione codice univoco..." php artisan tinker --execute=" echo 'Test Observer Amministratore:'; \$user = \App\Models\User::first(); if (\$user) { echo 'Utente trovato: ' . \$user->name; \$admin = new \App\Models\Amministratore([ 'nome' => 'Test Sistema', 'cognome' => 'Verifica', 'user_id' => \$user->id, 'codice_amministratore' => 'SYSVER' . rand(10,99) ]); \$admin->save(); echo 'Admin creato con codice univoco: ' . \$admin->codice_univoco; \$admin->delete(); echo 'Test completato (record eliminato)'; } else { echo 'ERRORE: Nessun utente trovato nel sistema'; } " echo "" echo "3️⃣ Controllo Observer e trigger..." php artisan tinker --execute=" echo 'Controllo configurazione Observer:'; echo 'AmministratoreObserver: ' . (class_exists('App\\\Observers\\\AmministratoreObserver') ? 'OK' : 'MANCANTE'); echo 'UserObserver: ' . (class_exists('App\\\Observers\\\UserObserver') ? 'OK' : 'MANCANTE'); " echo "" echo "4️⃣ Test migration status..." php artisan migrate:status | tail -10 echo "" echo "✅ Verifica completata!"