netgescon-day0/docs/support/CRM-ANAGRAFICA-LEGAMI.md

71 lines
2.2 KiB
Markdown

# CRM Anagrafica Legami
Questa nota serve a verificare e riallineare i legami tra:
1. rubrica_universale
2. persone
3. persone_unita_relazioni
4. rubrica_ruoli
5. riferimenti testuali stabile/unita usati dal CRM chiamate
## Ordine corretto della pipeline
Per i casi importati da Gescon il flusso corretto e:
1. `gescon:auto-sync-anagrafiche`
2. `anagrafica:sync-soggetti`
3. `gescon:materialize-persone-relazioni`
4. `gescon:sync-rubrica-ruoli`
Se un contatto e presente in rubrica ma non compare nel CRM con stabile/unita corretti, il punto da verificare non e solo la rubrica: quasi sempre manca uno dei passaggi centrali su `persone_unita_relazioni` o `rubrica_ruoli`.
## Nuovo comando QA mirato
Per l operatore la via ordinaria non deve essere il terminale: il flusso corretto passa dalla UI `Supporto > Modifiche`, che durante il sync Git prova anche la ricucitura sicura dei legami rubrica.
Il comando resta comunque disponibile per diagnosi tecniche o ambienti di sviluppo.
Per analizzare casi singoli senza modificare nulla:
```bash
php artisan gescon:qa-rubrica-legami --rubrica-id=3236 --rubrica-id=3470
```
Per applicare solo fix sicuri:
```bash
php artisan gescon:qa-rubrica-legami --rubrica-id=3236 --rubrica-id=3470 --apply-safe
```
Il comando applica solo questi interventi conservativi:
1. aggiorna `riferimento_stabile` se lo stabile candidato e univoco
2. aggiorna `riferimento_unita` se l'unita candidata e univoca
3. crea `rubrica_ruoli` solo quando esiste un'unica unita candidata e il ruolo e non ambiguo
## Regola pratica
Se il candidato unita arriva solo da `gescon_import.condomin` ma non esiste ancora una relazione locale robusta, il comando non crea `rubrica_ruoli`.
Questo evita di scrivere legami strutturati in casi ancora dubbi.
## Casi gia emersi
### Rubrica 3236
Caso tipico di fix sicuro:
1. record rubrica presente
2. stabile e unita coerenti e univoci
3. assenza di `rubrica_ruoli`
4. fix automatico consentito
### Rubrica 3470
Caso da verificare con piu cautela:
1. rubrica presente
2. unita candidata individuabile
3. manca la catena locale completa o il ruolo e ancora ambiguo
4. consentito solo aggiornare i riferimenti testuali se il caso resta univoco, ma non forzare sempre `rubrica_ruoli`