a63b0e835f
- 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>
44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
from app.models.company import Company
|
|
from app.models.department import Department
|
|
from app.models.user import User, UserRole
|
|
from app.models.session import Session
|
|
from app.models.password_reset import PasswordReset
|
|
from app.models.audit_log import AuditLog
|
|
from app.models.work_schedule import WorkSchedule
|
|
from app.models.time_entry import TimeEntry, EntryStatus, EntrySource
|
|
from app.models.absence_type import AbsenceType
|
|
from app.models.absence import Absence, AbsenceStatus
|
|
from app.models.vacation_balance import VacationBalance
|
|
from app.models.overtime_balance import OvertimeBalance
|
|
from app.models.public_holiday import PublicHoliday
|
|
from app.models.smtp_config import SmtpConfig
|
|
from app.models.caldav_config import CaldavCompanyConfig, CaldavUserConfig
|
|
from app.models.kiosk_device import KioskDevice, KioskAuthMethod
|
|
from app.models.special_assignment import SpecialAssignment, AssignmentMode
|
|
from app.models.hours_payout import HoursPayout
|
|
|
|
__all__ = [
|
|
"Company",
|
|
"Department",
|
|
"User",
|
|
"UserRole",
|
|
"Session",
|
|
"PasswordReset",
|
|
"AuditLog",
|
|
"WorkSchedule",
|
|
"TimeEntry",
|
|
"EntryStatus",
|
|
"EntrySource",
|
|
"AbsenceType",
|
|
"Absence",
|
|
"AbsenceStatus",
|
|
"VacationBalance",
|
|
"OvertimeBalance",
|
|
"PublicHoliday",
|
|
"KioskDevice",
|
|
"KioskAuthMethod",
|
|
"SpecialAssignment",
|
|
"AssignmentMode",
|
|
"HoursPayout",
|
|
]
|