feat: Implement member inbox with read status and question functionality
All checks were successful
Deploy tt-tagebuch / deploy (push) Successful in 53s
All checks were successful
Deploy tt-tagebuch / deploy (push) Successful in 53s
This commit is contained in:
@@ -84,6 +84,20 @@ Die Daten enthalten keine Zahlungsdaten. Bestehende Vereins- und
|
||||
Mitgliedsdaten bleiben unverändert; die neuen Tabellen werden erst durch die
|
||||
persönlichen Rückmeldungen bzw. Änderungsanfragen befüllt.
|
||||
|
||||
## 2026-07-24
|
||||
|
||||
### `club_communication_recipients.read_at`
|
||||
|
||||
Persönlicher Gelesen-Status für Nachrichten. Er wird ausschließlich für das
|
||||
jeweilige Empfänger-Mitglied erfasst; die Kommunikationsverwaltung kann daraus
|
||||
keine Kontakt- oder Zahlungsdaten ableiten.
|
||||
|
||||
```sql
|
||||
ALTER TABLE club_communication_recipients
|
||||
ADD COLUMN read_at DATETIME NULL AFTER delivered_at,
|
||||
ADD INDEX club_communication_recipients_member_read (club_id, member_id, read_at);
|
||||
```
|
||||
|
||||
## 2026-03-17
|
||||
|
||||
### `predefined_activities.exclude_from_stats`
|
||||
|
||||
46
docs/member-pilot-checklist.md
Normal file
46
docs/member-pilot-checklist.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Pilot-Checkliste: persönlicher Mitgliederbereich
|
||||
|
||||
## Ziel und Rahmen
|
||||
|
||||
Mit 3–5 echten Mitgliedern auf unterschiedlichen Geräten prüfen. Keine
|
||||
Produktivdaten, Bankdaten oder Screenshots von Nachrichten an unbeteiligte
|
||||
Personen weitergeben.
|
||||
|
||||
## Rollen- und Rechte-Smoke-Test
|
||||
|
||||
| Rolle | Erwartetes Ergebnis |
|
||||
| --- | --- |
|
||||
| Mitglied | Kann ausschließlich `/my-club` und eigene Daten, Termine, Nachrichten sowie Rückmeldungen nutzen. Kein Zugriff auf Finanzen, Archiv, Rollen, Mitgliederlisten oder fremde Nachrichten. |
|
||||
| Trainer | Sieht die erlaubten Trainings-/Terminwerkzeuge und Rückmeldungen entsprechend den Rollenrechten; kein Zugriff auf Finanz- und Rollenverwaltung ohne zusätzliche Rechte. |
|
||||
| Vorstand | Kann die Verwaltungsansichten, Profiländerungsanfragen und Kommunikationsvorgänge entsprechend seiner Rechte nutzen. |
|
||||
|
||||
Pro Rolle testen:
|
||||
|
||||
1. Login, Verein auswählen und Direktaufruf eines fremden/geschützten Pfads.
|
||||
2. Eigenes Profil, Termin-Zusage/Absage und Nachrichteneingang öffnen.
|
||||
3. Für ein Mitglied prüfen, dass die API keine fremde Nachricht oder Rückfrage
|
||||
zurückgibt (abweichende `recipientId` ausprobieren).
|
||||
|
||||
## Mobile Hauptabläufe
|
||||
|
||||
Auf mindestens einem Gerät mit 360–430 px Breite testen:
|
||||
|
||||
1. Erster Login: Onboarding verstehen und schließen.
|
||||
2. Profiländerung einreichen.
|
||||
3. Termin zu- oder absagen.
|
||||
4. Nachricht öffnen, als gelesen markieren und Rückfrage senden.
|
||||
5. Seite bei gedrosselter Verbindung neu laden: Lade-, Fehler- und
|
||||
Wiederholen-Zustände müssen verständlich sein.
|
||||
|
||||
## Feedbackbogen
|
||||
|
||||
Für jede Person erfassen:
|
||||
|
||||
- Gerät/Browser und Verbindungsart.
|
||||
- Konnte die Person Profil, Terminrückmeldung und Nachricht ohne Hilfe finden?
|
||||
- Unklare Begriffe oder fehlende Informationen.
|
||||
- Fehlermeldung, Zeitpunkt und reproduzierbarer Ablauf.
|
||||
- Freigabe für breiteren Rollout: ja / nein / mit Nachbesserung.
|
||||
|
||||
Nach dem Pilot die Ergebnisse im Vereinsvorgang dokumentieren und nur dann die
|
||||
letzte Phase-4-Checkbox im [Plan](./simple-user-plan.md) abhaken.
|
||||
@@ -44,23 +44,30 @@ Abnahme:
|
||||
|
||||
### Phase 3: Kommunikation und Informationen
|
||||
|
||||
- [ ] Persönlichen Nachrichteneingang bereitstellen.
|
||||
- [ ] Vereinsankündigungen nach Datum sortiert anzeigen.
|
||||
- [ ] Gelesen-/ungelesen-Status und einen klaren Rückfrageweg ergänzen.
|
||||
- [ ] Datenschutz- und Sichtbarkeitsregeln für Nachrichten und Kontaktinformationen prüfen.
|
||||
- [x] Persönlichen Nachrichteneingang bereitstellen.
|
||||
- [x] Vereinsankündigungen nach Datum sortiert anzeigen.
|
||||
- [x] Gelesen-/ungelesen-Status und einen klaren Rückfrageweg ergänzen.
|
||||
- [x] Datenschutz- und Sichtbarkeitsregeln für Nachrichten und Kontaktinformationen prüfen.
|
||||
|
||||
Abnahme:
|
||||
|
||||
- [ ] Neue Vereinsinformationen sind ohne Verwaltungsmenüs auffindbar.
|
||||
- [ ] Persönliche Nachrichten sind ausschließlich für den Empfänger sichtbar.
|
||||
- [x] Neue Vereinsinformationen sind ohne Verwaltungsmenüs auffindbar.
|
||||
- [x] Persönliche Nachrichten sind ausschließlich für den Empfänger sichtbar.
|
||||
|
||||
### Phase 4: Mobil, Qualität und Einführung
|
||||
|
||||
- [ ] Mobilansicht und langsame Verbindungen prüfen.
|
||||
- [ ] Berechtigungstest mit Mitglied, Trainer und Vorstand durchführen.
|
||||
- [ ] Onboarding für ersten Login, Profilprüfung und Rückmeldungen erstellen.
|
||||
- [x] Onboarding für ersten Login, Profilprüfung und Rückmeldungen erstellen.
|
||||
- [ ] Pilot mit wenigen echten Mitgliedern durchführen und Feedback auswerten.
|
||||
|
||||
Vorbereitet:
|
||||
|
||||
- Die persönliche Startseite stapelt ihre Inhalte auf kleinen Bildschirmen;
|
||||
Lade-, Fehler- und Wiederholen-Zustände sind vorhanden.
|
||||
- Eine konkrete [Pilot- und Rollen-Checkliste](./member-pilot-checklist.md)
|
||||
dokumentiert die noch mit echten Konten und Geräten auszuführenden Prüfungen.
|
||||
|
||||
Abnahme:
|
||||
|
||||
- [ ] Die Testrollen sehen jeweils nur die vorgesehenen Daten und Aktionen.
|
||||
@@ -74,10 +81,10 @@ Abnahme:
|
||||
|
||||
## Erste umsetzbare Tickets
|
||||
|
||||
1. [ ] Bestehende `member`-Berechtigungen und Navigation auditieren.
|
||||
2. [ ] Datenvertrag und Wireframe für das persönliche Dashboard festlegen.
|
||||
3. [ ] Dashboard mit Terminen und Nachrichten implementieren.
|
||||
1. [x] Bestehende `member`-Berechtigungen und Navigation auditieren.
|
||||
2. [x] Datenvertrag und Wireframe für das persönliche Dashboard festlegen.
|
||||
3. [x] Dashboard mit Terminen und Nachrichten implementieren.
|
||||
4. [x] Profil- und Kontaktdaten-Änderungsanfrage implementieren.
|
||||
5. [x] Trainings- und Veranstaltungsrückmeldungen ergänzen.
|
||||
6. [ ] Nachrichteneingang und Benachrichtigungsstatus ergänzen.
|
||||
6. [x] Nachrichteneingang und Benachrichtigungsstatus ergänzen.
|
||||
7. [ ] Rollen- und Mobile-Smoke-Test mit Pilotgruppe durchführen.
|
||||
|
||||
Reference in New Issue
Block a user