M4 Ledger-Service fuer erste App-Abfragen ergaenzen
- zentrale Ledger-Abfragen fuer Tenant- und Teilnehmer-Summen bauen - letzte Buchungen und Einzelteilnehmer ueber app/ledger.php lesbar machen - Service-Check und M4-Doku ergaenzen
This commit is contained in:
@@ -5,7 +5,8 @@ Stand: 2026-07-13
|
||||
M4 uebernimmt die finanznahen Legacy-Buchungen additiv in das neue
|
||||
tenant-sichere Ledger-Modell. Die bestehenden Legacy-Seiten lesen und schreiben
|
||||
weiterhin die bisherigen `kl_*`-Tabellen; das Ledger dient zunaechst als
|
||||
vergleichbare, pruefbare Zielstruktur.
|
||||
vergleichbare, pruefbare Zielstruktur. Erste App-Abfragen koennen nun ueber
|
||||
einen zentralen Ledger-Service gegen `ledger_entries` laufen.
|
||||
|
||||
## Ziel
|
||||
|
||||
@@ -40,6 +41,13 @@ Ergaenzende Skripte:
|
||||
```text
|
||||
scripts/backfill-ledger-entries.php
|
||||
scripts/check-m4-ledger-migration.php
|
||||
scripts/check-m4-ledger-service.php
|
||||
```
|
||||
|
||||
Ergaenzende App-Dateien:
|
||||
|
||||
```text
|
||||
app/ledger.php
|
||||
```
|
||||
|
||||
Ausgefuehrter Dev-Stand:
|
||||
@@ -48,6 +56,8 @@ Ausgefuehrter Dev-Stand:
|
||||
- 9 Legacy-Einzahlungen wurden als `payment` gespiegelt.
|
||||
- 12 Legacy-Kaffeeverbrauch-Zeilen wurden als `consumption` gespiegelt.
|
||||
- Ein zweiter Backfill-Lauf blieb idempotent und erzeugte keine Dubletten.
|
||||
- `app/ledger.php` stellt zentrale Abfragen fuer Tenant-Summen,
|
||||
Teilnehmer-Summen, einzelne Teilnehmer und letzte Buchungen bereit.
|
||||
|
||||
## Abbildungsregeln
|
||||
|
||||
@@ -111,6 +121,7 @@ nicht aus den `kl_*`-Tabellen geloescht.
|
||||
php scripts/backfill-default-tenant.php
|
||||
php scripts/backfill-ledger-entries.php
|
||||
php scripts/check-m4-ledger-migration.php
|
||||
php scripts/check-m4-ledger-service.php
|
||||
php scripts/check-golden-master.php
|
||||
```
|
||||
|
||||
@@ -128,10 +139,15 @@ Installation aus `.local/` verwendet werden.
|
||||
- Web-Striche aus `Eintragsart = 2` bleiben als `source = legacy_web`
|
||||
erkennbar: erfuellt.
|
||||
- Ledger-Summen entsprechen dem Golden Master: erfuellt.
|
||||
- Zentrale Ledger-Abfragen liefern dieselben Teilnehmer-Summen wie der Golden
|
||||
Master: erfuellt.
|
||||
- Tenant-Summen, aktive Teilnehmer, Einzelteilnehmer und letzte Buchungen sind
|
||||
ueber `app/ledger.php` abrufbar: erfuellt.
|
||||
|
||||
## Aktueller Pruefstatus
|
||||
|
||||
- M4 Ledger-Migration: gruen mit 73 Assertions.
|
||||
- M4 Ledger-Service: gruen mit 102 Assertions.
|
||||
- M3 SaaS-Basis: weiterhin gruen.
|
||||
- M3 Tenant-Aufloesung: weiterhin gruen.
|
||||
- M3 Passwort/E-Mail: weiterhin gruen.
|
||||
@@ -143,8 +159,8 @@ Installation aus `.local/` verwendet werden.
|
||||
|
||||
## Noch offen in M4
|
||||
|
||||
- Neues Repository/Service fuer Ledger-Abfragen der App-Seiten.
|
||||
- Tenant-sichere Dashboard-, Strich-, Einzahlungs- und Listenqueries auf Basis
|
||||
des Ledgers.
|
||||
- Erste read-only App-Seite oder Preview auf Basis von `app/ledger.php`.
|
||||
- Tenant-sichere Dashboard-, Strich-, Einzahlungs- und Listenqueries schrittweise
|
||||
von Legacy-Tabellen auf das Ledger umstellen.
|
||||
- Storno-/Reversal-Modell in der UI statt harter Deletes.
|
||||
- Delta-Strategie fuer den finalen Cutover.
|
||||
|
||||
@@ -284,7 +284,7 @@ Uebersicht:
|
||||
| M1 | Golden Master | Legacy-Ergebnisse sind als Vergleichsbasis eingefroren; HTTP-Smoke prueft sichere Seiten |
|
||||
| M2 | Technisches Fundament | Abgeschlossen: Migrationen, Bootstrap, Session, CSRF-Helper und Legacy-Schreibseitenschutz stehen |
|
||||
| M3 | SaaS-Basis | Abgeschlossen: Tenants, User, Registrierung, Login, Rollen, Mail-Links und zentrale Mandantenauswahl funktionieren |
|
||||
| M4 | Datenmigration | Gestartet: Ledger-Tabelle, Legacy-Backfill und Paritaetscheck sind umgesetzt |
|
||||
| M4 | Datenmigration | Gestartet: Ledger-Tabelle, Legacy-Backfill, Paritaetscheck und Ledger-Service sind umgesetzt |
|
||||
| M5 | App-Kern | Dashboard, Striche, Einzahlungen, Mitglieder und Liste laufen |
|
||||
| M6 | Betriebsflows | Import, Export, Mail und Jahresprozesse sind auditierbar |
|
||||
| M7 | Landingpage | Erste werbliche Seite ist oeffentlich nutzbar; spaetere Ausbaustufen folgen |
|
||||
@@ -457,12 +457,16 @@ Schritte:
|
||||
spiegeln: erster Backfill erledigt.
|
||||
- Legacy-IDs speichern: erledigt ueber `legacy_table` und `legacy_id`.
|
||||
- Salden gegen Golden-Master vergleichen: Kontrollskript erledigt.
|
||||
- Ledger-Service fuer Tenant-Summen, Teilnehmer-Summen und letzte Buchungen:
|
||||
erledigt.
|
||||
|
||||
Ergebnis:
|
||||
|
||||
- Bestehender Datenbestand kann im neuen Modell abgebildet werden.
|
||||
- Saldenparitaet ist ueber `scripts/check-m4-ledger-migration.php`
|
||||
nachweisbar.
|
||||
- Erste App-Abfragen koennen ueber `app/ledger.php` tenant-sicher aus dem neuen
|
||||
Modell lesen.
|
||||
- Dokumentation: `docs/m4-data-migration.md`.
|
||||
|
||||
Abhaengigkeiten:
|
||||
|
||||
Reference in New Issue
Block a user