From 93f90e75e56af86efc977185eab22c1c89b0e948 Mon Sep 17 00:00:00 2001 From: Alexandra Date: Fri, 9 Aug 2024 12:15:06 +0200 Subject: [PATCH] Report/ReportObjects/Mitarbeiterstundenkonto - neue Felder Tageszeiten in HH:mm --- .../MitarbeiterstundenkontoBerechnung.cs | 38 +++++++++++++++---- .../MitarbeiterstundenkontoRO.cs | 8 ++++ 2 files changed, 39 insertions(+), 7 deletions(-) diff --git a/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs b/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs index 6d5523a5b..a87b465ab 100644 --- a/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs +++ b/Report/ReportObjects/MitarbeiterstundenkontoBerechnung.cs @@ -1357,9 +1357,9 @@ namespace BeWo.Report.ReportObjects if (!IsServiceRecordFehlzeit(sr) && AddServiceRecordToDuration(sr)) { decimal duration = GetDuration(sr, ed); - - dd.MinutesTotal += duration; + TimeSpan tspan = TimeSpan.FromMinutes((double)dd.MinutesTotal); + dd.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); if (dd.ServiceRecords == null) dd.ServiceRecords = new List(); dd.ServiceRecords.Add(sr); @@ -1502,6 +1502,8 @@ namespace BeWo.Report.ReportObjects dd.MinutesTotal += duration; + TimeSpan tspan = TimeSpan.FromMinutes((double)dd.MinutesTotal); + dd.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); if (dd.ServiceRecords == null) dd.ServiceRecords = new List(); dd.ServiceRecords.Add(sr); @@ -1704,12 +1706,13 @@ namespace BeWo.Report.ReportObjects dd.Date = date.Date; dd.NightStart = 20; dd.NightEnd = 6; + dd.TimeTotal = "00:00"; + dd.TimeInVacation = "00:00"; + dd.TimeSick = "00:00"; + dd.TimeOtherAbsenceTimes = "00:00"; ConfigurePauseSettings(dd); - CalculateAbsenceTimesForDay(dd, ed); - dd.Feiertag = vacationService.GetFeiertag(date); - BerechneSollStundenFuerDayDetail(ed, dd); if (BerechneFeiertageAlsArbeitszeit()) @@ -1717,6 +1720,8 @@ namespace BeWo.Report.ReportObjects if (dd.Feiertag != null) { dd.MinutesTotal = dd.SollStunden * 60; + TimeSpan tspan = TimeSpan.FromMinutes((double)dd.MinutesTotal); + dd.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); } } @@ -1985,23 +1990,32 @@ namespace BeWo.Report.ReportObjects //und wenn ja, HoursSick oder Soll oder so für den Tag auf 0 setzen dd.HoursInVacation = abwesenheitsDauer; + var tspan = TimeSpan.FromHours((double)abwesenheitsDauer); + dd.TimeInVacation = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); } else if (!AbsenceTimeAufIstStundenAddieren(absenceTime) && IsKrankheitAbsenceTime(absenceTime)) { dd.HoursSick = abwesenheitsDauer; + var tspan = TimeSpan.FromHours((double)abwesenheitsDauer); + dd.TimeSick = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); } else { if (!AbsenceTimeAufIstStundenAddieren(absenceTime)) { dd.HoursOtherAbsenceTimes = abwesenheitsDauer; + var tspan = TimeSpan.FromHours((double)abwesenheitsDauer); + dd.TimeOtherAbsenceTimes = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); } if (istGanztaegig) { //Bei ganztägigen Abwesenheiten darf nicht noch zusätzlich gearbeitet werden dd.MinutesTotal = 0; + dd.TimeTotal = "00:00"; } dd.MinutesTotal += abwesenheitsDauer * 60; + TimeSpan tspan2 = TimeSpan.FromMinutes((double)dd.MinutesTotal); + dd.TimeTotal = String.Format("{0:00}:{1:00}", tspan2.Hours, tspan2.Minutes); } if (dd.AbsenceTimes == null) @@ -2012,9 +2026,7 @@ namespace BeWo.Report.ReportObjects //dd.MinutesTotal += sollDiesenTag * 60; } } - //} - //} } } @@ -2739,6 +2751,8 @@ namespace BeWo.Report.ReportObjects } dayDetail.MinutesTotal -= gesetzlichePauseMinuten; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += gesetzlichePauseMinuten; return gesetzlichePauseMinuten; @@ -2756,6 +2770,8 @@ namespace BeWo.Report.ReportObjects { addHours -= (breakMinutes / 60m); dayDetail.MinutesTotal -= breakMinutes; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += breakMinutes; } } @@ -2769,6 +2785,8 @@ namespace BeWo.Report.ReportObjects { addHours -= (breakMinutes / 60m); dayDetail.MinutesTotal -= breakMinutes; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += breakMinutes; } } @@ -2778,6 +2796,8 @@ namespace BeWo.Report.ReportObjects { addHours -= (breakMinutes / 60m); dayDetail.MinutesTotal -= breakMinutes; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += breakMinutes; } } @@ -2787,6 +2807,8 @@ namespace BeWo.Report.ReportObjects { addHours -= (breakMinutes / 60m); dayDetail.MinutesTotal -= breakMinutes; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += breakMinutes; } } @@ -2796,6 +2818,8 @@ namespace BeWo.Report.ReportObjects { addHours -= (breakMinutes / 60m); dayDetail.MinutesTotal -= breakMinutes; + TimeSpan tspan = TimeSpan.FromMinutes((double)dayDetail.MinutesTotal); + dayDetail.TimeTotal = String.Format("{0:00}:{1:00}", tspan.Hours, tspan.Minutes); dayDetail.PauseInMinuten += breakMinutes; } } diff --git a/Report/ReportObjects/MitarbeiterstundenkontoRO.cs b/Report/ReportObjects/MitarbeiterstundenkontoRO.cs index 1327f2e37..fa234c624 100644 --- a/Report/ReportObjects/MitarbeiterstundenkontoRO.cs +++ b/Report/ReportObjects/MitarbeiterstundenkontoRO.cs @@ -380,6 +380,14 @@ namespace BeWo.Report.ReportObjects public decimal MinutesTotal { get; set; } + public String TimeInVacation { get; set; } + + public String TimeSick { get; set; } + + public String TimeOtherAbsenceTimes { get; set; } + + public String TimeTotal { get; set; } + public decimal SollStunden { get; set; } public String Custom1 { get; set; }