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

3.7 KiB

CURRENT-205

TASK_ID: task-bpm-bank-normalization MACHINE: .205 STATO: completato

Obiettivo Completato

  1. Parser Semantico Estratti Conto Banco BPM (BpmCsvParser.php):

    • Parsing atomico e semantico delle 10 colonne CSV BPM (Ragione Sociale, Data contabile, Data valuta, Banca, Rapporto, Importo, Divisa, Descrizione, Categoria/sottocategoria, Hashtag).
    • Classificazione deterministica e decodifica di 18 tipologie operative (disposizioni bonifici fornitori con numero fattura e data fattura, bonifici condòmini a credito/debito, addebiti SDD, bollettini CBILL/PagoPA, deleghe F24 Agenzia Entrate, commissioni bonifico, competenze e spese trimestrali, POS e carte, prelievi bancomat).
    • Eliminazione completa dei dump grezzi di riga CSV da descrizione_estesa e generazione di descrizioni sintetiche e pulite.
  2. Importatore Multi-Banca & Matching Automatico Entità (MovimentiBancaImporter.php):

    • Pipeline di importazione normalizzata su contabilita_movimenti_banca con memorizzazione strutturata in match_data (JSON).
    • Matching automatico entità: associazione a Fornitore (fornitore_id), RubricaUniversale (rubrica_mittente_id, rubrica_beneficiario_id) e condòmini di unità immobiliare.
    • Gestione da_confermare: marcatura deterministica per le transazioni senza riscontro certo per la revisione operatore da interfaccia.
  3. Modello & Visualizzazione Filament (MovimentoBanca.php & Blade Modal):

    • Accessor avanzati (mittente, beneficiario, tipo_operazione, rif_documento, descrizione_estesa_pulita).
    • Modale Filament potenziata con schede chiare per Mittente / Ordinante, Beneficiario / Fornitore, Riferimento Documento/Fattura, Codici CBILL/SDD, ABI/CAB e badge di stato.
  4. Re-import & Bonifica Stabile Pilota 0013 (Conto ID 8 - Banco BPM):

    • Ri-allineati tutti i 531 movimenti storici con dati 100% strutturati e rimozione delle ridondanze.

Output del Giro Operativo

ESITO_205: riuscito TASK_ID: task-bpm-bank-normalization REPOSITORY: ssh://git@git.netgescon.it:2222/michele/netgescon-day0.git BRANCH: stabilization/205-zero COMMIT: 25e2339 FILE_O_AREE_TOCCATE:

  • .gitignore
  • app/Modules/Contabilita/Models/MovimentoBanca.php
  • app/Services/Contabilita/BpmCsvParser.php
  • app/Services/Contabilita/MovimentiBancaImporter.php
  • resources/views/filament/pages/contabilita/partials/movimento-banca-dettaglio.blade.php
  • tests/Feature/BpmBankParserAndImporterTest.php
  • skill-netgescon/control-tower/CURRENT-205.md TEST_ESEGUITI:
  • ./vendor/bin/pest tests/Feature/BpmBankParserAndImporterTest.php 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 (26 passed, 180 assertions) GATE_STATISTICS:
  • PARSER_BPM_SEMANTICO: 18 casistiche operative coperte e decodificate con precisione.
  • PULIZIA_RIDONDANZE_CSV: 0 dump grezzi di riga su descrizione_estesa.
  • ENTITY_MATCHING: Matching automatico fornitori, rubrica universale e condomini con flag da_confermare.
  • TEST_SUITE: 26 test Feature passati con successo (180 asserzioni).
  • ZERO_MOCK: Dati bancari reali derivati da estratti conto Banco BPM. BLOCCO_DATI: no BLOCCO_CONTRATTO: no RISCHI_APERTI: nessuno

Prossimo Passo per .200 (Validazione)

  • Eseguire il checkout del branch stabilization/205-zero.
  • Eseguire i test Pest (26 passed, 180 assertions).
  • Verificare la vista movimenti bancari http://192.168.0.205:8000/admin-filament/contabilita/casse-banche/movimenti?conto_id=8 e l'apertura modale dei dettagli movimento.