LH Bad Kreuznach: FLS Soll/Ist Report zur Verfügung gestellt
This commit is contained in:
@@ -26,6 +26,8 @@ namespace BeWo.Report.ReportObjects
|
||||
|
||||
public long ObjectOid { get; set; }
|
||||
|
||||
public TableID ObjectTid { get; set; }
|
||||
|
||||
public List<FLSSollIstReportGroupRO> Groups { get; set; } = new List<FLSSollIstReportGroupRO>();
|
||||
public decimal SollGesamt { get; set; }
|
||||
public decimal IstGesamt { get; set; }
|
||||
@@ -40,6 +42,7 @@ namespace BeWo.Report.ReportObjects
|
||||
public String CustomValue4 { get; set; }
|
||||
|
||||
public String CustomValue5 { get; set; }
|
||||
public List<ServiceRecordFLSOverviewDC> ServiceRecords { get; internal set; } = new List<ServiceRecordFLSOverviewDC>();
|
||||
}
|
||||
|
||||
public class FLSSollIstReportGroupRO
|
||||
@@ -48,6 +51,10 @@ namespace BeWo.Report.ReportObjects
|
||||
|
||||
public long ObjectOid { get; set; }
|
||||
|
||||
public TableID ObjectTid { get; set; }
|
||||
|
||||
public List<SupportConceptCostBearerRelDC> CostBearer2SupportConceptList { get; set; } = new List<SupportConceptCostBearerRelDC>();
|
||||
|
||||
public List<FLSSollIstWochenSummen> WochenSummen { get; set; } = new List<FLSSollIstWochenSummen>();
|
||||
|
||||
public decimal SollGesamt { get; set; }
|
||||
@@ -63,6 +70,7 @@ namespace BeWo.Report.ReportObjects
|
||||
public String CustomValue4 { get; set; }
|
||||
|
||||
public String CustomValue5 { get; set; }
|
||||
public List<ServiceRecordFLSOverviewDC> ServiceRecords { get; internal set; } = new List<ServiceRecordFLSOverviewDC>();
|
||||
}
|
||||
|
||||
public class FLSSollIstWochenSummen
|
||||
@@ -104,6 +112,7 @@ namespace BeWo.Report.ReportObjects
|
||||
}
|
||||
}
|
||||
|
||||
public List<ServiceRecordFLSOverviewDC> ServiceRecords { get; internal set; } = new List<ServiceRecordFLSOverviewDC>();
|
||||
}
|
||||
|
||||
public static FLSSollIstReportRO Create(List<FLSAnalysisRootDC> dcList, FLSAnalysisConfigDC config)
|
||||
@@ -118,21 +127,45 @@ namespace BeWo.Report.ReportObjects
|
||||
var rootRo = new FLSSollIstRootRO();
|
||||
rootRo.Name = root.DisplayName;
|
||||
rootRo.SollGesamt = 0; //root.SollFLSTotal ?;
|
||||
|
||||
if (root.Employee != null)
|
||||
{
|
||||
rootRo.ObjectOid = root.Employee.EmployeeOid;
|
||||
rootRo.ObjectTid = TableID.Employee;
|
||||
}
|
||||
else if (root.Customer != null)
|
||||
{
|
||||
rootRo.ObjectOid = root.Customer.CustomerOid;
|
||||
rootRo.ObjectTid = TableID.Customer;
|
||||
}
|
||||
foreach (var item in root.Groups.OrderBy(a => a.DisplayName))
|
||||
{
|
||||
var grpRo = new FLSSollIstReportGroupRO();
|
||||
grpRo.Name = item.DisplayName;
|
||||
grpRo.WochenSummen = ErstelleWochensummen(config.StartDate, config.EndDate, null);
|
||||
|
||||
if (item.Employee != null)
|
||||
{
|
||||
grpRo.ObjectOid = item.Employee.EmployeeOid;
|
||||
grpRo.ObjectTid = TableID.Employee;
|
||||
}
|
||||
else if (item.Customer != null)
|
||||
{
|
||||
grpRo.ObjectOid = item.Customer.CustomerOid;
|
||||
grpRo.ObjectTid = TableID.Customer;
|
||||
}
|
||||
foreach (var sc in item.SupportConcepts)
|
||||
{
|
||||
grpRo.CostBearer2SupportConceptList.Add(sc.SupportConcept2CostBearer);
|
||||
|
||||
foreach (var sr in sc.ServiceRecords)
|
||||
{
|
||||
rootRo.ServiceRecords.Add(sr);
|
||||
grpRo.ServiceRecords.Add(sr);
|
||||
|
||||
var ws = grpRo.WochenSummen.FirstOrDefault(w => w.WocheStart <= sr.Start && sr.Start < w.WocheEnde.AddDays(1));
|
||||
|
||||
if (ws != null)
|
||||
{
|
||||
ws.ServiceRecords.Add(sr);
|
||||
if (!ws.IstStunden.HasValue)
|
||||
{
|
||||
ws.IstStunden = 0;
|
||||
|
||||
Reference in New Issue
Block a user