From bf0bad8f4c49754bc2692ac538fe7b5e2cfcca64 Mon Sep 17 00:00:00 2001 From: Alexandra Date: Tue, 6 Jun 2023 08:29:44 +0200 Subject: [PATCH] SPZLeverkusen/CustomReportCreator --- .../SPZLeverkusen/CustomReportCreator.cs | 44 +++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/ReportImp/SPZLeverkusen/CustomReportCreator.cs b/ReportImp/SPZLeverkusen/CustomReportCreator.cs index 3ca55d448..ed868dfbc 100644 --- a/ReportImp/SPZLeverkusen/CustomReportCreator.cs +++ b/ReportImp/SPZLeverkusen/CustomReportCreator.cs @@ -18,14 +18,15 @@ namespace SPZLeverkusen if (lROs.Count > 0) { - var rootReport = CreateServicesOverviewReportForRo(lROs[0], serviceCategoryOid); - rootReport.CreateDocument(); + if (rootReport.Pages.Count == 0) + rootReport.CreateDocument(); for (int i = 1; i < lROs.Count; i++) { var lNext = CreateServicesOverviewReportForRo(lROs[i], serviceCategoryOid); - //lNext.CreateDocument(); + if (lNext.Pages.Count == 0) + lNext.CreateDocument(); rootReport.Pages.AddRange(lNext.Pages); } @@ -45,6 +46,43 @@ namespace SPZLeverkusen } + 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.CreateAlt(coid, month, year, false, orgaOid ?? 0, empOid ?? 0, startDay, endDay, serviceCategoryOid); + if (ro.Services != null && ro.Services.Count == 0) + ro = CreateLeerenEintragFuerRO(ro); + + if (ro != null) + { + roList.Add(ro); + } + } + + if (roList.Count > 0) + { + + var rootReport = CreateServicesOverviewReportForRo(roList[0], serviceCategoryOid); + if (rootReport.Pages.Count == 0) + rootReport.CreateDocument(); + + for (int i = 1; i < roList.Count; i++) + { + var lNext = CreateServicesOverviewReportForRo(roList[i], serviceCategoryOid); + if (lNext.Pages.Count == 0) + lNext.CreateDocument(); + rootReport.Pages.AddRange(lNext.Pages); + } + + return rootReport; + } + return new XtraReport(); + + } + private ServicesOverviewRO CreateLeerenEintragFuerRO(ServicesOverviewRO ro) { var scs = DAOFactory.SearchDAO.GetAllActiveSupportConceptsByCustomers(new List() { ro.CustomerOid }, false).ToList();