fix(stabili): use auto-generated codice_univoco for archive paths and restart server for PHP pgsql extension (task-d095b0e23b)
This commit is contained in:
parent
b01bc8c0a7
commit
7920903f09
|
|
@ -42,7 +42,7 @@ public function stabileCode(Stabile | string $stabile): string
|
|||
return $code;
|
||||
}
|
||||
|
||||
$code = trim((string) ($stabile->codice_stabile ?: $stabile->codice_univoco ?: ''));
|
||||
$code = trim((string) ($stabile->codice_univoco ?: $stabile->codice_stabile ?: ''));
|
||||
|
||||
if ($code === '') {
|
||||
throw new InvalidArgumentException('Stabile senza codice archivio canonico.');
|
||||
|
|
|
|||
|
|
@ -43,12 +43,13 @@ ## 6. Principio di Deterministicità Assoluta (Regola Commercialista)
|
|||
- **Divieto di Fallback o Date Fittizie**: È tassativamente vietato inventare date fittizie (es. `01/01/2000` o `01/01/2026` ripetute) o stimare ruoli non presenti negli archivi MDB.
|
||||
- **Trattamento dati mancanti**: Se una relazione o una data di decorrenza non è presente negli archivi consolidati, il sistema deve riportare unicamente le gestioni storiche certe (es. `Gestioni 0004, 0005, 0909, 0912, 0913, 0914`) oppure restituire `BLOCCO_DATI`. I dati devono essere certificabili e certi al 100%.
|
||||
|
||||
## 7. Struttura Cartelle Canonica dello Stabile e Portabilità
|
||||
- **Codice Canonico Stabile**: Le cartelle fisiche di archivio documenti e backup SQLite sono identificate tassativamente tramite il `codice_stabile` canonico (es. `0021` per Supercondominio Milizie 3).
|
||||
## 7. Struttura Cartelle Canonica dello Stabile, Codice Univoco e Portabilità
|
||||
- **Codice Univoco Stabile (Non Legacy)**: Le cartelle fisiche di archivio documenti e backup SQLite sono identificate tassativamente tramite il `codice_univoco` generato dal sistema (es. `HWAGIBXK` o `0000000C`), **mai tramite il codice numerico del legacy** (es. `0001` o `0021`).
|
||||
- **Motivazione Architetturale**: L'uso del `codice_univoco` evita conflitti sulla stessa macchina nel caso in cui due amministratori differenti abbiano entrambi uno stabile con il medesimo identificativo legacy (es. `0001`), e garantisce la portabilità e l'interconnessione multi-tenant di fornitori, proprietari ed inquilini durante i passaggi di gestione.
|
||||
- **Percorsi Tipo**:
|
||||
- Cartella Stabile: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_stabile}`
|
||||
- Documenti Stabile: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_stabile}/documenti`
|
||||
- Backup & SQLite: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_stabile}/database/backups`
|
||||
- Cartella Stabile: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_univoco}`
|
||||
- Documenti Stabile: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_univoco}/documenti`
|
||||
- Backup & SQLite: `storage/app/private/amministratori/{codice_amministratore}/stabili/{codice_univoco}/database/backups`
|
||||
|
||||
## 8. Architettura Database PostgreSQL e Visualizzatore Web (Stile PhpMyAdmin)
|
||||
- **Database Engine**: PostgreSQL per persistenza strutturale multi-tenant e gestione passaggio gestioni tra amministratori.
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user