diff --git a/Service/ServiceImplementations/GkvAccountingServiceImp.cs b/Service/ServiceImplementations/GkvAccountingServiceImp.cs index 89810950d..8e5c75109 100644 --- a/Service/ServiceImplementations/GkvAccountingServiceImp.cs +++ b/Service/ServiceImplementations/GkvAccountingServiceImp.cs @@ -381,10 +381,7 @@ namespace BeWo.Service.ServiceImplementations { eval(GkvValidation.ValidateGkvAbrechnung(gkvAbrechnung, gkvAbrechnung.InvoiceBases)); - var isDialyse = gkvAbrechnung.InvoiceBases.All(ib => ib.InvoiceId == "RechnungHaeuslicheKrankenpflege"); - var leistungsbereich = isDialyse - ? SchlüsselLeistungserbringerSammelgruppenschlussel.NichtÄrztlicheDialysesachleistung - : SchlüsselLeistungserbringerSammelgruppenschlussel.SoziotherapeutischerLeistungserbringer; + var leistungsbereich = GkvAbrechnungGetLeistungsbereich(gkvAbrechnung.InvoiceBases); var manager = new DakotaManager(DateTime.Now.Month, DateTime.Now, leistungsbereich); var mandatordc = new OperationsServiceImp().GetMandator(); @@ -497,6 +494,19 @@ namespace BeWo.Service.ServiceImplementations return null; } + private static SchlüsselLeistungserbringerSammelgruppenschlussel GkvAbrechnungGetLeistungsbereich(IEnumerable invoiceBases) + { + var invoiceIds = invoiceBases.Select(ib => ib.InvoiceId).Distinct().ToList(); + + if (invoiceIds.All(id => id == "RechnungHaeuslicheKrankenpflege")) + // return SchlüsselLeistungserbringerSammelgruppenschlussel.LeistungserbringerVonHäuslicherKrankenpflege; + // + //if (invoiceIds.All(id => id == "RechnungNichtaerztlicheDialysesachleistung")) + return SchlüsselLeistungserbringerSammelgruppenschlussel.NichtÄrztlicheDialysesachleistung; + + return SchlüsselLeistungserbringerSammelgruppenschlussel.SoziotherapeutischerLeistungserbringer; + } + private Tuple GetNextDatenaustauschreferenzTransfernummer(GkvAbrechnung gkvAbrechnung, string datenannahmestelle) { bool newDatenaustauschref;