package domain import ( "business-engine/internal/database" "time" ) type PayrollInput struct { Firstname string Surname string // Vertragliche Basis HourlyRate float64 ContractHours int64 DepartmentIsKtw bool DepartmentNotLeitstelle bool // Erfasste Zeiten WorkedHours float64 WorkedDays int64 SickDays int64 HolidayDays int64 TotalHours float64 OvertimeHours float64 SickdaysYear []database.ListSickdaysForEmployeeRow // Zulagen und Boni ZulageTourengeld float64 ZulagePassengerTransport int64 ZulagePuenktlichkeit int64 Verpflegungspauschale int64 // Zuschlaege ZuschlagNacht25 float64 ZuschlagNacht40 float64 ZuschlagSamstag float64 ZuschlagSonntag float64 ZuschlagVerpflegung float64 ZuschlagFeiertag125 float64 ZuschlagFeiertag150 float64 } type WeeklyTimeData struct { WeekStart time.Time WorkedHours float64 WorkedDays float64 SickHours float64 HolidayDays float64 } type PayrollStatement struct { Nachname string `json:"nachname" csv:"Nachname"` Vorname string `json:"vorname" csv:"Vorname"` Verpflegungspauschale float64 `json:"verpflegungspauschale" csv:"Verpflegungspauschale"` VertragStundenlohn float64 `json:"stundenlohn" csv:"Vertr. Stundenlohn"` Vertragsstunden float64 `json:"vertragsstunden" csv:"Arbeitsstunden lt. Vertrag"` GearbeiteteStunden float64 `json:"gearbeiteteStunden" csv:"Gearbeitet Stunden"` GearbeiteteTage float64 `json:"gearbeiteteTage" csv:"Gearbeitet Tage"` PuenktlichkeitspraemieAnzahl float64 `json:"puenktlichkeitspraemieAnzahl" csv:"Pünktlichkeitsprämie anzahl"` Krankheitstage float64 `json:"krankheitstage" csv:"Krankheitstage x 8 Stunden"` Ueberstunden float64 `json:"ueberstunden" csv:"davon Überstunden"` Tourengeld float64 `json:"tourengeld" csv:"Tourengeld Anzahl"` TourengeldBonus float64 `json:"tourengeldBonus" csv:"Tourengeld-Bonus (Platz 1-3, EUR)"` GesundheitsbonusAbzug string `json:"gesundheitsbonusAbzug" csv:"Gesundheitsbonus abzuziehen? (ja/nein)"` Gesundheitsbonus float64 `json:"gesundheitsbonus" csv:"Gesundheitsbonus"` Urlaubsgeld float64 `json:"urlaubsgeld" csv:"Urlaubsgeld (44 EUR pro tag)"` PScheinZulage float64 `json:"pScheinZulage" csv:"P-schein Zulage"` Wochenendzuschlag15 float64 `json:"wochenendzuschlag15" csv:"Wochenendzuschlag 15%"` Sonntagszuschlag50 float64 `json:"sonntagszuschlag50" csv:"Sonntagszuschlag 50%"` Feiertagszuschlag125 float64 `json:"feiertagszuschlag125" csv:"Feiertagszuschlag 125%,omitempty"` Feiertagszuschlag150 float64 `json:"feiertagszuschlag150" csv:"Feiertagszuschlag 150%,omitempty"` Nachtzuschlag25 float64 `json:"nachtzuschlag25" csv:"Nachtzuschlag 25%"` Nachtzuschlag40 float64 `json:"nachtzuschlag40" csv:"Nachtzuschlag 40%"` SickdaysYear []database.ListSickdaysForEmployeeRow `json:"-" csv:"-"` }