From cb5b510504ec8414eef8be315561c922d3e7c852 Mon Sep 17 00:00:00 2001 From: Alexandra Date: Thu, 10 Nov 2022 16:55:43 +0100 Subject: [PATCH] BetreutesWohnenWoellReports --- .../CustomReportCreator.cs | 43 ++++++++++++++++++- 1 file changed, 41 insertions(+), 2 deletions(-) diff --git a/ReportImp/BetreutesWohnenWoellReports/CustomReportCreator.cs b/ReportImp/BetreutesWohnenWoellReports/CustomReportCreator.cs index 569baedb1..1754900cb 100644 --- a/ReportImp/BetreutesWohnenWoellReports/CustomReportCreator.cs +++ b/ReportImp/BetreutesWohnenWoellReports/CustomReportCreator.cs @@ -51,6 +51,46 @@ namespace BeWo.BetreutesWohnenWoellReports } + public override XtraReport CreateServiceOverviewReportForCustomers(IList customerOids, int month, int year, long? orgaOid, long? empOid, long? serviceCategoryOid, int startDay, int endDay, bool nurFehlende) + { + var roList = new List(); + + foreach (var coid in customerOids) + { + var ro = ServicesOverviewRO.Create(coid, month, year, true, orgaOid ?? 0, empOid ?? 0, startDay, endDay, serviceCategoryOid); + + if (ro != null) + { + roList.Add(ro); + } + } + + var sortedList = roList.OrderBy(r => r.CustomerLastName + ", " + r.CustomerFirstName).ToList(); + + if (sortedList.Count > 0) + { + var rootReport = CreateServicesOverviewReportForRo(sortedList[0], serviceCategoryOid); + if (rootReport.Pages.Count == 0) + { + rootReport.CreateDocument(); + } + + for (int i = 1; i < sortedList.Count; i++) + { + var lNext = CreateServicesOverviewReportForRo(sortedList[i], serviceCategoryOid); + if (lNext.Pages.Count == 0) + { + lNext.CreateDocument(); + } + + rootReport.Pages.AddRange(lNext.Pages); + } + + return rootReport; + } + return new XtraReport(); + } + private XtraReport CreateServicesOverviewReportForRo(ServicesOverviewRO ro, long? serviceCategoryOid) { XtraReport report = null; @@ -79,8 +119,7 @@ namespace BeWo.BetreutesWohnenWoellReports } } - } - + } } report = AddReportToReport(report, flsRo); report = AddReportToReport(report, aslRo);