Zum Inhalt

Freelancer Dashboard Modul

Zweck

Das Freelancer Dashboard Modul bietet ein persönliches Dashboard für Freelancer mit Übersicht über Bewerbungsstatus, angenommene Schichten, Statistiken (beworbene/angenommene Schichten), kommende Termine und Einnahmen-Übersicht.

Verantwortlichkeiten

Was gehört zum Modul

  • Dashboard-Ansicht: Persönliches Dashboard für Freelancer
  • Bewerbungsstatus: Übersicht über Bewerbungsstatus
  • Angenommene Schichten: Übersicht über angenommene Schichten
  • Statistiken: Statistiken (beworbene/angenommene Schichten)
  • Kommende Termine: Übersicht über kommende Schichten
  • Einnahmen-Übersicht: Einnahmen-Statistiken

Was gehört nicht zum Modul

Implementierung

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

Konfiguration

Entitlement

Das Modul ist ein Core-Modul für Freelancer und erfordert kein spezielles Entitlement. Es ist immer aktiv für Freelancer-Accounts.

Entitlement-Key: Keiner (Core-Modul für Freelancer)

Environment Variables

Keine modulspezifischen ENV-Variablen erforderlich.

Defaults

  • Zugriff: Nur für Freelancer-Accounts

Abhängigkeiten

Optionale Abhängigkeiten

  • shift-pool: Für Schicht-Statistiken

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/freelancer/dashboard/stats

Lädt Dashboard-Statistiken für Freelancer.

Response:

{
  "applications": {
    "pending": 3,
    "accepted": 10,
    "rejected": 2
  },
  "shifts": {
    "upcoming": 5,
    "completed": 20
  },
  "earnings": {
    "thisMonth": 2500.00,
    "total": 15000.00
  }
}

Wird dokumentiert: Detaillierte API-Endpunkt-Dokumentation folgt.

Firestore Collections

Das Freelancer 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 (nur Freelancer)
  • 500 Internal Server Error: Server-Fehler

Fehlercodes

Wird dokumentiert: Detaillierte Fehlercodes folgen.

FAQ / Troubleshooting

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