Plan: Terminplaner TP1 Kern (17 Aufgaben + Livegang), Spec-Feinschliff

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Opus 5.5 committed 2026-10-03 08:17:43 +00:00
1 parent 275dbcd690
commit e3ff05c804
2 files changed
+254 -7

No files matched your search

@@ -81,7 +81,7 @@ legt nur Fehlendes an, Indizes nur bei neuen Collections). Alle Collections `per
{
"schema": 1,
"vorlage": "salon", // Branchen-Vorlage, nur Herkunft
"betrieb": { "name": "Salon Müller", "email": "info@salon.de", "telefon": "06301 1234",
"betrieb": { "name": "Salon Müller", "email": "info@salon.de", "telefon": "06301 1234", "kleinunternehmer": false,
"adresse": "Hauptstr. 1, 67722 Winnweiler",
"impressumUrl": "https://…", "datenschutzUrl": "https://…", "agbUrl": null },
"anrede": "sie", // sie | du (Widget, Gästeseiten, Gästemails)
@@ -403,7 +403,7 @@ Kunden-API `server/routes/termine.js` unter `/api/termine` (`requireSession`, `a
### 10. Ticketsystem (WOMS) in TP1
- Portal: `FEATURE_KEYS = ['news','termine']`; `findActiveBySiteKey(siteKey, featureKey)`;
`activateClosedTickets` je Schlüssel (für TP2 vorbereitet); `funktionenAdmin.js` Route
`activateClosedTickets` bleibt in TP1 bei News (TP2 verallgemeinert es samt Mails); `funktionenAdmin.js` Route
`POST /api/team/funktionen/:customerId/:key` (`key` ∈ `FEATURE_KEYS`; `/news` bleibt gleichwertig) und
`adminView` mit allen Schlüsseln (Ticket-Lookups gebündelt statt N+1).
- WOMS: `src/lib/funktionenView.js` (Register der Funktionen, Zustandstexte, Bestätigungstexte),
@@ -465,11 +465,11 @@ Tagen (Zeit für den Export) Löschung aller Buchungen, Zellen, Einstellung. Kun
### 14. Livegang TP1 (je Schritt Freigabe des Nutzers)
1. L1 Schema: `termine-setup.mjs --check`, dann anlegen (im Container). Abhängigkeit `feiertagejs`
kommt mit dem Deploy (`deploy.sh` führt `npm install` aus).
2. L2 Portal: Push `feature/terminplaner` → `main` (der Nutzer pusht); Compose: `TERMINE_ENABLED=pilot`,
`TERMINE_PILOT_EMAILS=kenso.gri@gmail.com`, Container neu erstellen (`docker compose up -d --no-deps
kundenbereich-server`, nie `preview-portal`).
1. L1 Portal: Push `feature/terminplaner` → `main` (der Nutzer pusht), Schalter bleibt `off`; Abhängigkeit
`feiertagejs` kommt mit dem Deploy (`deploy.sh` führt `npm install` aus).
2. L2 Schema: `termine-setup.mjs --check`, dann anlegen (im Container; das Skript kommt mit L1). Danach
Compose: `TERMINE_ENABLED=pilot`, `TERMINE_PILOT_EMAILS=kenso.gri@gmail.com`, Container neu erstellen
(`docker compose up -d --no-deps kundenbereich-server`, nie `preview-portal`).
3. L3 WOMS: Push auf `test`.
4. L4 Pilot: im WOMS beim Kunden „test“ den Terminplaner für „Test-Website“ aktivieren; im Portal (Login
des Testkunden) Vorlage wählen, Leistungen/Zeiten pflegen; Widget in `WEBklar/test-website` einbauen