63 lines
4.4 KiB
Markdown
63 lines
4.4 KiB
Markdown
# CURRENT-205
|
|
|
|
TASK_ID: task-relational-contabilita-db-sync
|
|
MACHINE: .205
|
|
STATO: completato
|
|
|
|
## Obiettivo Completato
|
|
|
|
1. **Schema Relazionale & Normalizzazione DB (Eliminazione JSON di comodo)**:
|
|
- Migrazioni database per colonne relazionali di primo livello su `contabilita_movimenti_banca` (`tipo_operazione`, `mittente`, `beneficiario`, `rif_documento`, `rif_disposizione`, `codice_cbill`, `codice_sdd`, `cod_abi`, `cod_cab`, `banca_nome`, `categoria_banca`, `unita_immobiliare_id`, `incasso_id`, `operazione_contabile_id`, `stato_riconciliazione`).
|
|
- Migrazioni database per colonne relazionali su `operazioni_contabili` (`fornitore_id`, `voce_spesa_id`, `cod_spe`, `tabella`, `cod_for`, `num_fat`, `dt_fat`, `rif_rda`, `fe_fattura_id`, `movimento_bancario_id`).
|
|
- Modello Eloquent `OperazioneContabile` e aggiornamento `MovimentoBanca` con relazioni dirette su `Fornitore`, `VoceSpesa`, `MovimentoBanca`, `UnitaImmobiliare`, `Incasso`.
|
|
|
|
2. **Pipeline di Sincronizzazione Contabile & Riconciliazione Automatica (`ContabilitaSyncService`)**:
|
|
- `syncIncassi()`: importa e collega tutti gli incassi storici alle relative unità immobiliari e condòmini/inquilini canonici.
|
|
- `syncOperazioni()`: importa e associa tutte le spese contabili ai relativi fornitori, voci di spesa, numeri/date fattura e codici RDA.
|
|
- `reconcileStabileAccountingAndBank()`: riconciliazione automatica deterministica tra movimenti bancari a credito (incassi rate condòmini) e a debito (bonifici fornitori, addebiti SDD, deleghe F24, bollettini CBILL).
|
|
- Eseguita sincronizzazione completa per lo stabile pilota 0013: 1.664 operazioni contabili, 2.698 incassi e oltre 260 riconciliazioni automatiche effettuate.
|
|
|
|
3. **Blade Gescon Ordinarie DB-Driven (`http://192.168.0.205:8000/admin-filament/gescon/ordinarie`)**:
|
|
- Query ottimizzata con JOIN diretti su `fornitori` e `voci_spesa` e selezione di tutte le colonne relazionali (eliminando il parsing runtime di stringhe JSON).
|
|
- Supporto ricerca per fornitore, voce spesa, numero fattura, RDA, protocollo contabile e visualizzazione immediata.
|
|
|
|
4. **Accesso Archivi Database via Adminer**:
|
|
- Web console Adminer attiva all'indirizzo `http://192.168.0.205:8000/adminer.php`.
|
|
- Accesso rapido 1-click su database MySQL (`?auto=mysql`) e PostgreSQL consolidato (`?auto=pgsql`).
|
|
|
|
## Output del Giro Operativo
|
|
|
|
ESITO_205: riuscito
|
|
TASK_ID: task-relational-contabilita-db-sync
|
|
REPOSITORY: ssh://git@git.netgescon.it:2222/michele/netgescon-day0.git
|
|
BRANCH: stabilization/205-zero
|
|
COMMIT: 8682b16
|
|
FILE_O_AREE_TOCCATE:
|
|
- app/Filament/Pages/Gescon/Ordinarie.php
|
|
- app/Models/OperazioneContabile.php
|
|
- app/Modules/Contabilita/Models/MovimentoBanca.php
|
|
- app/Services/Contabilita/ContabilitaSyncService.php
|
|
- app/Services/Contabilita/MovimentiBancaImporter.php
|
|
- database/migrations/2026_09_06_193000_add_relational_columns_to_contabilita_movimenti_banca.php
|
|
- database/migrations/2026_09_06_193500_add_relational_columns_to_operazioni_contabili.php
|
|
- tests/Feature/ContabilitaRelazionaleOrdinarieTest.php
|
|
- skill-netgescon/control-tower/CURRENT-205.md
|
|
TEST_ESEGUITI:
|
|
- ./vendor/bin/pest tests/Feature/ContabilitaRelazionaleOrdinarieTest.php 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 (28 passed, 188 assertions)
|
|
GATE_STATISTICS:
|
|
- DB_NORMALIZATION: Colonne relazionali atomiche su contabilita_movimenti_banca e operazioni_contabili.
|
|
- SYNC_AUTOMATICA: 1.664 operazioni e 2.698 incassi sincronizzati nel DB su Stabile 0013.
|
|
- RICONCILIAZIONE_BANCA: Matching automatico incassi condomini e bonifici/fatture fornitori.
|
|
- BLADE_ORDINARIE: Query DB relazionale con JOIN e filtri attivi.
|
|
- TEST_SUITE: 28 test Feature passati con successo (188 asserzioni).
|
|
- ZERO_MOCK: 100% dati reali da archivi legacy e flussi bancari.
|
|
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 (28 passed, 188 assertions).
|
|
- Verificare la vista `http://192.168.0.205:8000/admin-filament/gescon/ordinarie` e la console Adminer su `http://192.168.0.205:8000/adminer.php`.
|