MH: LebenshilfeStade Ministatistik für Monatsbewilligungen korrigiert
This commit is contained in:
@@ -24,41 +24,44 @@ namespace LebenshilfeStade.Service
|
||||
|
||||
decimal factor = 1.2m;
|
||||
|
||||
stats.MinutesApprovedPerWeek *= factor;
|
||||
stats.MinutesApprovedTotal *= factor;
|
||||
stats.MinutesApprovedTotal = 0;
|
||||
|
||||
foreach (var item in stats.PeriodStatistics)
|
||||
{
|
||||
// Bewilligt pro Woche/Gesamt
|
||||
item.MinutesApprovedPerWeek *= factor;
|
||||
item.MinutesApprovedTotal *= factor;
|
||||
|
||||
DateTime dtPeriod = statisticsDate.Date;
|
||||
if (item.SupportConceptApprovalPeriod.StartDate.HasValue && item.SupportConceptApprovalPeriod.StartDate > dtPeriod)
|
||||
if (item.SupportConceptApprovalPeriod != null && item.SupportConceptApprovalPeriod.ApprovedBEInterval.HasValue &&
|
||||
item.SupportConceptApprovalPeriod.ApprovedBEInterval.Value == BS.Shared.SupportConceptApprovalInterval.Monthly)
|
||||
{
|
||||
dtPeriod = item.SupportConceptApprovalPeriod.StartDate.Value;
|
||||
item.MinutesApprovedTotal /= factor;
|
||||
}
|
||||
stats.MinutesApprovedTotal += item.MinutesApprovedTotal;
|
||||
|
||||
TimeSpan tsPeriod = item.SupportConceptApprovalPeriod.EndDate.Value.Subtract(dtPeriod);
|
||||
int daysPeriod = tsPeriod.Days + 1;
|
||||
if (daysPeriod < 0)
|
||||
daysPeriod = 0;
|
||||
//DateTime dtPeriod = statisticsDate.Date;
|
||||
//if (item.SupportConceptApprovalPeriod.StartDate.HasValue && item.SupportConceptApprovalPeriod.StartDate > dtPeriod)
|
||||
//{
|
||||
// dtPeriod = item.SupportConceptApprovalPeriod.StartDate.Value;
|
||||
//}
|
||||
|
||||
if (daysPeriod != 0)
|
||||
{
|
||||
item.MinutesFreePerWeek = (item.MinutesApprovedTotal - item.MinutesProvidedTotalRounded) / (daysPeriod / 7m);
|
||||
}
|
||||
else
|
||||
{
|
||||
item.MinutesFreePerWeek = item.MinutesApprovedTotal - item.MinutesProvidedTotalRounded;
|
||||
}
|
||||
//TimeSpan tsPeriod = item.SupportConceptApprovalPeriod.EndDate.Value.Subtract(dtPeriod);
|
||||
//int daysPeriod = tsPeriod.Days + 1;
|
||||
//if (daysPeriod < 0)
|
||||
// daysPeriod = 0;
|
||||
|
||||
//if (daysPeriod != 0)
|
||||
//{
|
||||
// item.MinutesFreePerWeek = (item.MinutesApprovedTotal - item.MinutesProvidedTotalRounded) / (daysPeriod / 7m);
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// item.MinutesFreePerWeek = item.MinutesApprovedTotal - item.MinutesProvidedTotalRounded;
|
||||
//}
|
||||
}
|
||||
|
||||
decimal freeTotal = stats.MinutesApprovedTotal - stats.MinutesProvidedTotalRounded;
|
||||
if (stats.MinutesFreePerWeekAverage > freeTotal)
|
||||
stats.MinutesFreePerWeekAverage = freeTotal;
|
||||
if (stats.MinutesFreePerWeekAverage < 0)
|
||||
stats.MinutesFreePerWeekAverage = 0;
|
||||
//decimal freeTotal = stats.MinutesApprovedTotal - stats.MinutesProvidedTotalRounded;
|
||||
//if (stats.MinutesFreePerWeekAverage > freeTotal)
|
||||
// stats.MinutesFreePerWeekAverage = freeTotal;
|
||||
//if (stats.MinutesFreePerWeekAverage < 0)
|
||||
// stats.MinutesFreePerWeekAverage = 0;
|
||||
|
||||
return stats;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user