Mitarbeiter — Dashboards (Sub-Route)
Zweck
Sub-Route /employees/:id/dashboards legt fest, welche Dashboards dem Mitarbeiter zugewiesen sind. Sichtbarkeit auf der Startseite und im Dashboard-Modul wird hierdurch gesteuert. Pendant: /roles/:id/dashboards und /departments/:id/dashboards — in der Praxis erbt der Mitarbeiter Dashboards meist über Rolle/Abteilung, kann aber zusaetzlich individuell zugewiesen werden.
Voraussetzungen
Berechtigungen (CASL)
| Action | Subject | Wirkung | Keycloak-Rolle |
|---|---|---|---|
view | FE_Employee, Employee | Detail aufrufbar | — |
view/create/delete | DashboardAssignment | Zuweisung pflegen | APP_SPEAMCORE_VIEW/CREATE/DELETE_DASHBOARD_ASSIGNMENT |
view | Dashboard | Dashboard-Auswahl | APP_SPEAMCORE_VIEW_DASHBOARD |
Schritt-für-Schritt-Anleitung
- Mitarbeiter (
/employees/:id) → Tab Dashboards. - + Dashboard wählt ein Dashboard aus dem Stamm.
- Mitarbeiter sieht es ab dann auf der Startseite.
Anlege-Pattern (Code-Lookup-basiert)
Beim Klick auf den + Hinzufügen-Button erscheint kein Modal mit Eingabemaske, sondern ein Auswahl-Workflow (customAddButton-Pattern):
- Modal mit Suche im Stamm der zu verknüpfenden Entität (z. B. Rolle, Fahrzeug, Kurs).
- Anwender wählt einen oder mehrere Einträge.
- Pro Auswahl wird ein Assignment-Datensatz erzeugt, der die N:M-Verknüpfung Mitarbeiter ↔ Stamm hält — nicht der Stamm selbst.
- Klick auf eine Zeile führt zum Detail des Assignment (Pflege z. B. von Gültigkeitszeitraum, prozentuale Aufteilung).
Wiederverwendbare Konzepte
Verknuepfungen zu anderen Modulen
- Mitarbeiter — Eltern-Modul.
- Dashboards — Stamm.
- Rollen und Abteilungen — alternative Zuweisungs-Quellen.
API/Schnittstellen
| Methode | Endpoint | Zweck | CASL |
|---|---|---|---|
GET | /api/dashboard-assignments?filter[employeeId] | Liste | view DashboardAssignment |
POST | /api/dashboard-assignments | Zuweisen | create DashboardAssignment |
DELETE | /api/dashboard-assignments/:id | Aufheben | delete DashboardAssignment |
Versionshinweise
- 2026-04-30: Initiale Veroeffentlichung.