Skip to content

Berichte und Exporte

Matthias Schabhüttl edited this page Jun 12, 2026 · 1 revision

Berichte und Exporte

Die API liefert Statistiken und Berichte in mehreren Formaten — ad hoc per Request oder zeitgesteuert per E-Mail. Alle Soll-/Ist-/Bedarfszahlen stammen aus der Berechnungsfassade der Bibliothek (libopenschichtplaner5); die API rechnet nicht selbst.

Anwendersicht (Berichte-UI der Hauptanwendung): App-Wiki → Berichte.


1. Statistik- und Analyse-Endpoints

Endpoint Inhalt
GET /api/statistics Soll/Ist/Überstunden je Mitarbeiter — für Monat (year/month) oder freien Auswertungszeitraum (from/to)
GET /api/personnel-table Personaltabelle über einen freien Zeitraum: Standardspalten (Ist-/Soll-Stunden, Saldo, bezahlte Abwesenheit, Sonn-/Feiertags-Diensttage, Sonderdienste) plus dynamische Spalten je Schichtart und Abwesenheitsart; deckt der Zeitraum genau ein Kalenderjahr ab, zusätzlich genommen/Rest je anspruchsverbundener Urlaubsart
GET /api/statistics/year-summary · /employee/{id} · /sickness · /shifts Jahresübersicht, Einzelstatistik, Krankenstand, Schicht-Trend
GET /api/zeitkonto · /detail · /summary Zeitkonto: Saldo, Verlauf, Teamsummen
GET /api/burnout-radar · /warnings · /fairness · /quality-report · /availability-matrix Belastungsanalyse, Plan-Anomalien, Fairness-Verteilung, Planqualität, Verfügbarkeitsmatrix
GET /api/capacity-forecast · /api/capacity-year Kapazitätsprognose (Monat/Jahr)
POST /api/simulation Was-wäre-wenn-Simulation
GET /api/reports/conflicts Konfliktreport (Überlappungen, Doppelbuchungen, Unterbesetzung)

2. Export-Formate

Endpoint Formate
GET /api/export/schedule csv / html / xlsx (XLSX mit farbigen Zellen)
GET /api/export/statistics csv / html / xlsx
GET /api/export/employees csv
GET /api/export/absences csv
GET /api/reports/monthly csv / pdf (echtes PDF, A4 quer, mit Summenzeile)
GET /api/reports/conflicts/export csv / xlsx
GET /api/schedule/pdf druckfertige HTML-Ansicht (A4 quer) — PDF entsteht über die Druckfunktion des Browsers
GET /api/backup/download · /api/backup/sqlite ZIP der Datenbankdateien bzw. SQLite-Export (Admin)

Das Format wird per ?format=-Query-Parameter gewählt (Details und alle Parameter: Swagger UI unter /api/v1/docs).

Importe: Als Gegenstück gibt es neun CSV-Importe unter POST /api/import/* (Mitarbeiter, Schichten, Abwesenheiten, Feiertage, Ist-/Soll-Buchungen, Urlaubsansprüche, Gruppen; max. 10 MB pro Datei, nur Admin) — siehe Endpunkt-Referenz.


3. Scheduled Reports (zeitgesteuerte Berichte)

Scheduled Reports erzeugen Berichte automatisch und versenden sie per E-Mail (SMTP-Konfiguration vorausgesetzt, siehe Konfiguration).

Eigenschaften

Einstellung Werte
report_type schedule_overview (Dienstplan-Übersicht), overtime (Überstunden), absences (Abwesenheiten)
frequency daily, weekly, monthly
format xlsx (Default) oder csv
Empfänger E-Mail-Adressliste je Report

Routen

Methode Pfad Rolle
GET/POST /api/scheduled-reports PL (anlegen/auflisten)
GET/PUT/DELETE /api/scheduled-reports/{id} PL / A
POST /api/scheduled-reports/{id}/run PL (sofort ausführen)
GET /api/scheduled-reports/scheduler/status PL (Scheduler-Status, nächste Läufe)

Ein Hintergrund-Scheduler prüft alle 5 Minuten, ob Berichte fällig sind, generiert sie und versendet sie an die hinterlegten Empfänger. Er startet automatisch mit der API (siehe Installation-und-Betrieb).

Anwendersicht: App-Wiki → Scheduled Reports.


4. Export-Scheduler (wöchentlicher Excel/CSV-Versand)

Unabhängig von den Scheduled Reports lassen sich unter /api/export-scheduler/schedules wöchentliche Dienstplan-Exporte (xlsx/csv, Wochentag + Uhrzeit, Empfängerliste) konfigurieren.

⚠️ Hinweis (Stand 1.2.0): Für die Export-Schedules existiert derzeit kein automatischer Hintergrund-Lauf — ausgeführt werden sie über den manuellen Trigger POST /api/export-scheduler/schedules/{id}/run. Für zeitgesteuerten Versand sind die Scheduled Reports (Abschnitt 3) die richtige Wahl.


5. iCal-Feeds

Dienstpläne lassen sich als Kalender abonnieren:

  • GET /api/ical/my-schedule.ics — eigener Monatsplan als Download,
  • POST /api/ical/token — persönlichen Feed-Token erzeugen (liefert auch die webcal://-URL),
  • GET /api/ical/feed/{token}.ics — abonnierbarer Feed mit rollierendem Fenster (−1 bis +3 Monate), Token-in-URL für Kalender-Apps.

Anwendersicht: App-Wiki → iCal-Export.


Siehe auch

openschichtplaner5-api v1.2.0

Home — Startseite


🚀 Einstieg

📖 Referenz

📊 Funktionen

🛠️ Entwicklung


🔗 Links

Clone this wiki locally