From 5ba9bbcfd7ddd261f9da1cdc53d86c4ccfa5a09d Mon Sep 17 00:00:00 2001 From: Alexandra Date: Wed, 18 Oct 2023 10:55:39 +0200 Subject: [PATCH] InputFamilienhilfe/Invoicing/SgaInvoiceCreation mit Pauschalen --- .../Invoicing/CustomInvoiceFactory.cs | 7 +----- .../Invoicing/SgaInvoiceCreation.cs | 24 +++++++++++++++---- 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/ReportImp/InputFamilienhilfe/Invoicing/CustomInvoiceFactory.cs b/ReportImp/InputFamilienhilfe/Invoicing/CustomInvoiceFactory.cs index f1dec528b..7bcf214db 100644 --- a/ReportImp/InputFamilienhilfe/Invoicing/CustomInvoiceFactory.cs +++ b/ReportImp/InputFamilienhilfe/Invoicing/CustomInvoiceFactory.cs @@ -55,15 +55,10 @@ namespace InputFamilienhilfe.Invoicing if (sr.ServiceDescription.Category.Name.Contains("(SGA)")) { return new SgaInvoiceCreation(); - } - + } } } - - return new DefaultInvoiceCreation(); } - - } } diff --git a/ReportImp/InputFamilienhilfe/Invoicing/SgaInvoiceCreation.cs b/ReportImp/InputFamilienhilfe/Invoicing/SgaInvoiceCreation.cs index aed55e537..3b2df323f 100644 --- a/ReportImp/InputFamilienhilfe/Invoicing/SgaInvoiceCreation.cs +++ b/ReportImp/InputFamilienhilfe/Invoicing/SgaInvoiceCreation.cs @@ -35,8 +35,13 @@ namespace InputFamilienhilfe.Invoicing Calculations calc = PluginLoader.FindClass(_SpecificID) ?? Calculations.GetInstance(_SpecificID); - - List serviceRecordsInPeriod = serviceRecords.Where( + if (ShouldCreateFixedAmounts(serviceInvoicePeriod, supportConceptApprovalPeriod, cb2sc)) + { + CreateFixedAmounts(serviceInvoicePeriod, supportConceptApprovalPeriod, cb2sc); + } + else + { + List serviceRecordsInPeriod = serviceRecords.Where( i => { bool valid = i.Start.Value.InBetween(serviceInvoicePeriod.Start.Value, @@ -49,10 +54,19 @@ namespace InputFamilienhilfe.Invoicing return valid; }).ToList(); - var itemList = CreateInvoiceItems(serviceRecordsInPeriod, invoicePeriod, - serviceInvoicePeriod.SupportConceptApprovalPeriod, calc); - serviceInvoicePeriod.InvoiceItemList.AddRange(itemList); + var itemList = CreateInvoiceItems(serviceRecordsInPeriod, invoicePeriod, + serviceInvoicePeriod.SupportConceptApprovalPeriod, calc); + serviceInvoicePeriod.InvoiceItemList.AddRange(itemList); + } + } + public override void CreateFixedAmounts(ServiceInvoicePeriod serviceInvoicePeriod, SupportConceptApprovalPeriodDC supportConceptApprovalPeriod, CostBearer2SupportConcept cb2sc) + { + base.CreateFixedAmounts(serviceInvoicePeriod, supportConceptApprovalPeriod, cb2sc); + foreach (var ii in serviceInvoicePeriod.InvoiceItemList) + { + ii.ItemDescription = "SGA-Pauschale"; + } } public override InvoiceItem CreateInvoiceItem(ServiceRecordDC iServiceRecord, SupportConceptApprovalPeriod scap, Calculations calc)