MH: MalteserJohanniterJohanneshaus BelegungsquotenRO Ausbau
This commit is contained in:
@@ -4,6 +4,7 @@ using BeWo.Service.DCEntityMapper;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.Extensions;
|
||||
using DevExpress.Utils;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
@@ -63,7 +64,7 @@ namespace MalteserJohanniterJohanneshaus.Reporting
|
||||
}
|
||||
|
||||
// für debug
|
||||
if (wohnheim.WohnheimName.Contains("Folge"))
|
||||
if (wohnheim.WohnheimName.Contains("Witterschlick"))
|
||||
{
|
||||
|
||||
}
|
||||
@@ -198,6 +199,7 @@ namespace MalteserJohanniterJohanneshaus.Reporting
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
foreach (var sc in hilfeplaeneFuerWohnheim)
|
||||
{
|
||||
// Start und Ende der Zeit festlegen, die die Person ein Bett belegt. Geht der Hilfeplan über den Berichtszeitraum hinaus,
|
||||
@@ -221,13 +223,36 @@ namespace MalteserJohanniterJohanneshaus.Reporting
|
||||
continue;
|
||||
else if (cbrel.EndDate.Value < berichtEnde)
|
||||
{
|
||||
// Der letzte Tag der Bewilligung zählt nicht mehr als belegt, also einen Tag abziehen
|
||||
ende = cbrel.EndDate.Value.AddDays(-1);
|
||||
// für debug
|
||||
if (wb.Name == "Witterschlick")
|
||||
{
|
||||
|
||||
}
|
||||
bool hatFolgebewilligung = false;
|
||||
|
||||
// Eine Folgebewilligung existiert, wenn es einen Hilfeplan gibt, der genau am Tag nach dem cbrel.EndDate beginnt
|
||||
var weitereHPs = aktiveHilfeplaene.Where(h => h.Customer.Oid == sc.Customer.Oid && h.SupportConceptOid != sc.SupportConceptOid).ToList();
|
||||
if (weitereHPs != null && weitereHPs.Count > 0)
|
||||
{
|
||||
if (weitereHPs.Any(h => h.CostBearerRelations.Any(c => c.Notice.IsNotNullOrEmpty() && wb.Kostenstelle.IsNotNullOrEmpty() && wb.Kostenstelle.Trim().Contains(c.Notice.Trim()) &&
|
||||
(c.RequestedStartDate.HasValue && c.RequestedStartDate.Value.Date == cbrel.EndDate.Value.Date.AddDays(1) ||
|
||||
c.ApprovedStartDate.HasValue && c.ApprovedStartDate.Value.Date == cbrel.EndDate.Value.Date.AddDays(1)))))
|
||||
hatFolgebewilligung = true;
|
||||
}
|
||||
|
||||
// Der letzte Tag der Bewilligung zählt ohne Folgebewilligung nicht mehr als belegt, also einen Tag abziehen
|
||||
if (!hatFolgebewilligung)
|
||||
ende = cbrel.EndDate.Value.AddDays(-1);
|
||||
else
|
||||
ende = cbrel.EndDate.Value;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
if (wohnheim.WohnheimName.Contains("Witterschlick"))
|
||||
{
|
||||
|
||||
}
|
||||
wb.Belegung += (ende - start).Days + 1;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user