netgescon-day0/skill-netgescon/control-tower/CURRENT-205.md

6.9 KiB

CURRENT-205

TASK_ID: task-affitti-contatti-banca-documenti-stabilizzazione MACHINE: .205 STATO: completato

Obiettivi Completati

  1. Risoluzione Recapiti e Residenza Barone Michele (Unità 321, Germanico 96):

    • Eliminata la collisione di chiave primaria (persona_id vs anagrafica_id) in UnitaImmobiliarePage.php che causava l'errata visualizzazione dei dati di Skynet Solutions SRL.
    • I recapiti estraggono fedelmente l'anagrafica reale di Barone Michele / Cecilia Tordini (cecilia.tordini@gmail.com, barone.michele@gmail.com, PEC cecilia.tordini@legalmail.it, cellulare 3388155553, telefono 0639731100).
    • Applicata la regola richiesta dall'utente: se l'indirizzo di residenza non è specificato nel profilo, cade automaticamente sull'indirizzo dello Stabile dove è situata l'unità (Via Germanico 96 00192 Roma (RM)).
  2. Risoluzione Errore HTTP 500 (Undefined variable $tabs) in Gestione Affitti (/admin-filament/affitti/gestione):

    • Bonificato il template Blade gestione-affitti.blade.php rimuovendo le direttive @php(...) a riga singola che corrompevano il parser del compilatore Blade di Laravel 12.
    • Aggiunta la computed property $this->tabs in GestioneAffitti.php per le 6 sezioni (Elenco Immobili a Reddito, Anagrafica & Catasto, Banca & Incassi, Contratto & Clausole, Canoni & Rate, Documenti & Allegati).
    • Predisposta la gestione sia dei contratti registrati AdE (RLI, scadenze, F24) sia dell'uso di beni comuni/spazi condominiali interni (locale bici Germanico 96, cantine, lavatoi) con addebito in estratto conto e conguaglio a fine gestione.
  3. Risoluzione HTTP 403 su Scheda Fattura Elettronica (/admin-filament/contabilita/fatture-ricevute/255):

    • In FatturaElettronicaScheda.php: esteso canAccess() e mount() per consentire esplicitamente l'accesso agli utenti con ruolo amministratore (come Cecilia Tordini) e collaboratore, oltre a super-admin/admin.
  4. Isolamento Dati Cross-Stabile & Collegamento Corretto Unità:

    • In Ordinarie.php: corretta l'indicizzazione di $condMap su $c['cod_cond'] e precaricata $unitaMap per mappare biunivocamente [scala|interno] all'ID unità. La riga di Lucaferri Antonella (A-13) punta ora con precisione all'Unità 287 (A-13) e non più alla 295.
    • In GesconEstrattoContoService.php: aggiunto buildForStabile0016Generic e protetto buildFromDatabase per prevenire qualsiasi iniezione di dati straordinari 0013 Spadavecchia (Passerella e Cornicione) nelle unità di altri stabili (verificato: Unità 295 di Germanico 96 ha 0 straordinarie 0013).
  5. Modale Anteprima Ricevute & Gestione Documenti Ufficiali Bancari (dati_bancari):

    • In unita-immobiliare.blade.php: implementato modale inline Alpine.js (receiptModalOpen) per visualizzare istantaneamente in iframe le ricevute di pagamento PDF (Inc_EC_...) sia dalle rate ordinarie/straordinarie che dalla tabella movimenti banca, con pulsante di download/apertura in nuova scheda.
    • In section.blade.php (Gescon Ordinarie):
      • Implementato modale inline Alpine.js (previewModalOpen) per l'anteprima rapida dei PDF di ricevuta incasso e dei documenti bancari.
      • Aggiunta in Tab Banca ($activeTab === 'banca') la sezione "Documenti Ufficiali Bancari dello Stabile (dati_bancari)": modulo di upload (tipologia estratto conto, contabile bonifico, contratto C/C; descrizione opzionale; file fino a 20MB) e tabella dei documenti archiviati con anteprima rapida, download e cancellazione gestita da Livewire (uploadBankDocument, deleteBankDocument, getBankDocumentsProperty).

Output del Giro Operativo

ESITO_205: riuscito TASK_ID: task-affitti-contatti-banca-documenti-stabilizzazione REPOSITORY: ssh://git@git.netgescon.it:2222/michele/netgescon-day0.git BRANCH: stabilization/205-zero COMMIT: f4d2050 FILE_O_AREE_TOCCATE:

  • app/Filament/Pages/Affitti/GestioneAffitti.php
  • app/Filament/Pages/Contabilita/FatturaElettronicaScheda.php
  • app/Filament/Pages/Gescon/Ordinarie.php
  • app/Filament/Pages/UnitaImmobiliarePage.php
  • app/Services/Gescon/GesconEstrattoContoService.php
  • resources/views/filament/pages/affitti/gestione-affitti.blade.php
  • resources/views/filament/pages/gescon/section.blade.php
  • resources/views/filament/pages/unita-immobiliare.blade.php
  • tests/Feature/GermanicoBancaReconciliationTest.php
  • skill-netgescon/control-tower/CURRENT-205.md TEST_ESEGUITI:
  • ./vendor/bin/pest tests/Feature/GermanicoBancaReconciliationTest.php (10 passed, 82 assertions, 100% pass)
  • ./vendor/bin/pest tests/Feature/GermanicoBancaReconciliationTest.php tests/Feature/UnitaEstrattoContoAtomicoTest.php tests/Feature/UnitaCondominoInquilinoRoleToggleTest.php tests/Feature/UnitaGestioneTemporaleTest.php tests/Feature/UnitaImmobiliarePageTest.php (24 passed, 242 assertions, 100% pass)
  • php artisan view:clear && php artisan view:cache (successo, 100% template compilati senza errori) GATE_STATISTICS:
  • BLADE_COMPILATION: 100% pulita senza errori di sintassi.
  • BENCHMARK_VERIFICATION:
    • 0016 Condòmino Barone Michele B-4 = € 885,00 esatto.
    • 0013 Condòmino Spadavecchia A-1 = € 1.267,96 esatto.
    • 0013 Inquilino Kiwa Cermet A-1 = € 731,30 esatto.
    • 0021 Condòmino Cefaloni Milizie 3 = € 847,69 esatto.
  • ISOLATION_VERIFICATION:
    • Unità 287 (A-13 Lucaferri) linkata correttamente da incassi MDB.
    • Unità 295 (A-21 Volpetti) priva di contaminazioni Stabile 0013 (0 straordinarie Passerella/Cornicione).
  • CONTACTS_VERIFICATION:
    • Unità 321 Barone Michele: recapiti Skynet rimossi; contatti reali presenti; residenza fallback su Via Germanico 96.
  • PERMISSIONS_VERIFICATION:
    • Cecilia Tordini (amministratore) accede alla Scheda Fattura Elettronica FE 255.
  • AFFITTI_VERIFICATION:
    • Gestione Affitti (/admin-filament/affitti/gestione) monta e renderizza con 6 tab operative e 0 errori 500. BLOCCO_DATI: no BLOCCO_CONTRATTO: no RISCHI_APERTI: nessuno

Prossimo Passo per .200 (Validazione)

  • Eseguire il checkout del branch stabilization/205-zero.
  • Eseguire la suite di test: ./vendor/bin/pest tests/Feature/GermanicoBancaReconciliationTest.php tests/Feature/UnitaEstrattoContoAtomicoTest.php
  • Verificare su http://192.168.0.205:8000:
    1. Scheda Unità Barone Michele (/admin-filament/unita-immobiliare?unita_id=321):
      • Recapiti mostrano i dati reali di Barone Michele / Cecilia Tordini e residenza Via Germanico 96.
      • Cliccando su "📄 Ricevuta PDF" si apre il modale inline con l'anteprima del documento.
    2. Gestione Affitti (/admin-filament/affitti/gestione):
      • Pagina accessibile con status 200 (nessun errore 500 $tabs).
    3. Scheda Fattura 255 (/admin-filament/contabilita/fatture-ricevute/255):
      • Accessibile per l'utente amministratore Cecilia Tordini.
    4. Cruscotto Ordinarie Gescon (/admin-filament/gescon/ordinarie?tab=banca):
      • Tab Banca con sezione "Documenti Ufficiali Bancari dello Stabile (dati_bancari)" con modulo upload e anteprima modale.
      • Tab Incassi con Lucaferri Antonella (A-13) che linka all'Unità 287 (non più 295).