Zum Inhalt

Dashboard Modul

Zweck

Das Dashboard Modul bietet eine zentrale Übersichtsseite mit Live-Kennzahlen, Widgets für Zeiterfassung, Schichten und Kalender. Es bietet Echtzeit-Updates, personalisierbare Widgets und schnellen Zugriff auf alle wichtigen Funktionen.

Verantwortlichkeiten

Was gehört zum Modul

  • Dashboard-Ansicht: Zentrale Übersichtsseite
  • Widgets: Verschiedene Widgets (Zeiterfassung, Schichten, Kalender, etc.)
  • Live-Kennzahlen: Echtzeit-Updates von Statistiken
  • Schnellzugriff: Schneller Zugriff auf wichtige Funktionen
  • Personalisierung: Widgets können angepasst werden

Was gehört nicht zum Modul

  • Daten-Erstellung: Daten werden von anderen Modulen bereitgestellt
  • Detaillierte Ansichten: Siehe jeweilige Modul-Seiten

Implementierung

Backend- und Frontend-API sind modular aufgebaut; Details siehe interne Entwickler-Dokumentation.

Konfiguration

Entitlement

Das Modul ist ein Core-Modul und erfordert kein spezielles Entitlement. Es ist immer aktiv.

Entitlement-Key: Keiner (Core-Modul)

Environment Variables

Keine modulspezifischen ENV-Variablen erforderlich.

Defaults

  • Standard-Widgets: Zeiterfassung, Schichten, Kalender
  • Update-Intervall: 30 Sekunden (für Live-Updates)

Abhängigkeiten

Optionale Abhängigkeiten

  • time-tracking: Für Zeiterfassungs-Widgets
  • shift-pool: Für Schicht-Widgets
  • calendar-core: Für Kalender-Widgets
  • reports: Für Statistik-Widgets

Core-Abhängigkeiten

Keine.

API-Endpoints

Authentifizierung

Alle Endpoints erfordern Authentifizierung. Zwei Methoden werden unterstützt:

  1. Firebase ID Token (Standard für Web-App)
  2. API-Token (für externe Nutzung)

Header: Authorization: Bearer <token>

Dashboard-Statistiken abrufen

GET /api/dashboard/stats

Lädt Dashboard-Statistiken.

Response:

{
  "timeTracking": {
    "todayMinutes": 240,
    "weekHours": 35.5,
    "monthHours": 140
  },
  "shifts": {
    "upcoming": 5,
    "pendingApplications": 3
  },
  "notifications": {
    "unreadCount": 5
  }
}

Wird dokumentiert: Detaillierte API-Endpunkt-Dokumentation folgt.

Firestore Collections

Das Dashboard Modul verwendet keine eigenen Collections. Es aggregiert Daten aus anderen Modulen.

Wird dokumentiert: Detaillierte Datenbank-Struktur folgt.

Fehlerfälle

HTTP-Status-Codes

  • 200 OK: Erfolgreich
  • 401 Unauthorized: Nicht authentifiziert
  • 403 Forbidden: Keine Berechtigung
  • 500 Internal Server Error: Server-Fehler

Fehlercodes

Wird dokumentiert: Detaillierte Fehlercodes folgen.

FAQ / Troubleshooting

Wird dokumentiert: Häufige Fragen und Lösungen folgen.