M5 abschliessen: Schreibseiten aufs Ledger umstellen, Storno statt Delete
- stricheintragen.php und einzahlung.php erhielten bisher gar keine Zugriffskontrolle (nur CSRF), jetzt Rollen-/Legacy-Fallback wie in kaffeeliste.php; Sammeleintraege spiegeln transaktional ins Ledger (ledger_mirror_legacy_payment neu ergaenzt). - letzteneintraege.php war rein ueber Legacy-Admin gesperrt und haette neue SaaS-Mandanten ausgeschlossen; Loeschen markiert den gespiegelten Ledger-Eintrag jetzt per voided_at statt ihn zu entfernen (ledger_void_entry_by_legacy_id). - check-m4-ledger-migration.php an das Storno-Modell angepasst: verwaiste Ledger-Zeilen sind nur noch ein Fehler, wenn sie nicht voided sind. - Nebenbei: PHP-Warning bei Sammelerfassung behoben, toten Code entfernt, veraltete README (verwies auf nicht existierende saas-app/-Struktur) korrigiert. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,25 +1,36 @@
|
||||
# Legacy App Archiv
|
||||
# Kaffeeliste
|
||||
|
||||
Dieses Verzeichnis enthält den bisherigen PHP-Bestand der Kaffeeliste.
|
||||
Dieses Repository enthält den laufenden Umbau der Kaffeelisten-App von einer
|
||||
Windows/IIS/LDAP-gebundenen Legacy-App zu einer mehrkundenfähigen SaaS-
|
||||
Anwendung. Der Umbau erfolgt schrittweise im selben Repository, nicht in
|
||||
einem getrennten Zielverzeichnis: Legacy-Seiten und neue SaaS-Bausteine
|
||||
liegen nebeneinander, bis eine Seite vollständig auf das neue Modell
|
||||
umgestellt ist.
|
||||
|
||||
Es bleibt aus drei Gründen im Repository:
|
||||
Den vollständigen Plan mit Zielbild, Datenmodell, Rollenmodell und
|
||||
Meilensteinen beschreibt `docs/saas-umstrukturierungsplan.md`. Der
|
||||
Fortschritt je Meilenstein steht in `docs/m2-technical-foundation.md` bis
|
||||
`docs/m5-app-kern.md`.
|
||||
|
||||
- als Referenz für die bestehende Fachlogik
|
||||
- als Quelle für Datenmigrationen in die SaaS-Version
|
||||
- als Rückfalloption während der Übergangsphase
|
||||
## Struktur
|
||||
|
||||
## Wichtige Legacy-Bereiche
|
||||
- Legacy- und SaaS-Seiten liegen als flache PHP-Dateien im Webroot, zum
|
||||
Beispiel `index.php`, `stricheintragen.php`, `kaffeeliste.php`,
|
||||
`mitarbeiterverwalten.php`.
|
||||
- `app/`: zentrale Bausteine für Bootstrap, DB-Zugriff, Auth, Mail und das
|
||||
neue Ledger-Modell (`app/ledger.php`).
|
||||
- `database/migrations/`: versionierte Schemaänderungen, anzuwenden über
|
||||
`scripts/migrate.php`.
|
||||
- `scripts/`: Migrations-, Backfill- und Prüfskripte (Golden Master,
|
||||
HTTP-Smoke, M3/M4-Checks).
|
||||
- `docs/`: Planungs- und Meilensteindokumentation.
|
||||
|
||||
- `index.php`: persönliches Dashboard
|
||||
- `stricheintragen.php`: Sammelerfassung für Kaffee-Striche
|
||||
- `einzahlung.php`: Sammelerfassung für Einzahlungen
|
||||
- `kaffeeliste.php`: operative Gesamtübersicht
|
||||
- `mitarbeiterverwalten.php`: Mitglieder- und Rollenpflege
|
||||
- `letzteneintraege.php`: Korrektur letzter Buchungen
|
||||
- `hinweise.php`: Banner/Hinweise
|
||||
## Umgang mit Legacy-Seiten
|
||||
|
||||
## Umgang Mit Dem Archiv
|
||||
|
||||
- Keine neuen Produktfunktionen mehr hier entwickeln.
|
||||
- Nur noch für Referenz, Datenabgleich oder Notfallbetrieb verwenden.
|
||||
- Neue Arbeit findet ausschließlich in `../saas-app/` und `../docs/` statt.
|
||||
- Seiten, die noch direkt auf `kl_*`-Tabellen schreiben, werden schrittweise
|
||||
auf tenant-sicheres Lesen/Schreiben über `app/ledger.php` und
|
||||
`app/saas-auth.php` umgestellt; siehe die Meilensteindokumente für den
|
||||
aktuellen Stand je Seite.
|
||||
- Neue Produktfunktionen entstehen gegen das neue Modell (Tenants, Users,
|
||||
Participants, Ledger), nicht mehr direkt gegen die `kl_*`-Tabellen.
|
||||
- Lokale Entwicklung gegen MySQL ist in `docs/dev-mysql.md` beschrieben.
|
||||
|
||||
Reference in New Issue
Block a user