Time Account Schema
Felder
Time Account Schema
Stundenkonto pro Mitarbeiter und Kontotyp (ADR 0036b)
userId
Kontoinhaber (users._id)
accountType
FLEX = Gleitzeit-Saldo; OVERTIME = genehmigte Überstunden; ANNUAL = Jahresarbeitszeit; LONG_TERM = Langzeit/Sabbatical
FLEXOVERTIMEANNUALLONG_TERMstatus
ACTIVE = Buchungen erlaubt; FROZEN = keine neuen Buchungen, aber sichtbar; CLOSED = endgültig geschlossen (z.B. nach Offboarding)
ACTIVEFROZENCLOSEDcurrentBalanceMinutes
Laufender Saldo in Minuten. Positiv = Guthaben, negativ = Schuld. Vom Service verwaltet, nicht direkt per Schema-Validierung änderbar (in entity-config.protectedFields).
lastClosingDate
Datum des letzten erfolgreichen monthly_closing
periodStart
Beginn der aktuellen Abrechnungsperiode
periodEnd
Ende der aktuellen Abrechnungsperiode; 9999-12-31 bei LONG_TERM
limits
Kappungsgrenzen. Initial aus working_time_model.overtimeRules abgeleitet, pro Konto überschreibbar.
maxBalanceMinutes
Obergrenze; Überschreitung → Kappung oder Überlauf auf OVERTIME
minBalanceMinutes
Untergrenze (negativ erlaubt, null = unbegrenzt). Unterschreitung → Flag MIN_BALANCE_VIOLATED
carryOverMaxMinutes
Max. Übertrag in die nächste Periode
carryOverDeadlineMonths
Verfallsfrist für Übertrag in Monaten
workingTimeModelId
Optional: Modell zum Zeitpunkt der Konto-Erstellung. Für Audit-Zwecke. Die effektive Regel-Auflösung läuft zur Runtime über den Resolver, nicht dieses Feld.
openedAt
Zeitpunkt der Konto-Eröffnung
openedBy
userId der Person, die das Konto eröffnet hat; "system-auto" bei Auto-Create
closedAt
closedBy
notes
Keine Felder passen zum Filter.
Standard-Endpoints
Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:
GET /api/v1/time_accounts— Liste, paginiert + filterbarGET /api/v1/time_accounts/<id>— Einzelne EntityPOST /api/v1/time_accounts— AnlegenPATCH /api/v1/time_accounts/<id>— Teil-UpdateDELETE /api/v1/time_accounts/<id>— Soft-DeleteGET /api/v1/time_accounts/<id>/timeline— Audit + Aktivitäten