dak.c2s/docs/todo.md
CCS Admin f3846813a4 feat: add saved filter presets for case list
Users can save frequently used filter combinations (year, fallgruppe,
ICD status, search) as named presets. Stored server-side in new
filter_presets table (max 10 per user). Star-icon Popover on CasesPage
to load, save, or delete presets. TanStack Query hooks for CRUD.

New files: FilterPreset model, migration 009, API router, schemas,
useFilterPresets hook.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 15:13:20 +00:00

20 lines
2.1 KiB
Markdown

# DAK Portal — Feature Roadmap
## Hohe Priorität
- [x] **Gutachten-Statistik Seite** — ✅ Implementiert: 4 KPIs, Stacked-Bar (Typ pro KW), Donut (Typ-Verteilung), Grouped-Bar (Therapieänderungen pro KW), Horizontal-Bars (Gründe). Backend-Endpoint + Frontend komplett.
- [x] **Fallliste als Excel exportieren** — ✅ Implementiert: Download-Button auf der Cases-Seite. Backend `GET /cases/export` generiert XLSX mit openpyxl. Rollenbasierte Spalten (Admin sieht Namen, DAK-Mitarbeiter nicht). Alle aktiven Filter werden berücksichtigt.
- [x] **E-Mail-Benachrichtigungen bei Freigabe-Entscheidung** — ✅ Implementiert: disclosure_service nutzt nun notification_service für In-App + E-Mail. Admins erhalten E-Mail bei neuer Anfrage, Mitarbeiter bei Genehmigung/Ablehnung.
## Mittlere Priorität
- [x] **Benachrichtigungs-Center (Bell-Icon)** — ✅ Bereits implementiert: Bell-Icon im Header mit Badge-Counter, Popover-Dropdown, Mark-as-read, 60s-Polling. War schon in Header.tsx vorhanden.
- [x] **Dashboard: Vorjahresvergleich bei KPIs** — ✅ Implementiert: prev_kpis im Dashboard-Endpoint, KpiCards zeigen farbige Trend-Indikatoren (+X% grün, -X% rot) mit Vorjahresvergleich.
- [x] **Batch-ICD-Eingabe** — ✅ Implementiert: Switch-Toggle für Batch-Modus auf ICD-Seite. Inline-Eingabefelder mit Enter/Tab/Escape-Bedienung, visuelles Feedback (Spinner, Häkchen, Fehler-Tooltip).
- [x] **Dark Mode Toggle** — ✅ Bereits implementiert: Sun/Moon-Toggle im Header, useTheme Hook aktiv.
## Niedrige Priorität
- [x] **Erweiterte Suche mit Filterspeicherung** — ✅ Implementiert: Filter-Presets pro User in DB gespeichert (max 10). Popover-Dropdown mit Stern-Icon auf CasesPage. Klick lädt Filter, X löscht Preset, "+" speichert aktuellen Filter.
- [ ] **Dashboard: Durchlaufzeiten** — Durchschnittliche Dauer von Fallerfassung bis Gutachten visualisieren.
- [x] **Passwort-Reset per E-Mail** — ✅ Implementiert: "Passwort vergessen?" auf Login-Seite, Reset-Link per E-Mail (1h gültig), ResetPasswordPage mit Passwort-Formular. Rate-Limiting (3/h), Audit-Log, Token als SHA-256 Hash gespeichert.