From 5f5b5aa8832361774914067c4274f7cdccd0cecc Mon Sep 17 00:00:00 2001 From: Alexandra Date: Fri, 25 Oct 2024 13:41:44 +0200 Subject: [PATCH] =?UTF-8?q?AachenerLaienhelfer/Reporting/CustomMitarbeiter?= =?UTF-8?q?stundenkontoBerechnung=20-=20keine=20Kappung=20der=20Abwesenhei?= =?UTF-8?q?tszeit=20bei=20=C3=9Cberschreitung=20Wochensoll?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CustomMitarbeiterstundenkontoBerechnung.cs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs b/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs index d222fe558..64d646bbf 100644 --- a/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs +++ b/ReportImp/AachenerLaienhelfer/Reporting/CustomMitarbeiterstundenkontoBerechnung.cs @@ -11,12 +11,26 @@ namespace AachenerLaienhelfer.Reporting { public class CustomMitarbeiterstundenkontoBerechnung : MitarbeiterstundenkontoBerechnung { + protected override bool SchneideZuvieleAbwesenheitsstundenAb() { return false; } - public override bool IstAnrechenbareAbsenceTime(AbsenceTime item) + public override decimal? GetSollStundenForAbsenceTime(MitarbeiterstundenkontoRO.EmployeeDetail ed, AbsenceTime at, DateTime datum) + { + if (at.AbsenceSpan.StartDateTime.Hour > 0 && at.AbsenceSpan.EndDateTime.Hour > 0) + { + var ts = at.AbsenceSpan.EndDateTime.Subtract(at.AbsenceSpan.StartDateTime); + return (decimal)ts.TotalHours; + } + else + { + return null; + } + } + + public override bool IstAnrechenbareAbsenceTime(AbsenceTime item) { if (item.AbsenceReason.Description.Contains("Überstunden") && item.AbsenceReason.Description.Contains("Abbau")) {