# CURRENT-205 TASK_ID: task-87b64082c1 MACHINE: .205 STATO: completato ## Obiettivo Completato 1. **Risoluzione Nominativi Multi-Annualità e Gestione Subentri nel Tempo**: - Ancoraggio del contenitore stabile all'Unità fisica definita da `(cod_stabile, scala, interno)` con conservazione di tutti gli `id_cond` e `cod_cond` delle varie gestioni. - Allineamento delle finestre temporali (`data_inizio`, `data_fine`) in `unita_anagrafica_periodo` per tutti i subentri storici dello Stabile 0013. - Risoluzione dinamica dei nominativi nel selettore a tendina e nella scheda unità in base all'`anno_gestione` attivo (2026, 2024, 2020, ecc.). 2. **Multicanale Email Split & Recapiti Unità**: - Splitting avanzato di email e recapiti multipli/concatenati (es. `danilo.ritzu@kiwacermet.it,tesoreria@kiwacermet.it,riccardo.mantovani@kiwacermet.it`) in righe multicanale separate con etichettatura automatica (`Principale`, `Email Tesoreria`, `Email Riccardo Mantovani`) e link diretti `mailto:` e `tel:`. 3. **Importazione Idempotente Protocollo Storico & Corrispondenza (`protoc_ec` / `corrisp_inviata`)**: - Importazione SQLite e sincronizzazione da `generale_stabile.mdb` di 587 record di estratti conto protocollo e lettere tipo/circolari. - Mappatura puntuale dei file PDF storici archiviati in `/mnt/gescon-archives/gescon/0013/E_C/`. 4. **Riorganizzazione Razionale TAB Scheda Unità Immobiliare**: - Rimosse le tab obsolete `catasto` e `comproprietari` (dati consolidati in `riepilogo` e `nominativi`). - Spostata la sezione "📊 Spese e Millesimi Addebitati per Gestione" (con breakdown `voc_spe`) dal tab `estratto_conto` al tab `millesimi` (Tabelle Millesimali & Spese). - Inserita nel tab `preferenze` (📨 Comunicazioni & Protocollo) la nuova tabella del Protocollo Comunicazioni & Corrispondenza Inviata collegata ai canali di notifica ufficiali. 5. **Contabilità Casse/Banche, Parser BPM CSV & Riconciliazione Rate/Incassi**: - Risolto errore 403 su `/admin-filament/contabilita/casse-banche/movimenti?conto_id=8` e `riepilogo` per ruolo `amministratore`. - Implementato parser `BpmCsvParser` per il tracciato esportato Banco BPM con 375 movimenti reali importati su Conto 8. - Riconciliazione contabile FIFO che abbina gli incassi registrati alle rate emesse evidenziando data di saldo, pagato e residuo dovuto. ## Output del Giro Operativo ESITO_205: riuscito TASK_ID: task-87b64082c1 REPOSITORY: ssh://git@git.netgescon.it:2222/michele/netgescon-day0.git BRANCH: stabilization/205-zero COMMIT: 4c4de5e FILE_O_AREE_TOCCATE: - app/Console/Commands/GesconBonificaStabile0013Command.php - app/Filament/Pages/Contabilita/CasseBancheMovimenti.php - app/Filament/Pages/Contabilita/CasseBancheRiepilogo.php - app/Filament/Pages/UnitaImmobiliarePage.php - app/Services/Contabilita/BpmCsvParser.php - app/Services/Contabilita/MovimentiBancaImporter.php - resources/views/filament/pages/unita-immobiliare.blade.php - skill-netgescon/ui-wireframes/utente-multi-ruolo.md - tests/Feature/UnitaImmobiliarePageTest.php TEST_ESEGUITI: - ./vendor/bin/pest tests/Feature/UnitaGestioneTemporaleTest.php tests/Feature/CatastoHubDbDrivenTest.php tests/Feature/UnitaCondominoInquilinoRoleToggleTest.php tests/Feature/UnitaImmobiliarePageTest.php tests/Feature/AnagraficaUnicaCanonicaTest.php tests/Feature/BenedettoBonificaIdempotenteTest.php tests/Feature/ControlTowerPollCommandTest.php (22 passed, 131 assertions) GATE_STATISTICS: - UNITA_REALI_0013: 42 unità canoniche con cronistoria temporale multi-gestione. - PROTOCOLLO_EC_0013: 587 record sincronizzati da generale_stabile.mdb con link PDF. - MOVIMENTI_BANCARI_BPM: 375 movimenti reali importati su Conto 8. - MULTICHANNEL_CONTACTS_TABLE: Matrice recapiti con split email individuali e badge. - ZERO_MOCK: Dati catastali e contabili 100% DB-driven. BLOCCO_DATI: no BLOCCO_CONTRATTO: no RISCHI_APERTI: nessuno ## Prossimo Passo per .200 (Validazione) - Eseguire il checkout del branch `stabilization/205-zero`. - Eseguire `php artisan gescon:bonifica-stabile-0013` per convalidare la bonifica, il protocollo comunicazioni e l'allineamento temporale. - Eseguire la suite di test Pest (22 test, 131 asserzioni).