From 85019353f12d8989948e7112ff09fe82ce4898e0 Mon Sep 17 00:00:00 2001 From: Alexandra Date: Fri, 2 Feb 2024 10:46:04 +0100 Subject: [PATCH] HausDuelken/Invoicing/CustomSettlementInvoiceCreation.cs Fehlkontakte --- .../CustomSettlementInvoiceCreation.cs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/ReportImp/HausDuelken/Invoicing/CustomSettlementInvoiceCreation.cs b/ReportImp/HausDuelken/Invoicing/CustomSettlementInvoiceCreation.cs index 0955b6f84..6fc54d62e 100644 --- a/ReportImp/HausDuelken/Invoicing/CustomSettlementInvoiceCreation.cs +++ b/ReportImp/HausDuelken/Invoicing/CustomSettlementInvoiceCreation.cs @@ -26,21 +26,28 @@ namespace HausDuelken { var uc = Math.Round(ii.UnitCount ?? 0, 2, MidpointRounding.AwayFromZero); if (maxApprovedFls < uc) + { uc = maxApprovedFls; + } maxApprovedFls -= uc; - ii.UnitCount = uc; if (ii.AmountPerUnit.HasValue) { + if (!String.IsNullOrEmpty(ii.ItemDescription) && ii.ItemDescription == "Fehlkontakte") + { + ii.AmountPerUnit = ii.AmountPerUnit * ii.ProzentAbrechenbar / 100; + } ii.AmountTotal = ii.UnitCount.Value * ii.AmountPerUnit.Value; if (ii.RateFactor.HasValue && ii.RateFactor.Value != 0 && ii.ItemDescription != null && !ii.ItemDescription.Contains("Assistenz")) - ii.GrossAmountTotal = Math.Round(ii.AmountTotal.Value * ((100m + ii.RateFactor.Value) / 100m), 2, - MidpointRounding.AwayFromZero); + { + ii.GrossAmountTotal = Math.Round(ii.AmountTotal.Value * ((100m + ii.RateFactor.Value) / 100m), 2, MidpointRounding.AwayFromZero); + } else + { ii.GrossAmountTotal = ii.AmountTotal; - + } } if (ii.MaxApprovedUnitCount < ii.UnitCount) { @@ -54,7 +61,9 @@ namespace HausDuelken { var item = base.CreateInvoiceItemForAccountingPeriod(accountingPeriod); if (item.ItemDescription != null && item.ItemDescription.StartsWith("Assistenzleistung")) + { item.RateFactor = null; + } return item; }