feat: Stunden-Auszahlung Feature (/hr/payouts)
- Backend: Model HoursPayout, Schema, Router GET/POST/DELETE
- GET /hr/payouts: HR/Admin sehen alle, Employee/Manager nur eigene
- POST /hr/payouts: reduziert OvertimeBalance.taken_hours sofort
- DELETE /hr/payouts/{id}: storniert und bucht Stunden zurück
- AuditLog-Einträge bei Anlegen und Stornieren
- Migration 0030: hours_payouts Tabelle
- Frontend: /hr/payouts Seite (lila, 💸) mit Filter, Tabelle, Modal
- Modal zeigt verfügbares Überstundenguthaben + Warnung bei Überziehung
- Navigation: Stunden-Auszahlung (HR/COMPANY_ADMIN/SUPER_ADMIN)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1334,3 +1334,139 @@ Keine Commits in dieser Session.
|
||||
- ROADMAP.md | 139 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-05-25 01:41 – 01:42 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- e83a3fb fix: agent-08 Kiosk-Härtung + 24h-Zeiteintrag-Bug
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 01:42 – 01:43 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 19:47 – 19:47 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 19:48 – 19:49 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 22:10 – 22:14 (4m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 22:15 – 22:16 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 22:16 – 22:16 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
## 2026-05-25 22:16 – 22:16 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 78 ++++++++++++++++++++++++++
|
||||
- backend/app/models/kiosk_device.py | 2 +-
|
||||
- backend/app/models/time_entry.py | 17 ++++--
|
||||
- backend/app/schemas/company.py | 6 ++
|
||||
- backend/app/services/time_service.py | 10 ++--
|
||||
- backend/cli.py | 78 ++++++++++++++++++++++++++
|
||||
- frontend/src/pages/CompanySettingsPage.tsx | 88 +++++++++++++++++++++++++++++-
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user