From ab8b36bcb10cbfd4af72e464d8f60aa7f6b85a89 Mon Sep 17 00:00:00 2001 From: Marcel Hirschle Date: Thu, 19 Sep 2024 14:12:59 +0200 Subject: [PATCH 1/4] MH: BetreutesWohnenWoellReports RateFaktor Spitzabrechnung --- .../Properties/licenses.licx | 1 + .../SettlementReport2.cs | 34 +++++++++++++++---- 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/ReportImp/BetreutesWohnenWoellReports/Properties/licenses.licx b/ReportImp/BetreutesWohnenWoellReports/Properties/licenses.licx index e69de29bb..d59547a61 100644 --- a/ReportImp/BetreutesWohnenWoellReports/Properties/licenses.licx +++ b/ReportImp/BetreutesWohnenWoellReports/Properties/licenses.licx @@ -0,0 +1 @@ +DevExpress.XtraReports.UI.XtraReport, DevExpress.XtraReports.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/ReportImp/BetreutesWohnenWoellReports/SettlementReport2.cs b/ReportImp/BetreutesWohnenWoellReports/SettlementReport2.cs index dbf704e5e..9ece9ea1f 100644 --- a/ReportImp/BetreutesWohnenWoellReports/SettlementReport2.cs +++ b/ReportImp/BetreutesWohnenWoellReports/SettlementReport2.cs @@ -6,6 +6,7 @@ using DevExpress.XtraReports.UI; using BeWo.Report.ReportObjects; using BeWo.Report; using BS.Shared.Extensions; +using System.Linq; namespace BeWo.BetreutesWohnenWoellReports { @@ -19,15 +20,34 @@ namespace BeWo.BetreutesWohnenWoellReports public void SetReportDataSource(Settlement2RO pRO) { decimal rateFactor = 1; - bool assistenzRechnung = false; + bool assistenzRechnung = false; - foreach (var ii in pRO.InvoiceItems) + if (pRO.InvoiceItems.Any(ii => ii.RateFactor.HasValue)) + { + if (pRO.InvoiceItems.Any(ii => ii.RateFactor.Value == 20)) + { + rateFactor = 1.2m; + pRO.RateFactorText2 = String.Format("{0:0.00}", rateFactor); + } + else if (pRO.InvoiceItems.Any(ii => ii.RateFactor.Value == 0)) + { + rateFactor = 1m; + pRO.RateFactorText2 = String.Format("{0:0.00}", rateFactor); + } + } + else + { + rateFactor = 1m; + pRO.RateFactorText2 = String.Format("{0:0.00}", rateFactor); + } + + foreach (var ii in pRO.InvoiceItems) { - if (ii.RateFactor.HasValue) - { - rateFactor = (100 + ii.RateFactor.Value) / 100; - pRO.RateFactorText2 = String.Format("{0:0.00}", rateFactor); - } + //if (ii.RateFactor.HasValue) + //{ + // rateFactor = (100 + ii.RateFactor.Value) / 100; + // pRO.RateFactorText2 = String.Format("{0:0.00}", rateFactor); + //} if (!pRO.FehlkontakteString.IsNullOrEmpty() && ii.RateFactor == 0) { From 521553e1ec0b51dc51c1b03bdcf1820ba3c003fa Mon Sep 17 00:00:00 2001 From: Marcel Hirschle Date: Fri, 20 Sep 2024 06:03:00 +0200 Subject: [PATCH 2/4] MH: BeWO Auxilio Freizeitausgleich --- .../CustomMitarbeiterstundenkontoBerechnung.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ReportImp/BeWoAuxilio/CustomMitarbeiterstundenkontoBerechnung.cs b/ReportImp/BeWoAuxilio/CustomMitarbeiterstundenkontoBerechnung.cs index 64d316a7d..56297c331 100644 --- a/ReportImp/BeWoAuxilio/CustomMitarbeiterstundenkontoBerechnung.cs +++ b/ReportImp/BeWoAuxilio/CustomMitarbeiterstundenkontoBerechnung.cs @@ -158,5 +158,13 @@ namespace BeWo.BeWoAuxilio emp.Custom1 += (duration / 60); } } - } + + public override bool IstAnrechenbareAbsenceTime(AbsenceTime item) + { + if (item.AbsenceReason.Description != null && item.AbsenceReason.Description.ToLower().Contains("freizeitausgleich")) + return false; + else + return base.IstAnrechenbareAbsenceTime(item); + } + } } From 9529562a62d6218c81d5268967a97bb43846d0db Mon Sep 17 00:00:00 2001 From: Marcel Hirschle Date: Fri, 20 Sep 2024 09:24:58 +0200 Subject: [PATCH 3/4] MH: BeWo Auxilio halbe Feiertage --- ReportImp/BeWoAuxilio/BeWoAuxilio.csproj | 1 + .../BeWoAuxilio/CustomVacationService.cs | 29 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 ReportImp/BeWoAuxilio/CustomVacationService.cs diff --git a/ReportImp/BeWoAuxilio/BeWoAuxilio.csproj b/ReportImp/BeWoAuxilio/BeWoAuxilio.csproj index 3a58ccc1c..381bb7bb3 100644 --- a/ReportImp/BeWoAuxilio/BeWoAuxilio.csproj +++ b/ReportImp/BeWoAuxilio/BeWoAuxilio.csproj @@ -73,6 +73,7 @@ + Component diff --git a/ReportImp/BeWoAuxilio/CustomVacationService.cs b/ReportImp/BeWoAuxilio/CustomVacationService.cs new file mode 100644 index 000000000..1abde561f --- /dev/null +++ b/ReportImp/BeWoAuxilio/CustomVacationService.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using BeWo.Service.Core; +using BeWo.Service.Plugins; +using BS.Shared.Core; +using BS.Shared.DataContracts; +using Utils = BS.Shared.Core.Utils; + +namespace BeWoAuxilio.Service +{ + public class CustomVacationService : VacationService + { + public override List GetFeiertage(int year, string bundesland) + { + var list = base.GetFeiertage(year, bundesland); + list.Add(new FeiertagDC() { Datum = new DateTime(year, 12, 31), Name = "Silvester" }); + + return list; + } + + public override decimal GetFeiertagsFaktor(DateTime start) + { + if (start.Date.Month == 12 && (start.Date.Day == 24 || start.Date.Day == 31)) + return 0.5m; + else + return base.GetFeiertagsFaktor(start); + } + } +} From 616c3fd62d52a5d329b13a4fc50bbba6ab9168cd Mon Sep 17 00:00:00 2001 From: Marcel Hirschle Date: Fri, 20 Sep 2024 11:35:02 +0200 Subject: [PATCH 4/4] MH: BeWoAuxilio UrlaubKrankheit --- ReportImp/BeWoAuxilio/Mitarbeiterstundenkonto.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/ReportImp/BeWoAuxilio/Mitarbeiterstundenkonto.cs b/ReportImp/BeWoAuxilio/Mitarbeiterstundenkonto.cs index 9b77b79fb..ef17e4ad3 100644 --- a/ReportImp/BeWoAuxilio/Mitarbeiterstundenkonto.cs +++ b/ReportImp/BeWoAuxilio/Mitarbeiterstundenkonto.cs @@ -21,6 +21,20 @@ namespace BeWo.BeWoAuxilio var msb = new CustomMitarbeiterstundenkontoBerechnung(); msb.CreateReport(pRO); + foreach (var emp in pRO.EmployeeDetailList) + { + if (emp.SollProTag != 0) + { + var urlaubKrankheit = 0m; + if (emp.TageUrlaub.HasValue) + urlaubKrankheit += emp.TageUrlaub.Value * emp.SollProTag; + if (emp.TageKrankheit.HasValue) + urlaubKrankheit += emp.TageKrankheit.Value * emp.SollProTag; + + emp.UrlaubUndKrankheit = urlaubKrankheit; + } + } + this.bindingSource1.DataSource = pRO; }