mirror of
https://github.com/complexcaresolutions/dak.c2s.git
synced 2026-03-17 20:43:41 +00:00
feat: add admin-only guide sections to Anleitung page
Add 8 admin-specific accordion sections (CSV import, ICD import, Coding queue, Disclosure management, Users, Invitations, Audit log, Report generation) conditionally rendered via useAuth().isAdmin. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
61f95483d6
commit
1e3f705ed3
1 changed files with 306 additions and 0 deletions
|
|
@ -6,6 +6,7 @@ import {
|
||||||
} from '@/components/ui/accordion'
|
} from '@/components/ui/accordion'
|
||||||
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'
|
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'
|
||||||
import { Badge } from '@/components/ui/badge'
|
import { Badge } from '@/components/ui/badge'
|
||||||
|
import { useAuth } from '@/context/AuthContext'
|
||||||
import {
|
import {
|
||||||
LayoutDashboard,
|
LayoutDashboard,
|
||||||
Search,
|
Search,
|
||||||
|
|
@ -15,6 +16,11 @@ import {
|
||||||
FileBarChart,
|
FileBarChart,
|
||||||
FileOutput,
|
FileOutput,
|
||||||
UserCog,
|
UserCog,
|
||||||
|
Upload,
|
||||||
|
ClipboardCheck,
|
||||||
|
Users,
|
||||||
|
Mail,
|
||||||
|
History,
|
||||||
} from 'lucide-react'
|
} from 'lucide-react'
|
||||||
|
|
||||||
function Term({ children }: { children: React.ReactNode }) {
|
function Term({ children }: { children: React.ReactNode }) {
|
||||||
|
|
@ -26,6 +32,8 @@ function StepList({ children }: { children: React.ReactNode }) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function AnleitungPage() {
|
export function AnleitungPage() {
|
||||||
|
const { isAdmin } = useAuth()
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="p-6 space-y-6 max-w-4xl">
|
<div className="p-6 space-y-6 max-w-4xl">
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -341,6 +349,304 @@ export function AnleitungPage() {
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
|
|
||||||
|
{/* Admin sections */}
|
||||||
|
{isAdmin && (
|
||||||
|
<Card>
|
||||||
|
<CardHeader className="pb-2">
|
||||||
|
<CardTitle className="text-lg">Administration</CardTitle>
|
||||||
|
<p className="text-sm text-muted-foreground">
|
||||||
|
Diese Funktionen sind nur für Administratoren sichtbar.
|
||||||
|
</p>
|
||||||
|
</CardHeader>
|
||||||
|
<CardContent>
|
||||||
|
<Accordion type="multiple" className="w-full">
|
||||||
|
{/* A1. CSV-Import */}
|
||||||
|
<AccordionItem value="admin-import-csv">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<Upload className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Fälle importieren (CSV)
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Über die Seite <strong>Import</strong> können Sie Falldaten aus CRM-Exporten (Salesforce)
|
||||||
|
ins Portal laden. Der Import erfolgt als CSV-Datei mit Vorschau und Duplikaterkennung.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">CSV-Datei vorbereiten</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Format:</strong> <Term>.csv</Term> (UTF-8-BOM), Trennzeichen wird automatisch erkannt (Komma, Semikolon oder Tab).</li>
|
||||||
|
<li><strong>Hauptkontakt</strong> — Pipe-getrennt: <Term>Nachname | Vorname | Geburtsdatum | KVNR</Term>. Geburtsdatum im Format TT.MM.JJJJ.</li>
|
||||||
|
<li><strong>Erstellungsdatum</strong> — Format TT.MM.JJ HH:MM (falls leer: heutiges Datum).</li>
|
||||||
|
<li><strong>Modul</strong> — Wird automatisch zur Fallgruppe zugeordnet (onko, kardio, intensiv, galle, sd).</li>
|
||||||
|
<li><strong>Name</strong> — CRM-Ticket-ID (optional).</li>
|
||||||
|
</ul>
|
||||||
|
<h4 className="font-semibold">Import durchführen</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Öffnen Sie <strong>Import</strong> in der Sidebar und wählen Sie den Tab <strong>CSV-Import</strong>.</li>
|
||||||
|
<li>Ziehen Sie die CSV-Datei in den Upload-Bereich oder klicken Sie auf <strong>Datei auswählen</strong>.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Vorschau laden</strong>. Das System zeigt: Gesamtzeilen, neue Fälle, Duplikate und eventuelle Fehler.</li>
|
||||||
|
<li>Prüfen Sie die Vorschau-Tabelle. Duplikate werden automatisch übersprungen.</li>
|
||||||
|
<li>Klicken Sie auf <strong>X Fälle importieren</strong> um den Import zu bestätigen.</li>
|
||||||
|
<li>Nach Abschluss sehen Sie eine Zusammenfassung: importiert, übersprungen, aktualisiert.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Duplikaterkennung</h4>
|
||||||
|
<p>
|
||||||
|
Duplikate werden anhand von Nachname + Vorname + Datum + Fallgruppe erkannt.
|
||||||
|
Erkannte Duplikate werden in der Vorschau als <Badge variant="outline">Duplikat</Badge> markiert
|
||||||
|
und beim Import übersprungen.
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A2. ICD-Import */}
|
||||||
|
<AccordionItem value="admin-import-icd">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<Upload className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
ICD-Codes importieren (Excel)
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Neben der manuellen ICD-Eingabe können Sie ICD-Codes auch per Excel-Datei
|
||||||
|
in großer Menge aktualisieren.
|
||||||
|
</p>
|
||||||
|
<StepList>
|
||||||
|
<li>Öffnen Sie <strong>Import</strong> und wählen Sie den Tab <strong>ICD-Import</strong>.</li>
|
||||||
|
<li>Laden Sie eine <Term>.xlsx</Term> oder <Term>.xls</Term> Datei hoch.</li>
|
||||||
|
<li>Das System liest den ICD-Code aus der <strong>letzten Spalte</strong> — kompatibel mit altem (7-spaltig) und neuem (5-spaltig) Template.</li>
|
||||||
|
<li>Klicken Sie auf <strong>ICD-Codes importieren</strong>. Die Zuordnung erfolgt automatisch.</li>
|
||||||
|
<li>Sie erhalten eine Zusammenfassung mit Anzahl aktualisierter Fälle und eventuellen Fehlern.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Import-Verlauf</h4>
|
||||||
|
<p>
|
||||||
|
Im Tab <strong>Import-Verlauf</strong> sehen Sie eine chronologische Liste aller vergangenen
|
||||||
|
Importe mit Dateiname, Typ, Anzahl importierter/übersprungener Zeilen und Fehlern.
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A3. Coding */}
|
||||||
|
<AccordionItem value="admin-coding">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<ClipboardCheck className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Coding-Warteschlange
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Auf der Seite <strong>Coding</strong> werden Fälle mit vorhandenem Gutachten klassifiziert.
|
||||||
|
Die Warteschlange zeigt alle Fälle, die noch codiert werden müssen.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Felder pro Fall</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Gutachten-Typ</strong> — <Term>Bestätigung</Term> (Erstmeinung bestätigt) oder <Term>Alternative</Term> (abweichende Empfehlung).</li>
|
||||||
|
<li><strong>Therapieänderung</strong> — <Term>Ja</Term> oder <Term>Nein</Term>: Hat sich die Therapie aufgrund des Gutachtens geändert?</li>
|
||||||
|
<li><strong>Diagnosekorrektur</strong> — Checkbox: Die Diagnose wurde korrigiert.</li>
|
||||||
|
<li><strong>Unterversorgung</strong> — Checkbox: Es lag eine medizinische Unterversorgung vor.</li>
|
||||||
|
<li><strong>Übertherapie</strong> — Checkbox: Es wurde eine Übertherapie festgestellt.</li>
|
||||||
|
</ul>
|
||||||
|
<h4 className="font-semibold">Fälle codieren</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Filtern Sie optional nach <strong>Jahr</strong> und/oder <strong>Fallgruppe</strong>.</li>
|
||||||
|
<li>Jeder Fall wird als Karte angezeigt mit Fall-ID, Name, Fallgruppe und ICD-Code.</li>
|
||||||
|
<li>Wählen Sie <strong>Gutachten-Typ</strong> und <strong>Therapieänderung</strong> aus den Dropdowns.</li>
|
||||||
|
<li>Setzen Sie bei Bedarf die Checkboxen für Diagnosekorrektur, Unterversorgung oder Übertherapie.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Speichern</strong>. Die Karte wird grün markiert.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Fortschritt</h4>
|
||||||
|
<p>
|
||||||
|
Der Fortschrittsbalken und das Badge oben zeigen, wie viele Fälle auf der aktuellen
|
||||||
|
Seite bereits codiert wurden. Pro Seite werden 50 Fälle angezeigt.
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A4. Freigabe-Anfragen */}
|
||||||
|
<AccordionItem value="admin-disclosures">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<ShieldCheck className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Freigabe-Anfragen verwalten
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Wenn DAK-Mitarbeiter Zugriff auf Personendaten benötigen, stellen sie eine Freigabe-Anfrage.
|
||||||
|
Auf der Seite <strong>Freigabe-Anfragen</strong> prüfen und entscheiden Sie über diese Anfragen.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Tabs zur Filterung</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Alle</strong> — Sämtliche Anfragen unabhängig vom Status.</li>
|
||||||
|
<li><strong>Ausstehend</strong> — Offene Anfragen, die Ihre Entscheidung erfordern.</li>
|
||||||
|
<li><strong>Genehmigt</strong> — Aktive Freigaben (24h gültig).</li>
|
||||||
|
<li><strong>Abgelehnt</strong> — Abgelehnte Anfragen.</li>
|
||||||
|
</ul>
|
||||||
|
<h4 className="font-semibold">Anfrage bearbeiten</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Wechseln Sie zum Tab <strong>Ausstehend</strong>.</li>
|
||||||
|
<li>Prüfen Sie <strong>Antragsteller</strong>, <strong>Fall-ID</strong> und <strong>Begründung</strong>.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Genehmigen</strong> (24h Zugriff) oder <strong>Ablehnen</strong>.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Weitere Aktionen</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Entziehen</strong> — Eine aktive Freigabe sofort widerrufen.</li>
|
||||||
|
<li><strong>Wieder aufleben</strong> — Eine abgelaufene oder abgelehnte Freigabe erneut für 24h aktivieren.</li>
|
||||||
|
<li><strong>Verwerfen</strong> — Abgelehnte oder abgelaufene Einträge aus der Liste entfernen.</li>
|
||||||
|
</ul>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A5. Benutzer */}
|
||||||
|
<AccordionItem value="admin-users">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<Users className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Benutzer verwalten
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Auf der Seite <strong>Benutzer</strong> können Sie Konten erstellen,
|
||||||
|
Rollen zuweisen und Benutzer deaktivieren.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Rollen</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><Badge variant="outline">Admin</Badge> — Vollzugriff auf alle Funktionen inkl. Import, Coding, Benutzerverwaltung.</li>
|
||||||
|
<li><Badge variant="outline">DAK Mitarbeiter</Badge> — Kann Fälle einsehen, ICD-Codes eingeben und Freigaben beantragen.</li>
|
||||||
|
</ul>
|
||||||
|
<h4 className="font-semibold">Neuen Benutzer erstellen</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Klicken Sie auf <strong>Neuen Benutzer erstellen</strong>.</li>
|
||||||
|
<li>Geben Sie <strong>Benutzername</strong>, <strong>E-Mail</strong> und <strong>Passwort</strong> ein.</li>
|
||||||
|
<li>Wählen Sie die <strong>Rolle</strong> (DAK Mitarbeiter oder Admin).</li>
|
||||||
|
<li>Klicken Sie auf <strong>Erstellen</strong>. Der neue Benutzer kann sich sofort anmelden.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Benutzer bearbeiten</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Klicken Sie auf das <strong>Stift-Symbol</strong> in der Benutzerzeile.</li>
|
||||||
|
<li>Ändern Sie Benutzername, E-Mail, Rolle oder Aktivstatus.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Speichern</strong>. Änderungen wirken sofort.</li>
|
||||||
|
</StepList>
|
||||||
|
<p>
|
||||||
|
<strong>Hinweis:</strong> Deaktivierte Benutzer können sich nicht mehr anmelden,
|
||||||
|
ihr Konto bleibt aber erhalten.
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A6. Einladungen */}
|
||||||
|
<AccordionItem value="admin-invitations">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<Mail className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Einladungen erstellen
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Alternativ zur direkten Benutzererstellung können Sie <strong>Einladungs-Tokens</strong> generieren.
|
||||||
|
Der eingeladene Benutzer registriert sich damit selbstständig.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Einladung erstellen</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Klicken Sie auf <strong>Einladung erstellen</strong>.</li>
|
||||||
|
<li>Optional: Geben Sie die <strong>E-Mail</strong> des Empfängers ein (nur zur Dokumentation, kein automatischer Versand).</li>
|
||||||
|
<li>Wählen Sie die <strong>Rolle</strong> (Standard: DAK Mitarbeiter).</li>
|
||||||
|
<li>Legen Sie die <strong>Gültigkeit</strong> fest (1–90 Tage, Standard: 7).</li>
|
||||||
|
<li>Klicken Sie auf <strong>Erstellen</strong>.</li>
|
||||||
|
<li>Kopieren Sie den angezeigten <strong>Token</strong> und teilen Sie ihn dem Empfänger mit.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Token-Status</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><Badge className="bg-green-100 text-green-800 hover:bg-green-100">Aktiv</Badge> — Token ist gültig und wurde noch nicht verwendet.</li>
|
||||||
|
<li><Badge className="bg-orange-100 text-orange-800 hover:bg-orange-100">Abgelaufen</Badge> — Gültigkeitszeitraum überschritten.</li>
|
||||||
|
<li><Badge className="bg-gray-100 text-gray-800 hover:bg-gray-100">Verwendet</Badge> — Der Benutzer hat sich erfolgreich registriert.</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<strong>Hinweis:</strong> Jeder Token kann nur einmal verwendet werden.
|
||||||
|
In der Tabelle können Sie den Token jederzeit über das Kopier-Symbol erneut kopieren.
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A7. Audit-Log */}
|
||||||
|
<AccordionItem value="admin-audit">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<History className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Audit-Log einsehen
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Das <strong>Audit-Log</strong> protokolliert alle Systemaktionen — Logins,
|
||||||
|
Datenänderungen, Importe und Admin-Aktionen — für Compliance und Nachvollziehbarkeit.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Filtern</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Benutzer-ID</strong> — Aktionen eines bestimmten Benutzers anzeigen.</li>
|
||||||
|
<li><strong>Aktion</strong> — Nach Aktionstyp suchen (z.B. „login", „update_case", „csv_imported").</li>
|
||||||
|
<li><strong>Datum von / bis</strong> — Zeitraum eingrenzen.</li>
|
||||||
|
</ul>
|
||||||
|
<h4 className="font-semibold">Details anzeigen</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Öffnen Sie <strong>Audit-Log</strong> unter Administration in der Sidebar.</li>
|
||||||
|
<li>Nutzen Sie optional die Filter und klicken Sie auf <strong>Filtern</strong>.</li>
|
||||||
|
<li>Klicken Sie auf eine Zeile mit dem Pfeil-Symbol, um <strong>alte und neue Werte</strong> als JSON einzusehen.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Zurücksetzen</strong>, um alle Filter zu entfernen.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Protokollierte Informationen</h4>
|
||||||
|
<ul className="list-disc list-inside space-y-1">
|
||||||
|
<li><strong>Zeitpunkt</strong> — Sekundengenauer Zeitstempel.</li>
|
||||||
|
<li><strong>Benutzer-ID</strong> — Wer die Aktion ausgeführt hat.</li>
|
||||||
|
<li><strong>Aktion</strong> — Art der Aktion (Login, Fallaktualisierung, Import etc.).</li>
|
||||||
|
<li><strong>Entität</strong> — Betroffenes Objekt (z.B. „case #123").</li>
|
||||||
|
<li><strong>IP-Adresse</strong> — Von wo aus die Aktion erfolgte.</li>
|
||||||
|
</ul>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
|
||||||
|
{/* A8. Berichte generieren */}
|
||||||
|
<AccordionItem value="admin-reports">
|
||||||
|
<AccordionTrigger className="text-left">
|
||||||
|
<span className="flex items-center gap-2">
|
||||||
|
<FileBarChart className="h-4 w-4 text-primary shrink-0" />
|
||||||
|
Berichte und Wochenübersichten generieren
|
||||||
|
</span>
|
||||||
|
</AccordionTrigger>
|
||||||
|
<AccordionContent className="space-y-3 text-sm leading-relaxed">
|
||||||
|
<p>
|
||||||
|
Als Administrator können Sie neue Berichte und Wochenübersichten generieren,
|
||||||
|
die dann allen Benutzern zum Download bereitstehen.
|
||||||
|
</p>
|
||||||
|
<h4 className="font-semibold">Bericht generieren</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Öffnen Sie <strong>Berichte</strong> in der Sidebar.</li>
|
||||||
|
<li>Geben Sie <strong>Jahr</strong> und <strong>Kalenderwoche</strong> ein.</li>
|
||||||
|
<li>Wählen Sie den <strong>Typ</strong>: Gesamt, Onko-Intensiv oder Galle-Schild.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Bericht generieren</strong>. Der neue Bericht erscheint in der Tabelle.</li>
|
||||||
|
</StepList>
|
||||||
|
<h4 className="font-semibold">Wochenübersicht generieren</h4>
|
||||||
|
<StepList>
|
||||||
|
<li>Öffnen Sie <strong>Wochenübersicht</strong> in der Sidebar.</li>
|
||||||
|
<li>Geben Sie <strong>Jahr</strong>, <strong>KW von</strong> und <strong>KW bis</strong> ein.</li>
|
||||||
|
<li>Wählen Sie den <strong>Exporttyp</strong>: Onko-Intensiv oder Galle-Schild.</li>
|
||||||
|
<li>Klicken Sie auf <strong>Generieren</strong>.</li>
|
||||||
|
</StepList>
|
||||||
|
<p>
|
||||||
|
<strong>Hinweis:</strong> Generierte Berichte und Wochenübersichten können von Ihnen
|
||||||
|
auch wieder gelöscht werden (Papierkorb-Symbol bzw. Checkbox-Auswahl).
|
||||||
|
</p>
|
||||||
|
</AccordionContent>
|
||||||
|
</AccordionItem>
|
||||||
|
</Accordion>
|
||||||
|
</CardContent>
|
||||||
|
</Card>
|
||||||
|
)}
|
||||||
|
|
||||||
{/* Glossary */}
|
{/* Glossary */}
|
||||||
<Card>
|
<Card>
|
||||||
<CardHeader className="pb-2">
|
<CardHeader className="pb-2">
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue