This commit is contained in:
2026-07-11 18:21:33 +02:00
parent cbea23083d
commit 92d94f1c95
129 changed files with 85783 additions and 11294 deletions
+18 -73
View File
@@ -1,80 +1,25 @@
# Kaffeekasse SaaS Neustart
# Legacy App Archiv
Frischer Neustart fuer eine mandantenfaehige Kaffeeliste mit:
Dieses Verzeichnis enthaelt den bisherigen PHP-Bestand der Kaffeeliste.
- klassischer Papierliste inklusive Nacherfassung
- digitaler Selbstbuchung fuer Browser, Tablet oder Kiosk
- vorbereitetem RFID-Pfad ueber Device-, Tag- und Event-Modelle
- Netcup-tauglichem PHP/MySQL-Betrieb ohne Root-Zwang
- produktionsnaher Vermarktungs- und Betriebsdokumentation
Es bleibt aus drei Gruenden im Repository:
## Projektziel
- als Referenz fuer die bestehende Fachlogik
- als Quelle fuer Datenmigrationen in die SaaS-Version
- als Rueckfalloption waehrend der Uebergangsphase
Dieses Repository bildet eine pragmatische SaaS-Basis fuer mehrere Kunden oder
Mandanten. Jeder Tenant arbeitet unter `t/{slug}` in einer getrennten
Organisation, waehrend Produktlogik, Betrieb und Vermarktung zentral bleiben.
## Wichtige Legacy-Bereiche
## Kernentscheidungen
- `index.php`: persoenliches Dashboard
- `stricheintragen.php`: Sammelerfassung fuer Kaffee-Striche
- `einzahlung.php`: Sammelerfassung fuer Einzahlungen
- `kaffeeliste.php`: operative Gesamtuebersicht
- `mitarbeiterverwalten.php`: Mitglieder- und Rollenpflege
- `letzteneintraege.php`: Korrektur letzter Buchungen
- `hinweise.php`: Banner/Hinweise
- `PHP 8.x + MySQL` ohne schwere Runtime-Voraussetzungen
- `public/` als einziger Webroot
- `tenant_id` auf allen tenantbezogenen Fachtabellen
- ein gemeinsames Ledger fuer `digital`, `paper` und spaeter `rfid`
- Webspace-freundliche Cron- und CLI-Hooks statt Daemons
## Umgang Mit Dem Archiv
## Hauptfunktionen
- Plattform-Installation per Browser
- Self-Service-Registrierung fuer neue Mandanten
- Plattform-Admin mit Tenant-Uebersicht
- Tenant-Login mit Rollen `owner`, `admin`, `member`
- Mitglieder, Produkte und Preisgrundlagen
- digitale Buchungen und Einzahlungen
- Papierlisten als Entwurf, Zeilen und Ledger-Posting
- RFID-Geraete, Karten und Event-Inbox
## Schnellstart lokal
1. `.env.example` nach `.env` kopieren oder den Installer unter `/install` nutzen.
2. `database/schema.sql` per `bin/migrate.php` gegen MySQL ausfuehren.
3. Webroot auf `public/` zeigen lassen.
4. Plattform-Admin anlegen und anschliessend Mandanten registrieren.
## Testumgebung im code-server
Fuer die SQLite-basierte Testumgebung kann der eingebaute PHP-Server genutzt werden:
```bash
php -S 0.0.0.0:8080 public/router_test.php
```
Der Test-Router unterstuetzt code-server-Proxy-Pfade wie `/proxy/8080` und
`/absproxy/8080`. Links, Form-Actions und Assets werden ueber zentrale Helper
erzeugt, damit CSS und JavaScript auch hinter einem Pfad-Prefix geladen werden.
Wenn ein Proxy den Prefix nicht als Header durchreicht, bleiben die erzeugten
URLs relativ und funktionieren weiterhin innerhalb des aktuellen Proxy-Pfads.
Optional kann ein fester Pfad-Prefix gesetzt werden, z.B. in `.env.test`:
```dotenv
APP_BASE_PATH=/proxy/8080
```
Ein einheitlicher Hosteintrag ist dafuer nicht noetig. Zeitgemaesser ist eine
Basis-Pfad-/Forwarded-Prefix-Unterstuetzung, weil Entwicklungsumgebungen wie
code-server Anwendungen haeufig unter einem Unterpfad statt unter einem eigenen
Host ausliefern.
## Wichtige Dateien
- [public/index.php](/config/workspace/kaffeeliste-neustart/public/index.php)
- [database/schema.sql](/config/workspace/kaffeeliste-neustart/database/schema.sql)
- [DEPLOY.md](/config/workspace/kaffeeliste-neustart/DEPLOY.md)
- [RUNBOOK.md](/config/workspace/kaffeeliste-neustart/RUNBOOK.md)
- [docs/go-live-checklist-netcup.md](/config/workspace/kaffeeliste-neustart/docs/go-live-checklist-netcup.md)
- [docs/go-to-market-30-60-90.md](/config/workspace/kaffeeliste-neustart/docs/go-to-market-30-60-90.md)
- [docs/next-steps-roadmap.md](/config/workspace/kaffeeliste-neustart/docs/next-steps-roadmap.md)
- [docs/product-strategy.md](/config/workspace/kaffeeliste-neustart/docs/product-strategy.md)
- [docs/marketing-ops.md](/config/workspace/kaffeeliste-neustart/docs/marketing-ops.md)
- [docs/production-blueprint.md](/config/workspace/kaffeeliste-neustart/docs/production-blueprint.md)
- [docs/rfid-roadmap.md](/config/workspace/kaffeeliste-neustart/docs/rfid-roadmap.md)
- Keine neuen Produktfunktionen mehr hier entwickeln.
- Nur noch fuer Referenz, Datenabgleich oder Notfallbetrieb verwenden.
- Neue Arbeit findet ausschliesslich in `../saas-app/` und `../docs/` statt.