Deutsche Umlaute in UI und Dokumentation korrigieren
This commit is contained in:
+39
-39
@@ -2,20 +2,20 @@
|
||||
|
||||
Stand: 2026-07-14
|
||||
|
||||
M4 uebernimmt die finanznahen Legacy-Buchungen additiv in das neue
|
||||
M4 übernimmt 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. Erste App-Abfragen koennen nun ueber
|
||||
weiterhin die bisherigen `kl_*`-Tabellen; das Ledger dient zunächst als
|
||||
vergleichbare, prüfbare Zielstruktur. Erste App-Abfragen können nun über
|
||||
einen zentralen Ledger-Service gegen `ledger_entries` laufen.
|
||||
|
||||
## Ziel
|
||||
|
||||
- `kl_Einzahlungen` nach `ledger_entries` spiegeln.
|
||||
- `kl_Kaffeeverbrauch` nach `ledger_entries` spiegeln.
|
||||
- Legacy-IDs erhalten, damit Paritaet und spaetere Delta-Migration moeglich
|
||||
- Legacy-IDs erhalten, damit Parität und spätere Delta-Migration möglich
|
||||
bleiben.
|
||||
- Summen gegen den Golden Master pruefen.
|
||||
- Keine bestehenden Legacy-Buchungen loeschen oder veraendern.
|
||||
- Summen gegen den Golden Master prüfen.
|
||||
- Keine bestehenden Legacy-Buchungen löschen oder verändern.
|
||||
|
||||
## Nicht-Ziele
|
||||
|
||||
@@ -36,7 +36,7 @@ Neue Tabelle:
|
||||
|
||||
- `ledger_entries`
|
||||
|
||||
Ergaenzende Skripte:
|
||||
Ergänzende Skripte:
|
||||
|
||||
```text
|
||||
scripts/backfill-ledger-entries.php
|
||||
@@ -44,20 +44,20 @@ scripts/check-m4-ledger-migration.php
|
||||
scripts/check-m4-ledger-service.php
|
||||
```
|
||||
|
||||
Ergaenzende App-Dateien:
|
||||
Ergänzende App-Dateien:
|
||||
|
||||
```text
|
||||
app/ledger.php
|
||||
ledger-preview.php
|
||||
```
|
||||
|
||||
Ausgefuehrter Dev-Stand:
|
||||
Ausgeführter Dev-Stand:
|
||||
|
||||
- Migration `0006_saas_ledger_entries.sql` wurde angewendet.
|
||||
- 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,
|
||||
- `app/ledger.php` stellt zentrale Abfragen für Tenant-Summen,
|
||||
Teilnehmer-Summen, einzelne Teilnehmer und letzte Buchungen bereit.
|
||||
- `ledger-preview.php` zeigt eine read-only App-Vorschau auf Tenant-Summen,
|
||||
aktive Teilnehmer und die letzten Ledger-Buchungen.
|
||||
@@ -109,16 +109,16 @@ ledger_entries.legacy_id = VerbrauchID
|
||||
Verbrauch wird negativ gespeichert. Damit ergibt `SUM(amount_cents)` direkt den
|
||||
aktuellen Saldo eines Teilnehmers.
|
||||
|
||||
## Idempotenz und Aufraeumen
|
||||
## Idempotenz und Aufräumen
|
||||
|
||||
Das Backfill-Skript nutzt `tenant_id`, `legacy_table` und `legacy_id` als
|
||||
eindeutige Quelle. Wiederholte Laeufe aktualisieren vorhandene Ledger-Zeilen.
|
||||
eindeutige Quelle. Wiederholte Läufe aktualisieren vorhandene Ledger-Zeilen.
|
||||
|
||||
Fuer den Default-Tenant werden nur solche Legacy-Spiegelungen entfernt, deren
|
||||
urspruengliche Legacy-Zeile nicht mehr existiert. Fachliche Daten werden dabei
|
||||
nicht aus den `kl_*`-Tabellen geloescht.
|
||||
Für den Default-Tenant werden nur solche Legacy-Spiegelungen entfernt, deren
|
||||
ursprüngliche Legacy-Zeile nicht mehr existiert. Fachliche Daten werden dabei
|
||||
nicht aus den `kl_*`-Tabellen gelöscht.
|
||||
|
||||
## Ausfuehrung
|
||||
## Ausführung
|
||||
|
||||
```bash
|
||||
php scripts/backfill-default-tenant.php
|
||||
@@ -133,33 +133,33 @@ Installation aus `.local/` verwendet werden.
|
||||
|
||||
## Akzeptanzkriterien
|
||||
|
||||
- Migration `0006_saas_ledger_entries.sql` laeuft erfolgreich: erfuellt.
|
||||
- Jede Legacy-Einzahlung hat genau eine Ledger-Zeile: erfuellt.
|
||||
- Jeder Legacy-Kaffeeverbrauch hat genau eine Ledger-Zeile: erfuellt.
|
||||
- Legacy-IDs sind je Tenant eindeutig: erfuellt.
|
||||
- Einzahlungen sind positiv, Verbrauch ist negativ: erfuellt.
|
||||
- Verbrauch behaelt Strichanzahl und Preis pro Strich: erfuellt.
|
||||
- Migration `0006_saas_ledger_entries.sql` läuft erfolgreich: erfüllt.
|
||||
- Jede Legacy-Einzahlung hat genau eine Ledger-Zeile: erfüllt.
|
||||
- Jeder Legacy-Kaffeeverbrauch hat genau eine Ledger-Zeile: erfüllt.
|
||||
- Legacy-IDs sind je Tenant eindeutig: erfüllt.
|
||||
- Einzahlungen sind positiv, Verbrauch ist negativ: erfüllt.
|
||||
- Verbrauch behält Strichanzahl und Preis pro Strich: erfüllt.
|
||||
- Web-Striche aus `Eintragsart = 2` bleiben als `source = legacy_web`
|
||||
erkennbar: erfuellt.
|
||||
- Ledger-Summen entsprechen dem Golden Master: erfuellt.
|
||||
erkennbar: erfüllt.
|
||||
- Ledger-Summen entsprechen dem Golden Master: erfüllt.
|
||||
- Zentrale Ledger-Abfragen liefern dieselben Teilnehmer-Summen wie der Golden
|
||||
Master: erfuellt.
|
||||
Master: erfüllt.
|
||||
- Tenant-Summen, aktive Teilnehmer, Einzelteilnehmer und letzte Buchungen sind
|
||||
ueber `app/ledger.php` abrufbar: erfuellt.
|
||||
- Read-only Ledger-Preview ist im Browser erreichbar: erfuellt.
|
||||
über `app/ledger.php` abrufbar: erfüllt.
|
||||
- Read-only Ledger-Preview ist im Browser erreichbar: erfüllt.
|
||||
|
||||
## Aktueller Pruefstatus
|
||||
## Aktueller Prüfstatus
|
||||
|
||||
- M4 Ledger-Migration: gruen mit 73 Assertions.
|
||||
- M4 Ledger-Service: gruen mit 110 Assertions.
|
||||
- M3 SaaS-Basis: weiterhin gruen.
|
||||
- M3 Tenant-Aufloesung: weiterhin gruen.
|
||||
- M3 Passwort/E-Mail: weiterhin gruen.
|
||||
- M3 Auth-Flow: weiterhin gruen.
|
||||
- M3 Settings-Flow: weiterhin gruen.
|
||||
- M3 Mail-Flow: weiterhin gruen.
|
||||
- Golden Master: weiterhin gruen mit 104 Assertions.
|
||||
- HTTP-Smoke: weiterhin gruen mit 23 geprueften Seiten inklusive
|
||||
- M4 Ledger-Migration: grün mit 73 Assertions.
|
||||
- M4 Ledger-Service: grün mit 110 Assertions.
|
||||
- M3 SaaS-Basis: weiterhin grün.
|
||||
- M3 Tenant-Auflösung: weiterhin grün.
|
||||
- M3 Passwort/E-Mail: weiterhin grün.
|
||||
- M3 Auth-Flow: weiterhin grün.
|
||||
- M3 Settings-Flow: weiterhin grün.
|
||||
- M3 Mail-Flow: weiterhin grün.
|
||||
- Golden Master: weiterhin grün mit 104 Assertions.
|
||||
- HTTP-Smoke: weiterhin grün mit 23 geprüften Seiten inklusive
|
||||
`ledger-preview.php`.
|
||||
|
||||
## Noch offen in M4
|
||||
@@ -167,4 +167,4 @@ Installation aus `.local/` verwendet werden.
|
||||
- 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.
|
||||
- Delta-Strategie für den finalen Cutover.
|
||||
|
||||
Reference in New Issue
Block a user