MH: SHK Service Hilfeplanübersicht Anpassung
This commit is contained in:
@@ -119,6 +119,7 @@
|
||||
<DependentUpon>Quittierungsbeleg.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Service\CustomCustomerService.cs" />
|
||||
<Compile Include="Service\CustomSupportConceptAnalysisCreator.cs" />
|
||||
<Compile Include="Teamstundenkonto.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
@@ -131,6 +132,10 @@
|
||||
<Project>{B0D73E3D-4AE7-4024-93A6-DB1F46D7CCEE}</Project>
|
||||
<Name>Data</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\ReportService\ReportingService.csproj">
|
||||
<Project>{663efcb5-9e3e-4c76-97ee-3188e072634c}</Project>
|
||||
<Name>ReportingService</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Report\Report.csproj">
|
||||
<Project>{40d8b312-ea64-49e3-a31a-5e57ed4d5654}</Project>
|
||||
<Name>Report</Name>
|
||||
|
||||
@@ -0,0 +1,102 @@
|
||||
using BeWo.Data.Access;
|
||||
using BeWo.Data.Entities;
|
||||
using BeWo.Service.DCEntityMapper;
|
||||
using BeWo.Service.Plugins;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Services;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.Extensions;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SHKService.Service
|
||||
{
|
||||
public class CustomSupportConceptAnalysisCreator : SupportConceptAnalysisCreator
|
||||
{
|
||||
public override List<SupportConceptOverviewDC> GetSupportConceptAnalysis2(IList<long> c2sOids, long? employeeOid, long? teamOid, long? catOid, DateTime? startDate, DateTime? endDate, int? expiredMonths, bool showArchivedScs)
|
||||
{
|
||||
var result = base.GetSupportConceptAnalysis2(c2sOids, employeeOid, teamOid, catOid, startDate, endDate, expiredMonths, showArchivedScs);
|
||||
|
||||
foreach (var iDC in result)
|
||||
{
|
||||
if (iDC.ServiceUnit.CostRateValue == 1)
|
||||
{
|
||||
if (iDC.FLSApprovedSum <= 0)
|
||||
{
|
||||
iDC.FLSRecordedTillNowInPercent = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
iDC.FLSRecordedTillNowInPercent = iDC.FLSRecordedTillNow / iDC.FLSApprovedSum * 100; // Leistungen %
|
||||
}
|
||||
|
||||
|
||||
iDC.FLSDifferenceApprovedRecordedTillNow = iDC.FLSRecordedTillNow - iDC.FLSApprovedTillNow; // Über-/Unterbrinung [Stunden]
|
||||
if (iDC.FLSApprovedTillNow <= 0)
|
||||
{
|
||||
iDC.FLSDifferenceApprovedRecordedTillNowInPercent = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
iDC.FLSDifferenceApprovedRecordedTillNowInPercent = // Soll/Ist % UND Über-Unterbringung [%]
|
||||
iDC.FLSRecordedTillNow / iDC.FLSApprovedTillNow *
|
||||
100;
|
||||
}
|
||||
|
||||
|
||||
if (iDC.OpenWeeks <= 0)
|
||||
{
|
||||
iDC.FLSOpenPerWeek = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
iDC.FLSOpenPerWeek = iDC.FLSOpen / iDC.OpenWeeks; // Restliche Stunden/Woche
|
||||
}
|
||||
|
||||
iDC.ServiceUnit.CostRateValue = 60;
|
||||
iDC.ServiceUnit.UnitName = "Stunden";
|
||||
|
||||
iDC.BEApprovedPerWeek = iDC.ServiceUnit.GetHoursInBE(iDC.FLSApprovedPerWeek);
|
||||
iDC.BEApprovedSum = iDC.ServiceUnit.GetHoursInBE(iDC.FLSApprovedSum);
|
||||
iDC.BEApprovedTillNow = iDC.ServiceUnit.GetHoursInBE(iDC.FLSApprovedTillNow);
|
||||
iDC.BEBilledTillNow = iDC.ServiceUnit.GetHoursInBE(iDC.FLSBilledTillNow);
|
||||
iDC.BEDifferenceApprovedRecordedTillNow =
|
||||
iDC.ServiceUnit.GetHoursInBE(iDC.FLSDifferenceApprovedRecordedTillNow);
|
||||
iDC.BEDifferenceApprovedRecordedTillNowInPercent =
|
||||
iDC.ServiceUnit.GetHoursInBE(iDC.FLSDifferenceApprovedRecordedTillNowInPercent);
|
||||
iDC.BEOpen = iDC.ServiceUnit.GetHoursInBE(iDC.FLSOpen);
|
||||
iDC.BEOpenPerWeek = iDC.ServiceUnit.GetHoursInBE(iDC.FLSOpenPerWeek);
|
||||
if (iDC.BEOpenPerWeek > iDC.BEOpen)
|
||||
iDC.BEOpenPerWeek = iDC.BEOpen;
|
||||
iDC.BERecordedTillNow = iDC.ServiceUnit.GetHoursInBE(iDC.FLSRecordedTillNow);
|
||||
iDC.BERecordedTillNowInPercent = iDC.ServiceUnit.GetHoursInBE(iDC.FLSRecordedTillNowInPercent);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
public override void BerechneBewilligteStunden(BS.Shared.Services.Calculations calc, SupportConceptOverviewDC iDc, SupportConceptCostBearerRelDC relDc, DateTime? appointedDate)
|
||||
{
|
||||
if (relDc.CostBearer.CostRatePeriods != null)
|
||||
{
|
||||
foreach(var crp in relDc.CostBearer.CostRatePeriods)
|
||||
{
|
||||
if (crp.CostRateType == CostRatePeriodType.MinutesPerServiceUnit && crp.CostRateValue == 1)
|
||||
crp.CostRateValue = 60;
|
||||
}
|
||||
}
|
||||
|
||||
iDc.FLSApprovedPerWeek = calc.GetApprovedHoursPerWeekAverage(relDc, true) ?? 0m;
|
||||
|
||||
decimal? flsTotal = calc.GetApprovedHoursTotal(relDc, true);
|
||||
|
||||
iDc.FLSApprovedSum = flsTotal ?? 0m;
|
||||
var approvedTillNow = calc.GetApprovedHoursTillNow(relDc, appointedDate);
|
||||
iDc.FLSApprovedTillNow = approvedTillNow ?? 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user