BP-801 fix orga unit was missed
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlannedDataController.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlannedDataController.java
index e251a3b..fa3a417 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlannedDataController.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/planning/PlannedDataController.java
@@ -446,7 +446,7 @@
if (allDaySearch) {
startDate = DateHelper.getStartOfDay(validFrom);
- endDate = DateHelper.getEndOfThisDay(validTo);
+ endDate = DateHelper.getEndOfDay(validTo);
}
List<StandbyScheduleBody> listBodies = standbyScheduleBodyRepository.findData(groupIds, startDate, endDate,
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/reports/ReportController.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/reports/ReportController.java
index f31dd5d..2a0f491 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/reports/ReportController.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/controller/reports/ReportController.java
@@ -106,9 +106,10 @@
private String workDirectory;
private static String REPORT_NAME = "report for ";
private static final String APP_PROPERTIES_NAME = "/application.properties";
- private static String REPORT_MAX10_GROUPS = "Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe";
- private static String REPORT_ALL_GROUPS = "Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details";
- private static String REPORT_ONE_USER = "Persönlicher_Einsatzplan";
+ public static String REPORT_MAX10_GROUPS = "Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe";
+ public static String REPORT_MAX10_GROUPS_ONLY_NAMES = "Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_nur_Name";
+ public static String REPORT_ALL_GROUPS = "Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details";
+ public static String REPORT_ONE_USER = "Persönlicher_Einsatzplan";
private static final Set<String> allowedReports = new HashSet<>(Arrays.asList("rptdesign"));
private JsonElement reportConfig;
@@ -172,7 +173,8 @@
public File generateReport(ReportDto reportDto) throws SpException {
List<ReportInputDto> inputDtos = null;
- if (reportDto.getReportName().equals(REPORT_MAX10_GROUPS)) {
+ if (reportDto.getReportName().equals(REPORT_MAX10_GROUPS)
+ || reportDto.getReportName().equals(REPORT_MAX10_GROUPS_ONLY_NAMES)) {
LOGGER.info(REPORT_NAME + REPORT_MAX10_GROUPS);
inputDtos = reportGroupDtoConverter.get10Rows(reportDto);
} else {
@@ -495,7 +497,7 @@
task.setParameterValue("user", "--");
} else {
- if (reportDto.getStandByList() != null && standbyListRepository.exists(reportDto.getStandByListId())) {
+ if (reportDto.getStandByListId() != null && standbyListRepository.exists(reportDto.getStandByListId())) {
StandbyList sbl = standbyListRepository.findOne(reportDto.getStandByListId());
task.setParameterValue("liste", sbl.getTitle());
} else {
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/UserSelectionDto.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/UserSelectionDto.java
index 95b6550..7b0bac1 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/UserSelectionDto.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/UserSelectionDto.java
@@ -50,6 +50,7 @@
private AddressDto privateAddress;
private ContactDataDto businessContactData;
private ContactDataDto privateContactData;
+ private OrganisationDto organisation;
public UserSelectionDto() {
/** default constructor. */
@@ -262,4 +263,18 @@
public void setPrivateContactData(ContactDataDto privateContactData) {
this.privateContactData = privateContactData;
}
+
+ /**
+ * @return the organisation
+ */
+ public OrganisationDto getOrganisation() {
+ return organisation;
+ }
+
+ /**
+ * @param organisation the organisation to set
+ */
+ public void setOrganisation(OrganisationDto organisation) {
+ this.organisation = organisation;
+ }
}
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupDtoConverter.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupDtoConverter.java
index ff36962..b112b92 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupDtoConverter.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupDtoConverter.java
@@ -14,12 +14,16 @@
import java.util.ArrayList;
import java.util.Date;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.apache.log4j.Logger;
import org.eclipse.openk.sp.controller.planning.PlannedDataController;
+import org.eclipse.openk.sp.controller.reports.ReportController;
import org.eclipse.openk.sp.db.converter.EntityConverter;
import org.eclipse.openk.sp.db.dao.StandbyGroupRepository;
+import org.eclipse.openk.sp.db.dao.StandbyListRepository;
import org.eclipse.openk.sp.db.model.StandbyGroup;
import org.eclipse.openk.sp.dto.StandbyGroupSelectionDto;
import org.eclipse.openk.sp.dto.StandbyScheduleBodySelectionDto;
@@ -40,6 +44,9 @@
StandbyGroupRepository standbyGroupRepository;
@Autowired
+ StandbyListRepository standbyListRepository;
+
+ @Autowired
private PlannedDataController plannedDataController;
@Autowired
@@ -75,6 +82,8 @@
}
}
+ Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
+
// convert to rows
Date dateIndex = DateHelper.getStartOfDay(reportDto.getValidFrom());
@@ -82,7 +91,7 @@
// fill groups from 1 to 10
// only groups that are not empty in the interval of time
- addReportRow(reportDto, inputDto, plan, dateIndex, groupIdArray);
+ addReportRow(reportDto, inputDto, plan, dateIndex, groupIdArray, lastBodyMap);
dateIndex = DateHelper.addDaysToDate(dateIndex, 1);
@@ -92,7 +101,7 @@
}
public ReportGroupDto addReportRow(ReportDto reportDto, List<ReportInputDto> inputDto, StandbyScheduleDto plan,
- Date dateIndex, Long[] groupIdArray) {
+ Date dateIndex, Long[] groupIdArray, Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap) {
PlanRowsDto row = plan.getRow(dateIndex);
@@ -118,22 +127,15 @@
List<StandbyScheduleBodySelectionDto> dayGroupList = row.getGroupList(groupId);
if (dayGroupList != null) {
- if (dayGroupList.isEmpty()) {
- // add empty placeholder
- StandbyScheduleBodySelectionDto placeHoder = new StandbyScheduleBodySelectionDto();
- dayGroupList.add(placeHoder);
- StandbyGroup standbyGroup = standbyGroupRepository.findOne(groupId);
- StandbyGroupSelectionDto dto = (StandbyGroupSelectionDto) entityConverter
- .convertEntityToDto(standbyGroup, new StandbyGroupSelectionDto());
- placeHoder.setStandbyGroup(dto);
-
- }
+ checkEmpty(dayGroupList, groupId);
for (StandbyScheduleBodySelectionDto standbyScheduleBodySelectionDto : dayGroupList) {
try {
- addUserString(i + 1, standbyScheduleBodySelectionDto, reportGroupDto);
+
+ addUserString(i + 1, standbyScheduleBodySelectionDto, reportGroupDto, reportDto,
+ lastBodyMap);
} catch (Exception e) {
LOGGER.info("Can't set ScheduleBody " + standbyScheduleBodySelectionDto.getId()
+ ". Error on User or Group!");
@@ -148,26 +150,71 @@
return reportGroupDto;
}
+ private void checkEmpty(List<StandbyScheduleBodySelectionDto> dayGroupList, Long groupId) {
+ if (dayGroupList.isEmpty()) {
+ // add empty placeholder
+ StandbyScheduleBodySelectionDto placeHoder = new StandbyScheduleBodySelectionDto();
+ dayGroupList.add(placeHoder);
+ StandbyGroup standbyGroup = standbyGroupRepository.findOne(groupId);
+
+ StandbyGroupSelectionDto dto = (StandbyGroupSelectionDto) entityConverter.convertEntityToDto(standbyGroup,
+ new StandbyGroupSelectionDto());
+ placeHoder.setStandbyGroup(dto);
+
+ }
+ }
+
public void addUserString(int i, StandbyScheduleBodySelectionDto standbyScheduleBodySelectionDto,
- ReportGroupDto reportGroupDto) throws SpException {
+ ReportGroupDto reportGroupDto, ReportDto reportDto, Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap)
+ throws SpException {
- String userString = userString(standbyScheduleBodySelectionDto);
+ StandbyScheduleBodySelectionDto lastBody = lastBodyMap
+ .get(standbyScheduleBodySelectionDto.getStandbyGroup().getId());
+
+ String userString = userString(lastBody, standbyScheduleBodySelectionDto, reportDto);
+
String str = reportGroupDto.getUserX(i);
-
- str = ((str == null) ? "" : (str + "\n")) + userString;
+ str = ((str == null || str.equals("")) ? "" : (str + "\n")) + userString;
+ str = str.trim();
reportGroupDto.setUserX(i, str);
reportGroupDto.setGroupX(i, standbyScheduleBodySelectionDto.getStandbyGroup());
+ if (standbyScheduleBodySelectionDto.getId() != null) {
+ // remember last body in this group
+ lastBodyMap.put(standbyScheduleBodySelectionDto.getStandbyGroup().getId(), standbyScheduleBodySelectionDto);
+ }
}
- public String userString(StandbyScheduleBodySelectionDto body) {
- String userString = "";
- if (body.getUser() != null) {
+ public String userString(StandbyScheduleBodySelectionDto lastBody, StandbyScheduleBodySelectionDto body,
+ ReportDto reportDto) {
- userString = body.getUser().getFirstname() + " " + body.getUser().getLastname() + "\n"
- + body.getUser().getPrivateContactData().getPhone() + "\n"
- + body.getUser().getBusinessContactData().getCellphone() + "\n\n";
+ String userString = "";
+
+ if (body.getUser() != null && reportDto != null) {
+
+ Long lastBodyId = (lastBody != null) ? lastBody.getUser().getId().longValue() : null;
+ long bodyId = body.getUser().getId().longValue();
+
+ String reportName = reportDto.getReportName();
+ userString = body.getUser().getFirstname() + " " + body.getUser().getLastname();
+
+ if (reportName.equals(ReportController.REPORT_MAX10_GROUPS)) {
+
+ userString += "\n" + body.getUser().getPrivateContactData().getPhone() + "\n"
+ + body.getUser().getBusinessContactData().getCellphone() + "\n";
+
+ // print every body on this report
+ lastBodyId = null;
+ }
+
+ Date dayStart = DateHelper.getStartOfDay(body.getValidFrom());
+
+ if ((lastBodyId != null) && (body.getValidFrom().getTime() == dayStart.getTime())
+ && (lastBodyId.longValue() == bodyId)) {
+ userString = "";
+ }
+
}
return userString;
diff --git a/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe.rptdesign b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe.rptdesign
index d4286eb..9f824c3 100644
--- a/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe.rptdesign
+++ b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe.rptdesign
@@ -682,7 +682,7 @@
<text-data id="456">
<property name="backgroundColor">#FFFFFF</property>
<property name="fontFamily">sans-serif</property>
- <property name="fontSize">12pt</property>
+ <property name="fontSize">14pt</property>
<property name="fontWeight">bold</property>
<property name="color">black</property>
<property name="paddingTop">5pt</property>
diff --git a/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details.rptdesign b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details.rptdesign
index fa930c7..c7e7dfd 100644
--- a/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details.rptdesign
+++ b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_mit_Details.rptdesign
@@ -595,7 +595,7 @@
<text-data id="349">
<property name="backgroundColor">#FFFFFF</property>
<property name="fontFamily">sans-serif</property>
- <property name="fontSize">12pt</property>
+ <property name="fontSize">14pt</property>
<property name="fontWeight">bold</property>
<property name="color">black</property>
<property name="paddingTop">5pt</property>
@@ -603,7 +603,44 @@
<property name="whiteSpace">nowrap</property>
<property name="pageBreakAfter">auto</property>
<property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">"Diensthabende Mitarbeiter je Bereitschaftsgruppe mit Details"</expression>
+ <expression name="valueExpr">"Bereitschaftsdienst der Liste '" + params["liste"].value + "'"</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="356">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">12pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingTop">0pt</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Zeitraum: " + params["von"].value + " - " + params["bis"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="99">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Planart: " + params["reportName"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="474">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Ebene: " + params["reportLevel"].value</expression>
<property name="contentType">html</property>
</text-data>
<text-data id="461">
@@ -624,31 +661,6 @@
<expression name="valueExpr">params["customText3"].value</expression>
<property name="contentType">html</property>
</text-data>
- <text-data id="99">
- <property name="backgroundColor">#FFFFFF</property>
- <property name="fontFamily">sans-serif</property>
- <property name="fontSize">10pt</property>
- <property name="fontWeight">bold</property>
- <property name="color">#000000</property>
- <property name="paddingBottom">0pt</property>
- <property name="pageBreakAfter">auto</property>
- <property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">params["reportLevel"].value</expression>
- <property name="contentType">html</property>
- </text-data>
- <text-data id="356">
- <property name="backgroundColor">#FFFFFF</property>
- <property name="fontFamily">sans-serif</property>
- <property name="fontSize">10pt</property>
- <property name="fontWeight">bold</property>
- <property name="color">#000000</property>
- <property name="paddingTop">0pt</property>
- <property name="paddingBottom">0pt</property>
- <property name="pageBreakAfter">auto</property>
- <property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">params["liste"].value + ", " + params["von"].value + " - " + params["bis"].value</expression>
- <property name="contentType">html</property>
- </text-data>
<table id="22">
<property name="fontFamily">"Arial"</property>
<property name="fontSize">12pt</property>
diff --git a/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_nur_Name.rptdesign b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_nur_Name.rptdesign
new file mode 100644
index 0000000..a4d2aae
--- /dev/null
+++ b/oKBereitschaftsplanungBackend/src/main/resources/reports/Diensthabende_Mitarbeiter_je_Bereitschaftsgruppe_nur_Name.rptdesign
@@ -0,0 +1,1123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
+ <property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
+ <property name="units">in</property>
+ <property name="iconFile">/templates/blank_report.gif</property>
+ <property name="layoutPreference">auto layout</property>
+ <property name="bidiLayoutOrientation">ltr</property>
+ <property name="imageDPI">96</property>
+ <parameters>
+ <scalar-parameter name="liste" id="100">
+ <property name="valueType">static</property>
+ <property name="dataType">string</property>
+ <property name="distinct">true</property>
+ <list-property name="selectionList"/>
+ <property name="paramType">simple</property>
+ <property name="controlType">text-box</property>
+ <structure name="format">
+ <property name="category">Unformatted</property>
+ </structure>
+ </scalar-parameter>
+ <scalar-parameter name="von" id="101">
+ <property name="valueType">static</property>
+ <property name="dataType">string</property>
+ <property name="distinct">true</property>
+ <list-property name="selectionList"/>
+ <property name="paramType">simple</property>
+ <property name="controlType">text-box</property>
+ <structure name="format">
+ <property name="category">Unformatted</property>
+ </structure>
+ </scalar-parameter>
+ <scalar-parameter name="bis" id="102">
+ <property name="valueType">static</property>
+ <property name="dataType">string</property>
+ <property name="distinct">true</property>
+ <list-property name="selectionList"/>
+ <property name="paramType">simple</property>
+ <property name="controlType">text-box</property>
+ <structure name="format">
+ <property name="category">Unformatted</property>
+ </structure>
+ </scalar-parameter>
+ </parameters>
+ <data-sources>
+ <oda-data-source extensionID="org.eclipse.birt.data.oda.pojo" name="Data Source" id="4">
+ <list-property name="privateDriverProperties">
+ <ex-property>
+ <name>SynchronizeClassPath</name>
+ <value>true</value>
+ </ex-property>
+ <ex-property>
+ <name>pojoClassPath</name>
+ </ex-property>
+ </list-property>
+ </oda-data-source>
+ </data-sources>
+ <data-sets>
+ <oda-data-set extensionID="org.eclipse.birt.data.oda.pojo.dataSet" name="Data Set" id="5">
+ <list-property name="columnHints">
+ <structure>
+ <property name="columnName">FromDate</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">FromDate</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group1</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group1</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User1</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User1</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group2</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group2</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group3</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group3</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group4</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group4</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group5</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group5</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group6</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group6</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group7</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group7</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group8</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group8</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group9</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group9</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">Group10</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">Group10</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User2</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User2</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User3</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User3</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User4</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User4</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User5</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User5</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User6</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User6</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User7</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User7</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User8</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User8</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User9</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User9</text-property>
+ </structure>
+ <structure>
+ <property name="columnName">User10</property>
+ <property name="analysis">dimension</property>
+ <text-property name="heading">User10</text-property>
+ </structure>
+ </list-property>
+ <list-property name="parameters"/>
+ <structure name="cachedMetaData">
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">FromDate</property>
+ <property name="dataType">date</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">Group1</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">3</property>
+ <property name="name">User1</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">4</property>
+ <property name="name">Group2</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">5</property>
+ <property name="name">Group3</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">6</property>
+ <property name="name">Group4</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">7</property>
+ <property name="name">Group5</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">8</property>
+ <property name="name">Group6</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">9</property>
+ <property name="name">Group7</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">10</property>
+ <property name="name">Group8</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">11</property>
+ <property name="name">Group9</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">12</property>
+ <property name="name">Group10</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">13</property>
+ <property name="name">User2</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">14</property>
+ <property name="name">User3</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">15</property>
+ <property name="name">User4</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">16</property>
+ <property name="name">User5</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">17</property>
+ <property name="name">User6</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">18</property>
+ <property name="name">User7</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">19</property>
+ <property name="name">User8</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">20</property>
+ <property name="name">User9</property>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="position">21</property>
+ <property name="name">User10</property>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ </structure>
+ <property name="dataSource">Data Source</property>
+ <list-property name="resultSet">
+ <structure>
+ <property name="position">1</property>
+ <property name="name">FromDate</property>
+ <property name="nativeName">FromDate</property>
+ <property name="dataType">date</property>
+ <property name="nativeDataType">91</property>
+ </structure>
+ <structure>
+ <property name="position">2</property>
+ <property name="name">Group1</property>
+ <property name="nativeName">Group1</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">3</property>
+ <property name="name">User1</property>
+ <property name="nativeName">User1</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">4</property>
+ <property name="name">Group2</property>
+ <property name="nativeName">Group2</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">5</property>
+ <property name="name">Group3</property>
+ <property name="nativeName">Group3</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">6</property>
+ <property name="name">Group4</property>
+ <property name="nativeName">Group4</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">7</property>
+ <property name="name">Group5</property>
+ <property name="nativeName">Group5</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">8</property>
+ <property name="name">Group6</property>
+ <property name="nativeName">Group6</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">9</property>
+ <property name="name">Group7</property>
+ <property name="nativeName">Group7</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">10</property>
+ <property name="name">Group8</property>
+ <property name="nativeName">Group8</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">11</property>
+ <property name="name">Group9</property>
+ <property name="nativeName">Group9</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">12</property>
+ <property name="name">Group10</property>
+ <property name="nativeName">Group10</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">13</property>
+ <property name="name">User2</property>
+ <property name="nativeName">User2</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">14</property>
+ <property name="name">User3</property>
+ <property name="nativeName">User3</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">15</property>
+ <property name="name">User4</property>
+ <property name="nativeName">User4</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">16</property>
+ <property name="name">User5</property>
+ <property name="nativeName">User5</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">17</property>
+ <property name="name">User6</property>
+ <property name="nativeName">User6</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">18</property>
+ <property name="name">User7</property>
+ <property name="nativeName">User7</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">19</property>
+ <property name="name">User8</property>
+ <property name="nativeName">User8</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">20</property>
+ <property name="name">User9</property>
+ <property name="nativeName">User9</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ <structure>
+ <property name="position">21</property>
+ <property name="name">User10</property>
+ <property name="nativeName">User10</property>
+ <property name="dataType">string</property>
+ <property name="nativeDataType">1</property>
+ </structure>
+ </list-property>
+ <xml-property name="queryText"><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<PojoQuery appContextKey="APP_CONTEXT_KEY_OK_DATASET" dataSetClass="org.eclipse.openk.sp.util.MockReportInputDto" version="1.0">
+ <ClassColumnMappings>
+ <ColumnMapping index="1" name="FromDate" odaDataType="Date">
+ <Method name="getFromDate"/>
+ </ColumnMapping>
+ <ClassColumnMappings>
+ <ColumnMapping index="2" name="Group1" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup1"/>
+ </ClassColumnMappings>
+ <ColumnMapping index="3" name="User1" odaDataType="String">
+ <Method name="getUser1"/>
+ </ColumnMapping>
+ <ClassColumnMappings>
+ <ColumnMapping index="4" name="Group2" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup2"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="5" name="Group3" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup3"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="6" name="Group4" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup4"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="7" name="Group5" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup5"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="8" name="Group6" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup6"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="9" name="Group7" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup7"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="10" name="Group8" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup8"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="11" name="Group9" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup9"/>
+ </ClassColumnMappings>
+ <ClassColumnMappings>
+ <ColumnMapping index="12" name="Group10" odaDataType="String">
+ <Method name="getTitle"/>
+ </ColumnMapping>
+ <Method name="getGroup10"/>
+ </ClassColumnMappings>
+ <ColumnMapping index="13" name="User2" odaDataType="String">
+ <Method name="getUser2"/>
+ </ColumnMapping>
+ <ColumnMapping index="14" name="User3" odaDataType="String">
+ <Method name="getUser3"/>
+ </ColumnMapping>
+ <ColumnMapping index="15" name="User4" odaDataType="String">
+ <Method name="getUser4"/>
+ </ColumnMapping>
+ <ColumnMapping index="16" name="User5" odaDataType="String">
+ <Method name="getUser5"/>
+ </ColumnMapping>
+ <ColumnMapping index="17" name="User6" odaDataType="String">
+ <Method name="getUser6"/>
+ </ColumnMapping>
+ <ColumnMapping index="18" name="User7" odaDataType="String">
+ <Method name="getUser7"/>
+ </ColumnMapping>
+ <ColumnMapping index="19" name="User8" odaDataType="String">
+ <Method name="getUser8"/>
+ </ColumnMapping>
+ <ColumnMapping index="20" name="User9" odaDataType="String">
+ <Method name="getUser9"/>
+ </ColumnMapping>
+ <ColumnMapping index="21" name="User10" odaDataType="String">
+ <Method name="getUser10"/>
+ </ColumnMapping>
+ <Method name="getReportGroupDto"/>
+ </ClassColumnMappings>
+</PojoQuery>
+]]></xml-property>
+ <xml-property name="designerValues"><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+<model:DesignValues xmlns:design="http://www.eclipse.org/datatools/connectivity/oda/design" xmlns:model="http://www.eclipse.org/birt/report/model/adapter/odaModel">
+ <Version>2.0</Version>
+ <design:ResultSets derivedMetaData="true">
+ <design:resultSetDefinitions>
+ <design:resultSetColumns>
+ <design:resultColumnDefinitions>
+ <design:attributes>
+ <design:identifier>
+ <design:name>ValidFrom</design:name>
+ <design:position>1</design:position>
+ </design:identifier>
+ <design:nativeDataTypeCode>91</design:nativeDataTypeCode>
+ <design:precision>-1</design:precision>
+ <design:scale>-1</design:scale>
+ <design:nullability>Unknown</design:nullability>
+ </design:attributes>
+ <design:usageHints>
+ <design:label>ValidFrom</design:label>
+ <design:formattingHints/>
+ </design:usageHints>
+ </design:resultColumnDefinitions>
+ <design:resultColumnDefinitions>
+ <design:attributes>
+ <design:identifier>
+ <design:name>ValidTo</design:name>
+ <design:position>2</design:position>
+ </design:identifier>
+ <design:nativeDataTypeCode>91</design:nativeDataTypeCode>
+ <design:precision>-1</design:precision>
+ <design:scale>-1</design:scale>
+ <design:nullability>Unknown</design:nullability>
+ </design:attributes>
+ <design:usageHints>
+ <design:label>ValidTo</design:label>
+ <design:formattingHints/>
+ </design:usageHints>
+ </design:resultColumnDefinitions>
+ </design:resultSetColumns>
+ <design:criteria/>
+ </design:resultSetDefinitions>
+ </design:ResultSets>
+</model:DesignValues>]]></xml-property>
+ <list-property name="privateDriverProperties">
+ <ex-property>
+ <name>methodNameRegx</name>
+ <value>get*</value>
+ </ex-property>
+ <ex-property>
+ <name>pojoClass</name>
+ <value>org.eclipse.openk.sp.dto.report.ReportInputDto</value>
+ </ex-property>
+ </list-property>
+ </oda-data-set>
+ </data-sets>
+ <page-setup>
+ <simple-master-page name="Simple MasterPage" id="2">
+ <property name="type">a3</property>
+ <property name="orientation">landscape</property>
+ <property name="topMargin">0.09375in</property>
+ <property name="bottomMargin">0.052083333333333336in</property>
+ <property name="headerHeight">0.3in</property>
+ <property name="footerHeight">0.1in</property>
+ <page-header>
+ <grid id="337">
+ <property name="fontFamily">"Arial"</property>
+ <property name="fontSize">6pt</property>
+ <property name="verticalAlign">top</property>
+ <property name="height">10pt</property>
+ <property name="width">0.625in</property>
+ <list-property name="boundDataColumns">
+ <structure>
+ <property name="name">Column Binding</property>
+ <expression name="expression" type="javascript">params["created"].value</expression>
+ <property name="dataType">string</property>
+ <property name="allowExport">true</property>
+ </structure>
+ <structure>
+ <property name="name">Column Binding_1</property>
+ <expression name="expression" type="javascript">params["reportLevel"].value</expression>
+ <property name="dataType">string</property>
+ <property name="allowExport">true</property>
+ </structure>
+ <structure>
+ <property name="name">Column Binding_2</property>
+ <expression name="expression" type="javascript">params["reportName"].value</expression>
+ <property name="dataType">string</property>
+ <property name="allowExport">true</property>
+ </structure>
+ </list-property>
+ <column id="338">
+ <property name="width">20pt</property>
+ </column>
+ <column id="339">
+ <property name="width">5pt</property>
+ </column>
+ <column id="340">
+ <property name="width">20pt</property>
+ </column>
+ <column id="371">
+ <property name="width">80pt</property>
+ </column>
+ <column id="459">
+ <property name="width">60pt</property>
+ </column>
+ <column id="460">
+ <property name="width">360pt</property>
+ </column>
+ <column id="461">
+ <property name="width">0.21875in</property>
+ </column>
+ <row id="341">
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">6pt</property>
+ <property name="color">#C0C0C0</property>
+ <property name="height">8pt</property>
+ <cell id="342">
+ <auto-text id="343">
+ <property name="textAlign">right</property>
+ <property name="type">page-number</property>
+ </auto-text>
+ </cell>
+ <cell id="344">
+ <text id="345">
+ <property name="contentType">plain</property>
+ <text-property name="content"><![CDATA[/]]></text-property>
+ </text>
+ </cell>
+ <cell id="346">
+ <auto-text id="463">
+ <property name="textAlign">left</property>
+ <property name="type">total-page</property>
+ </auto-text>
+ </cell>
+ <cell id="370">
+ <data id="378">
+ <property name="resultSetColumn">Column Binding</property>
+ </data>
+ </cell>
+ <cell id="464">
+ <data id="465">
+ <property name="resultSetColumn">Column Binding_1</property>
+ </data>
+ </cell>
+ <cell id="466">
+ <data id="380">
+ <property name="resultSetColumn">Column Binding_2</property>
+ </data>
+ </cell>
+ <cell id="372"/>
+ </row>
+ </grid>
+ </page-header>
+ </simple-master-page>
+ </page-setup>
+ <body>
+ <text-data id="456">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">14pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">black</property>
+ <property name="paddingTop">5pt</property>
+ <property name="paddingBottom">5pt</property>
+ <property name="whiteSpace">nowrap</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Bereitschaftsdienst der Liste '" + params["liste"].value + "'"</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="477">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">12pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingTop">0pt</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Zeitraum: " + params["von"].value + " - " + params["bis"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="99">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Planart: " + params["reportName"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="478">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">#000000</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Ebene: " + params["reportLevel"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="476">
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <expression name="valueExpr">"Stand: " + params["created"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <table id="373">
+ <property name="fontFamily">"Arial"</property>
+ <property name="fontSize">9pt</property>
+ <property name="borderBottomColor">#EBEBEB</property>
+ <property name="borderBottomStyle">solid</property>
+ <property name="borderBottomWidth">thin</property>
+ <property name="borderLeftColor">#EBEBEB</property>
+ <property name="borderLeftStyle">solid</property>
+ <property name="borderLeftWidth">thin</property>
+ <property name="borderRightColor">#EBEBEB</property>
+ <property name="borderRightStyle">solid</property>
+ <property name="borderRightWidth">thin</property>
+ <property name="borderTopColor">#EBEBEB</property>
+ <property name="borderTopStyle">solid</property>
+ <property name="borderTopWidth">thin</property>
+ <property name="textAlign">center</property>
+ <property name="dataSet">Data Set</property>
+ <list-property name="boundDataColumns">
+ <structure>
+ <property name="name">FromDate</property>
+ <text-property name="displayName">FromDate</text-property>
+ <expression name="expression" type="javascript">dataSetRow["FromDate"]</expression>
+ <property name="dataType">date</property>
+ </structure>
+ <structure>
+ <property name="name">Group1</property>
+ <text-property name="displayName">Group1</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group1"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group2</property>
+ <text-property name="displayName">Group2</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group2"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group3</property>
+ <text-property name="displayName">Group3</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group3"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group4</property>
+ <text-property name="displayName">Group4</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group4"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group5</property>
+ <text-property name="displayName">Group5</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group5"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group6</property>
+ <text-property name="displayName">Group6</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group6"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group7</property>
+ <text-property name="displayName">Group7</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group7"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group8</property>
+ <text-property name="displayName">Group8</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group8"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group9</property>
+ <text-property name="displayName">Group9</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group9"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">Group10</property>
+ <text-property name="displayName">Group10</text-property>
+ <expression name="expression" type="javascript">dataSetRow["Group10"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User9</property>
+ <text-property name="displayName">User9</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User9"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User1</property>
+ <text-property name="displayName">User1</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User1"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User2</property>
+ <text-property name="displayName">User2</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User2"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User7</property>
+ <text-property name="displayName">User7</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User7"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User6</property>
+ <text-property name="displayName">User6</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User6"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User8</property>
+ <text-property name="displayName">User8</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User8"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User10</property>
+ <text-property name="displayName">User10</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User10"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User3</property>
+ <text-property name="displayName">User3</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User3"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User4</property>
+ <text-property name="displayName">User4</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User4"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ <structure>
+ <property name="name">User5</property>
+ <text-property name="displayName">User5</text-property>
+ <expression name="expression" type="javascript">dataSetRow["User5"]</expression>
+ <property name="dataType">string</property>
+ </structure>
+ </list-property>
+ <property name="repeatHeader">true</property>
+ <property name="pageBreakInterval">0</property>
+ <column id="432"/>
+ <column id="433">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group1"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="434">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group2"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="435">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group3"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="436">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group4"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="437">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group5"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="438">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group6"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="439">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group7"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="440">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group8"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="441">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group9"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <column id="442">
+ <list-property name="visibility">
+ <structure>
+ <property name="format">all</property>
+ <expression name="valueExpr" type="javascript">row["Group10"] <= 0</expression>
+ </structure>
+ </list-property>
+ </column>
+ <header>
+ <row id="374">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontWeight">bold</property>
+ <property name="textAlign">left</property>
+ <cell id="375">
+ <label id="376">
+ <text-property name="text">Datum</text-property>
+ </label>
+ </cell>
+ <cell id="377">
+ <data id="401">
+ <property name="resultSetColumn">Group1</property>
+ </data>
+ </cell>
+ <cell id="379">
+ <data id="403">
+ <property name="resultSetColumn">Group2</property>
+ </data>
+ </cell>
+ <cell id="381">
+ <data id="405">
+ <property name="resultSetColumn">Group3</property>
+ </data>
+ </cell>
+ <cell id="383">
+ <data id="407">
+ <property name="resultSetColumn">Group4</property>
+ </data>
+ </cell>
+ <cell id="385">
+ <data id="409">
+ <property name="resultSetColumn">Group5</property>
+ </data>
+ </cell>
+ <cell id="387">
+ <data id="411">
+ <property name="resultSetColumn">Group6</property>
+ </data>
+ </cell>
+ <cell id="389">
+ <data id="413">
+ <property name="resultSetColumn">Group7</property>
+ </data>
+ </cell>
+ <cell id="391">
+ <data id="415">
+ <property name="resultSetColumn">Group8</property>
+ </data>
+ </cell>
+ <cell id="393">
+ <data id="417">
+ <property name="resultSetColumn">Group9</property>
+ </data>
+ </cell>
+ <cell id="395">
+ <data id="419">
+ <property name="resultSetColumn">Group10</property>
+ </data>
+ </cell>
+ </row>
+ </header>
+ <detail>
+ <row id="397">
+ <property name="fontFamily">sans-serif</property>
+ <property name="textAlign">left</property>
+ <list-property name="highlightRules">
+ <structure>
+ <property name="operator">eq</property>
+ <property name="backgroundColor">#EAEAEA</property>
+ <expression name="testExpr" type="javascript">row.__rownum % 2</expression>
+ <simple-property-list name="value1">
+ <value type="javascript">0</value>
+ </simple-property-list>
+ </structure>
+ </list-property>
+ <cell id="398">
+ <data id="399">
+ <structure name="dateTimeFormat">
+ <property name="category">Custom</property>
+ <property name="pattern">EE dd.MM.yy</property>
+ </structure>
+ <property name="resultSetColumn">FromDate</property>
+ </data>
+ </cell>
+ <cell id="400">
+ <data id="444">
+ <property name="resultSetColumn">User1</property>
+ </data>
+ </cell>
+ <cell id="402">
+ <data id="445">
+ <property name="resultSetColumn">User2</property>
+ </data>
+ </cell>
+ <cell id="404">
+ <data id="453">
+ <property name="resultSetColumn">User3</property>
+ </data>
+ </cell>
+ <cell id="406">
+ <data id="454">
+ <property name="resultSetColumn">User4</property>
+ </data>
+ </cell>
+ <cell id="408">
+ <data id="455">
+ <property name="resultSetColumn">User5</property>
+ </data>
+ </cell>
+ <cell id="410">
+ <data id="447">
+ <property name="resultSetColumn">User6</property>
+ </data>
+ </cell>
+ <cell id="412">
+ <data id="446">
+ <property name="resultSetColumn">User7</property>
+ </data>
+ </cell>
+ <cell id="414">
+ <data id="451">
+ <property name="resultSetColumn">User8</property>
+ </data>
+ </cell>
+ <cell id="416">
+ <data id="443">
+ <property name="resultSetColumn">User9</property>
+ </data>
+ </cell>
+ <cell id="418">
+ <data id="452">
+ <property name="resultSetColumn">User10</property>
+ </data>
+ </cell>
+ </row>
+ </detail>
+ <footer>
+ <row id="420">
+ <property name="fontFamily">sans-serif</property>
+ <cell id="421"/>
+ <cell id="422"/>
+ <cell id="423"/>
+ <cell id="424"/>
+ <cell id="425"/>
+ <cell id="426"/>
+ <cell id="427"/>
+ <cell id="428"/>
+ <cell id="429"/>
+ <cell id="430"/>
+ <cell id="431"/>
+ </row>
+ </footer>
+ </table>
+ </body>
+</report>
diff --git "a/oKBereitschaftsplanungBackend/src/main/resources/reports/Pers\303\266nlicher_Einsatzplan.rptdesign" "b/oKBereitschaftsplanungBackend/src/main/resources/reports/Pers\303\266nlicher_Einsatzplan.rptdesign"
index 61be070..06cf099 100644
--- "a/oKBereitschaftsplanungBackend/src/main/resources/reports/Pers\303\266nlicher_Einsatzplan.rptdesign"
+++ "b/oKBereitschaftsplanungBackend/src/main/resources/reports/Pers\303\266nlicher_Einsatzplan.rptdesign"
@@ -528,7 +528,7 @@
<text-data id="460">
<property name="backgroundColor">#FFFFFF</property>
<property name="fontFamily">sans-serif</property>
- <property name="fontSize">12pt</property>
+ <property name="fontSize">14pt</property>
<property name="fontWeight">bold</property>
<property name="color">black</property>
<property name="paddingTop">5pt</property>
@@ -536,7 +536,32 @@
<property name="whiteSpace">nowrap</property>
<property name="pageBreakAfter">auto</property>
<property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">"Persönlicher Einsatzplan für <H1>" + params["user"].value + "</H1>"</expression>
+ <expression name="valueExpr">"Persönlicher Einsatzplan für '" + params["user"].value + "'"</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="358">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">12pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">black</property>
+ <property name="paddingTop">0pt</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Zeitraum: " + params["von"].value + " - " + params["bis"].value</expression>
+ <property name="contentType">html</property>
+ </text-data>
+ <text-data id="462">
+ <property name="backgroundColor">#FFFFFF</property>
+ <property name="fontFamily">sans-serif</property>
+ <property name="fontSize">10pt</property>
+ <property name="fontWeight">bold</property>
+ <property name="color">black</property>
+ <property name="paddingBottom">0pt</property>
+ <property name="pageBreakAfter">auto</property>
+ <property name="pageBreakBefore">auto</property>
+ <expression name="valueExpr">"Ebene: " + params["reportLevel"].value</expression>
<property name="contentType">html</property>
</text-data>
<text-data id="461">
@@ -557,31 +582,6 @@
<expression name="valueExpr">params["customText3"].value</expression>
<property name="contentType">html</property>
</text-data>
- <text-data id="462">
- <property name="backgroundColor">#FFFFFF</property>
- <property name="fontFamily">sans-serif</property>
- <property name="fontSize">10pt</property>
- <property name="fontWeight">bold</property>
- <property name="color">black</property>
- <property name="paddingBottom">0pt</property>
- <property name="pageBreakAfter">auto</property>
- <property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">params["reportLevel"].value</expression>
- <property name="contentType">html</property>
- </text-data>
- <text-data id="358">
- <property name="backgroundColor">#FFFFFF</property>
- <property name="fontFamily">sans-serif</property>
- <property name="fontSize">10pt</property>
- <property name="fontWeight">bold</property>
- <property name="color">black</property>
- <property name="paddingTop">0pt</property>
- <property name="paddingBottom">0pt</property>
- <property name="pageBreakAfter">auto</property>
- <property name="pageBreakBefore">auto</property>
- <expression name="valueExpr">params["von"].value + " - " + params["bis"].value</expression>
- <property name="contentType">html</property>
- </text-data>
<table id="22">
<property name="fontFamily">"Arial"</property>
<property name="fontSize">12pt</property>
diff --git a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupDtoConverterTest.java b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupDtoConverterTest.java
index 42f8c75..be6abb0 100644
--- a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupDtoConverterTest.java
+++ b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupDtoConverterTest.java
@@ -17,9 +17,12 @@
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.eclipse.openk.sp.controller.planning.PlannedDataController;
+import org.eclipse.openk.sp.controller.reports.ReportController;
import org.eclipse.openk.sp.db.converter.EntityConverter;
import org.eclipse.openk.sp.db.dao.StandbyGroupRepository;
import org.eclipse.openk.sp.db.model.StandbyGroup;
@@ -81,6 +84,9 @@
StandbyScheduleBodySelectionDto sb = new StandbyScheduleBodySelectionDto();
+ ReportDto reportDto = new ReportDto();
+ reportDto.setReportName(ReportController.REPORT_MAX10_GROUPS_ONLY_NAMES);
+
sb.setValidFrom(new Date());
sb.setValidTo(new Date());
@@ -88,11 +94,15 @@
UserSmallSelectionDto user = (UserSmallSelectionDto) new Gson().fromJson(json, UserSmallSelectionDto.class);
sb.setUser(user);
- String result = reportGroupDtoConverter.userString(sb);
+ String result = reportGroupDtoConverter.userString(null, sb, reportDto);
+ assertNotNull(result);
+
+ reportDto.setReportName(ReportController.REPORT_MAX10_GROUPS);
+ result = reportGroupDtoConverter.userString(null, sb, reportDto);
assertNotNull(result);
sb.setUser(null);
- result = reportGroupDtoConverter.userString(sb);
+ result = reportGroupDtoConverter.userString(null, sb, reportDto);
assertNotNull(result);
}
@@ -102,6 +112,10 @@
FileHelperTest fh = new FileHelperTest();
ReportGroupDto reportGroupDto = new ReportGroupDto();
StandbyScheduleBodySelectionDto sb = new StandbyScheduleBodySelectionDto();
+ ReportDto reportDto = new ReportDto();
+ Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
+
+ reportDto.setReportName(ReportController.REPORT_MAX10_GROUPS_ONLY_NAMES);
sb.setValidFrom(new Date());
sb.setValidTo(new Date());
@@ -110,11 +124,16 @@
UserSmallSelectionDto user = (UserSmallSelectionDto) new Gson().fromJson(json, UserSmallSelectionDto.class);
sb.setUser(user);
- reportGroupDtoConverter.addUserString(1, sb, reportGroupDto);
+ json = fh.loadStringFromResource("testStandbyGroup.json");
+ StandbyGroupSelectionDto group = (StandbyGroupSelectionDto) new Gson().fromJson(json,
+ StandbyGroupSelectionDto.class);
+ sb.setStandbyGroup(group);
- reportGroupDtoConverter.addUserString(1, sb, reportGroupDto);
+ reportGroupDtoConverter.addUserString(1, sb, reportGroupDto, reportDto, lastBodyMap);
- reportGroupDtoConverter.addUserString(1, sb, reportGroupDto);
+ reportGroupDtoConverter.addUserString(1, sb, reportGroupDto, reportDto, lastBodyMap);
+
+ reportGroupDtoConverter.addUserString(1, sb, reportGroupDto, reportDto, lastBodyMap);
}
@@ -124,6 +143,9 @@
FileHelperTest fh = new FileHelperTest();
ReportGroupDto reportGroupDto = new ReportGroupDto();
StandbyScheduleBodySelectionDto sb = new StandbyScheduleBodySelectionDto();
+ ReportDto reportDto = new ReportDto();
+ Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
+ reportDto.setReportName(ReportController.REPORT_MAX10_GROUPS_ONLY_NAMES);
sb.setValidFrom(new Date());
sb.setValidTo(new Date());
@@ -132,7 +154,12 @@
UserSmallSelectionDto user = (UserSmallSelectionDto) new Gson().fromJson(json, UserSmallSelectionDto.class);
sb.setUser(user);
- reportGroupDtoConverter.addUserString(123, sb, reportGroupDto);
+ json = fh.loadStringFromResource("testStandbyGroup.json");
+ StandbyGroupSelectionDto standbyGroup = (StandbyGroupSelectionDto) new Gson().fromJson(json,
+ StandbyGroupSelectionDto.class);
+ sb.setStandbyGroup(standbyGroup);
+
+ reportGroupDtoConverter.addUserString(123, sb, reportGroupDto, reportDto, lastBodyMap);
}
@@ -144,14 +171,15 @@
StandbyScheduleDto plan = (StandbyScheduleDto) new Gson().fromJson(json, StandbyScheduleDto.class);
ReportDto reportDto = getReport();
+ Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
List<ReportInputDto> inputDto = new ArrayList<>();
Date dateIndex = DateHelper.getDate(2019, 2, 12);
Long[] groupIdArray = new Long[1];
groupIdArray[0] = new Long(1);
- ReportGroupDto result = reportGroupDtoConverter.addReportRow(reportDto, inputDto, plan, dateIndex,
- groupIdArray);
+ ReportGroupDto result = reportGroupDtoConverter.addReportRow(reportDto, inputDto, plan, dateIndex, groupIdArray,
+ lastBodyMap);
assertNotNull(result);
}