mirror of
https://github.com/complexcaresolutions/dak.c2s.git
synced 2026-03-17 18:23:42 +00:00
- Backend: GET /reports/{id}/data endpoint returns stored report JSON
- Frontend: ReportViewer component renders all 5 Excel sheets as tabs
(KW gesamt, Fachgebiete, Gutachten, Therapieänderungen, ICD onko)
- ReportsPage: clickable rows with inline expansion to view reports
- Empty KW rows filtered, summary row at bottom, German labels
- Download button still available alongside inline view
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.9 KiB
1.9 KiB
Berichts-Webansicht (Inline-Expansion)
Kontext
Berichte werden aktuell als Excel-Dateien generiert und können nur heruntergeladen werden. Ziel: Berichte direkt auf der Webseite anzeigen, ohne Excel öffnen zu müssen.
Entscheidungen
- Inline-Expansion: Klick auf eine Tabellenzeile klappt den Bericht darunter auf
- 5 Tabs: Alle 5 Excel-Sheets als separate Tabs (KW gesamt, Fachgebiete, Gutachten, Therapieänderungen, ICD onko)
- Backend-Endpoint:
GET /reports/{id}/dataliefert gespeichertesreport_data-JSON - Leere KWs ausblenden: Nur Zeilen mit Daten anzeigen
Architektur
Backend
Neuer Endpoint in backend/app/api/reports.py:
GET /reports/{id}/data → WeeklyReport.report_data (JSON)
Authentifiziert (get_current_user), gibt das gespeicherte JSON zurück. Kein Neuberechnen.
Frontend
| Datei | Änderung |
|---|---|
hooks/useReports.ts |
Neuer Hook useReportData(id) |
pages/ReportsPage.tsx |
Zeile klickbar, Inline-Expansion mit expandiertem Report |
components/ReportViewer.tsx (NEU) |
5-Tab-Viewer-Komponente |
Sheet-Darstellung
| Tab | Spalten |
|---|---|
| KW gesamt | KW, Erstberatungen, Unterlagen, Ablehnungen, Keine RM, Gutachten |
| Fachgebiete | KW, pro Fallgruppe: Anzahl, Gutachten, Keine RM |
| Gutachten | KW, Gesamt + pro Fallgruppe: Gutachten, Alternative, Bestätigung |
| Therapieänderungen | KW, Gutachten, TA Ja, TA Nein, Diagnosekorrektur, Unterversorgung, Übertherapie |
| ICD onko | ICD-Code, Anzahl (sortiert nach Häufigkeit) |
Jede Tabelle: Summenzeile am Ende, leere KWs ausgeblendet.
Datenfluss
- User klickt auf Tabellenzeile →
expandedIdState wird gesetzt useReportData(expandedId)fetchtGET /reports/{id}/dataReportViewerrendert die 5 Tabs mit den Tabellendaten- Erneuter Klick auf die Zeile →
expandedId = null→ Expansion wird geschlossen