LwvKASpitzabrechnungRO - Anpassung Zeitraum für Zwischenabrechnung nach einem Jahr

This commit is contained in:
2024-07-29 09:11:06 +02:00
parent 1aa1be8c05
commit fd34ccd7f0
3 changed files with 19 additions and 11 deletions

View File

@@ -29,7 +29,7 @@ namespace BeWo.Report.ReportObjects
public decimal SummeBetragErbracht { get; set; }
public static LwvKASpitzabrechnungRO Create(long c2sOid, long? scapOid, long? catOid)
public static LwvKASpitzabrechnungRO Create(long c2sOid, DateTime end, long? scapOid, long? catOid)
{
var ro = new LwvKASpitzabrechnungRO();
var c2s = DAOFactory.GenericDAO.LoadByID<CostBearer2SupportConcept>(c2sOid);
@@ -37,6 +37,10 @@ namespace BeWo.Report.ReportObjects
ro.CustomerDC = MapperFactory.CustomerDC_Customer.MapToNewDC(c2s.SupportConcept.Customer);
ro.BewilligtStart = c2s.StartDate.Value;
ro.BewilligtEnde = c2s.EndDate.Value;
if (end < ro.BewilligtEnde)
{
ro.BewilligtEnde = end;
}
SupportConceptApprovalPeriodDC scap;
var calc = PluginLoader.FindClass<Calculations>();
@@ -138,11 +142,14 @@ namespace BeWo.Report.ReportObjects
var srList = c2s.ServiceRecords;
foreach (var item in srList)
{
String kwKey = String.Format("{0}_{1}", item.Start.Value.Year, GetKW(item.Start.Value));
if (zeilenDict.ContainsKey(kwKey) && item.ServiceDescription.ServiceCategory.Oid == scap.ServiceCategory.ServiceCategoryOid)
if (item.Start <= end)
{
var wz = zeilenDict[kwKey];
wz.erbrachteStunden += item.RoundedDuration / 60;
String kwKey = String.Format("{0}_{1}", item.Start.Value.Year, GetKW(item.Start.Value));
if (zeilenDict.ContainsKey(kwKey) && item.ServiceDescription.ServiceCategory.Oid == scap.ServiceCategory.ServiceCategoryOid)
{
var wz = zeilenDict[kwKey];
wz.erbrachteStunden += item.RoundedDuration / 60;
}
}
}