Darstellung
16 – Team & Team-Boards
- Reifegrad🟢 produktiv
- Schicht`memberships`/`users`, `@work7/domain` (Team-Funktionen), `src/app/team`, `src/app/team-boards`, `src/app/api/team/*`, `src/app/api/team-boards/*`
Zweck
Verwaltung der Mitarbeiter eines Betriebs (Rollen, Einladungen, Status) und team-orientierte Sichten auf Auslastung/Termine (Team-Board).
Team-Verwaltung
- Mitarbeiter ↔ Firma über
memberships(role1/2/3,status,department_id,manager_id). - Tenant-Isolation: Admin (Rolle 1) verwaltet nur Mitarbeiter des eigenen Betriebs. Plattform-Admin kann über alle Betriebe verwalten (s. 01-auth-onboarding-rbac).
- Domain-Funktionen (
@work7/domain):listTeamMembers(Suche/Pagination),listTeamAggregates(Kennzahlen),deleteTeamMember,createTeamInvite,cancelTeamInvite,resolveTeamInviteRole(Rolle eines Einladenden begrenzt die vergebbare Rolle – Manager darf nur Mitarbeiter einladen).
| Endpoint | Funktion |
|---|---|
GET /api/team/list | Mitarbeiterliste (des eigenen Betriebs) |
GET/PUT /api/team/member | Mitglied lesen/ändern (des eigenen Betriebs) |
GET /api/team/aggregates | Team-Kennzahlen (des eigenen Betriebs) |
POST /api/team/invite · /resend · /cancel | Einladungen (siehe 01-auth-onboarding-rbac) |
Team-Boards
/team-boards– Board-Ansicht für Disposition/Auslastung.GET /api/team-boards/calendar– aggregierte Kalender-/Belegungsdaten je Mitarbeiter (Provider-Events + interneappointmentsinkl.appointment_typefür Abwesenheit/Kommen/Gehen; siehe 06-termine-kalender-plantafel).- UI (
TeamCalendarTimeline): ganztägige Abwesenheiten und Kommen/Gehen als seitliche Marker (kein doppelter Chip aus internem Termin + Provider-Spiegel). - Berechtigung:
team_boards:read/team_boards:write(Default für Rolle 1/2 write, Rolle 3 read, siehe 01-auth-onboarding-rbac).
UI
/team (Mitarbeiterverwaltung), /team-boards (Board). Komponenten: src/components/team/*, src/components/calendar/TeamCalendarTimeline.tsx.
Abgrenzung
- Team eines Mandanten (dieses Feature) ≠ Projekt-Team (
project_team, an ein einzelnes Projekt gebunden, siehe 04-projekte). - Einladungs-/Rollenmechanik ist mit 01-auth-onboarding-rbac geteilt.
Bekannte Befunde / offene Punkte
membershipsundusers.company_idhalten die Zugehörigkeit teils redundant – bei Refactoring aufmembershipsals Single Source konsolidieren.