Skip to content

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/*`

Gilt ab Work7 0.2.1 · Stand 15.09.2026

Zweck

Verwaltung der Mitarbeiter eines Betriebs (Rollen, Einladungen, Status) und team-orientierte Sichten auf Auslastung/Termine (Team-Board).

Team-Verwaltung

  • Mitarbeiter ↔ Firma über memberships (role 1/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).
EndpointFunktion
GET /api/team/listMitarbeiterliste (des eigenen Betriebs)
GET/PUT /api/team/memberMitglied lesen/ändern (des eigenen Betriebs)
GET /api/team/aggregatesTeam-Kennzahlen (des eigenen Betriebs)
POST /api/team/invite · /resend · /cancelEinladungen (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 + interne appointments inkl. appointment_type fü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

  • memberships und users.company_id halten die Zugehörigkeit teils redundant – bei Refactoring auf memberships als Single Source konsolidieren.

Verwandte Notes

Work7 · Software für Handwerksbetriebe · Doku-Stand Version 0.2.1 (Build fb6311f-dirty)