feat: Sondervertretungen als eigene HR-Seite (/hr/special-assignments)

- Neue Seite SpecialAssignmentsPage mit Filter, Tabelle, Add/Edit-Modal
- Farbcodierung: Faktor >1.0 amber, <1.0 blau, =1.0 grau
- Monat-Filterung client-seitig, paralleles Laden in Batches
- Layout.tsx: Nav-Eintrag in Hauptnavigation
- App.tsx: Route /hr/special-assignments
- UsersPage: Sondervertretungs-Block aus Edit-Modal entfernt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-25 01:13:03 +02:00
parent 0dd736c220
commit 5049747696
5 changed files with 499 additions and 108 deletions
+14
View File
@@ -1242,3 +1242,17 @@ Keine Commits in dieser Session.
- backend/app/services/absence_service.py | 5 ++++-
---
## 2026-05-25 00:45 01:00 (14m)
**Beschreibung:** Claude Code Session
**Projekt:** timemaster
### Commits
- 0dd736c fix: require_role in special_assignments router ohne extra Depends() wrapping
- 767ff9f fix: migration 0029 enum DO-Block statt CREATE TYPE IF NOT EXISTS
- 82ce592 fix: migration 0029 idempotent (IF NOT EXISTS für Enum + Tabelle)
- d60349d feat: Sondervertretungs-Faktoren (special_assignments)
### Geänderte Dateien
- backend/app/routers/special_assignments.py | 10 +++++-----
---