BP-839 fix wrong time in report (for different timzones)
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 de4c8ea..86de489 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
@@ -544,21 +544,21 @@
 			} else {
 				task.setParameterValue("liste", "--");
 			}
-			if (reportDto.getValidFrom() != null) {
+			if (reportDto.getValidFromDate() != null) {
 
 				String pattern = (reportDto.getReportName().equals(ReportController.REPORT_MAX10_GROUPS_ONLY_NAMES))
 						? shortDatePattern
 						: null;
 
-				task.setParameterValue("von", DateHelper.convertToLocalString(reportDto.getValidFrom(), pattern));
+				task.setParameterValue("von", DateHelper.convertToLocalString(reportDto.getValidFromDate(), pattern));
 			}
-			if (reportDto.getValidTo() != null) {
+			if (reportDto.getValidToDate() != null) {
 
 				String pattern = (reportDto.getReportName().equals(ReportController.REPORT_MAX10_GROUPS_ONLY_NAMES))
 						? shortDatePattern
 						: null;
 
-				task.setParameterValue("bis", DateHelper.convertToLocalString(reportDto.getValidTo(), pattern));
+				task.setParameterValue("bis", DateHelper.convertToLocalString(reportDto.getValidToDate(), pattern));
 			}
 			if (reportDto.getStatusId() != null && standbyStatusRepository.exists(reportDto.getStatusId())) {
 				StandbyStatus status = standbyStatusRepository.findOne(reportDto.getStatusId());
@@ -597,8 +597,8 @@
 
 		Long[] groupIds = null;
 
-		Date validFrom = (reportDto.getValidFrom());
-		Date validTo = (reportDto.getValidTo());
+		Date validFrom = (reportDto.getValidFromDate());
+		Date validTo = (reportDto.getValidToDate());
 		List<StandbyScheduleBody> result = null;
 		Long reportLevel = reportDto.getStatusId();
 
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/report/ReportDto.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/report/ReportDto.java
index 63ecc74..7b0abce 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/report/ReportDto.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/dto/report/ReportDto.java
@@ -17,9 +17,15 @@
 import javax.validation.constraints.NotNull;
 import javax.xml.bind.annotation.XmlRootElement;
 
+import org.apache.log4j.Logger;
+import org.eclipse.openk.common.Globals;
 import org.eclipse.openk.sp.abstracts.AbstractDto;
 import org.eclipse.openk.sp.db.model.StandbyGroup;
 import org.eclipse.openk.sp.db.model.StandbyList;
+import org.eclipse.openk.sp.exceptions.SpErrorEntry;
+import org.eclipse.openk.sp.exceptions.SpException;
+import org.eclipse.openk.sp.exceptions.SpExceptionEnum;
+import org.eclipse.openk.sp.util.DateHelper;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.annotation.JsonInclude.Include;
@@ -46,8 +52,10 @@
 	private StandbyList standByList;
 	private Long userId;
 	private Long statusId;
-	private Date validFrom;
-	private Date validTo;
+	private String validFrom;
+	private String validTo;
+	private Date validFromDate;
+	private Date validToDate;
 	private Integer defaultDayRange;
 	@NotNull(message = "Ebene muss angegeben werden")
 	private String reportLevel;
@@ -72,24 +80,20 @@
 		}
 	}
 
-	public Date getValidFrom() {
-		return validFrom;
+	public Date getValidFromDate() {
+		return validFromDate;
 	}
 
-	public void setValidFrom(Date from) {
-		this.validFrom = from;
+	public void setValidFromDate(Date from) {
+		this.validFromDate = from;
 	}
 
-	public Date getValidTo() {
-		return validTo;
+	public Date getValidToDate() {
+		return validToDate;
 	}
 
-//	public void setValidTo(String to) throws ParseException {
-//		this.validTo = DateHelper.getDateFromString(to, "yyyy-MM-dd HH:mm:ss");
-//	}
-
-	public void setValidTo(Date to) {
-		this.validTo = to;
+	public void setValidToDate(Date to) {
+		this.validToDate = to;
 	}
 
 	public Long getUserId() {
@@ -195,4 +199,48 @@
 	public void setCurrentDate(String currentDate) {
 		this.currentDate = currentDate;
 	}
+
+	/**
+	 * @return the validFrom
+	 */
+	public String getValidFrom() {
+		return validFrom;
+	}
+
+	/**
+	 * @param validFrom the validFrom to set
+	 */
+	public void setValidFrom(String validFrom) {
+		this.validFrom = validFrom;
+	}
+
+	/**
+	 * @return the validTo
+	 */
+	public String getValidTo() {
+		return validTo;
+	}
+
+	/**
+	 * @param validTo the validTo to set
+	 */
+	public void setValidTo(String validTo) {
+		this.validTo = validTo;
+	}
+	
+	public void createDatesFromStrings() throws SpException {
+		try {
+			if (this.getValidFrom() != null) {
+				this.setValidFromDate(DateHelper.getDateFromString(this.getValidFrom(), Globals.DATE_TIME_FORMAT));
+			}
+			if (this.getValidTo() != null) {
+				this.setValidToDate(DateHelper.getDateFromString(this.getValidTo(), Globals.DATE_TIME_FORMAT));
+			}
+		} catch (Exception e) {
+			Logger.getLogger(ReportDto.class).error(e, e);
+			SpErrorEntry ee = SpExceptionEnum.DEFAULT_EXCEPTION.getEntry();
+			ee.setE(e);
+			throw new SpException(ee);
+		}
+	}
 }
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/rest/reports/ReportRestService.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/rest/reports/ReportRestService.java
index 605c2e0..58c6cc4 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/rest/reports/ReportRestService.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/rest/reports/ReportRestService.java
@@ -102,8 +102,8 @@
 		reportDto.setUserId(userId);
 		reportDto.setReportLevel(reportLevel);
 
-		reportDto.setValidFrom(fromDate);
-		reportDto.setValidTo(toDate);
+		reportDto.setValidFromDate(fromDate);
+		reportDto.setValidToDate(toDate);
 
 		try {
 			File reportFile = reportController.generateReport(reportDto);
@@ -128,6 +128,7 @@
 			ReportDto reportDto) throws IOException {
 
 		try {
+			reportDto.createDatesFromStrings();
 			File reportFile = reportController.generateReport(reportDto);
 			
 
@@ -176,8 +177,8 @@
 			reportDto.setReportName(reportName);
 			reportDto.setStandByListId(Long.parseLong(standByListId));
 			reportDto.setStatusId(Long.parseLong(statusId));
-			reportDto.setValidFrom(new DateTime(validFrom).toDate());
-			reportDto.setValidTo(new DateTime(validTo).toDate());
+			reportDto.setValidFromDate(new DateTime(validFrom).toDate());
+			reportDto.setValidToDate(new DateTime(validTo).toDate());
 
 			File reportFile = reportController.generateReport(reportDto);
 			ModifyingInvokable<File> invokable = modusr -> reportFile;
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 e40ab3b..d4fb38a 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
@@ -61,8 +61,8 @@
 
 		StandbyScheduleFilterDto standbyScheduleFilterDto = new StandbyScheduleFilterDto();
 		standbyScheduleFilterDto.setStandbyListId(reportDto.getStandByListId());
-		standbyScheduleFilterDto.setValidFrom(reportDto.getValidFrom());
-		standbyScheduleFilterDto.setValidTo(reportDto.getValidTo());
+		standbyScheduleFilterDto.setValidFrom(reportDto.getValidFromDate());
+		standbyScheduleFilterDto.setValidTo(reportDto.getValidToDate());
 		boolean allDaySearch = false;
 
 		Long statusId = reportDto.getStatusId();
@@ -87,9 +87,9 @@
 		Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
 
 		// convert to rows
-		Date dateIndex = DateHelper.getStartOfDay(reportDto.getValidFrom());
+		Date dateIndex = DateHelper.getStartOfDay(reportDto.getValidFromDate());
 
-		while (DateHelper.isDateBefore(dateIndex, reportDto.getValidTo())) {
+		while (DateHelper.isDateBefore(dateIndex, reportDto.getValidToDate())) {
 
 			// fill groups from 1 to 10
 			// only groups that are not empty in the interval of time
diff --git a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverter.java b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverter.java
index 46e0c98..9aff6d3 100644
--- a/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverter.java
+++ b/oKBereitschaftsplanungBackend/src/main/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverter.java
@@ -62,8 +62,8 @@
 
 		StandbyScheduleFilterDto standbyScheduleFilterDto = new StandbyScheduleFilterDto();
 		standbyScheduleFilterDto.setStandbyListId(reportDto.getStandByListId());
-		standbyScheduleFilterDto.setValidFrom(reportDto.getValidFrom());
-		standbyScheduleFilterDto.setValidTo(reportDto.getValidTo());
+		standbyScheduleFilterDto.setValidFrom(reportDto.getValidFromDate());
+		standbyScheduleFilterDto.setValidTo(reportDto.getValidToDate());
 		boolean allDaySearch = true;
 
 		Long statusId = reportDto.getStatusId();
@@ -89,9 +89,9 @@
 		Map<Long, StandbyScheduleBodySelectionDto> lastBodyMap = new HashMap<>();
 
 		// convert to rows
-		Date dateIndex = DateHelper.getStartOfDay(reportDto.getValidFrom());
+		Date dateIndex = DateHelper.getStartOfDay(reportDto.getValidFromDate());
 
-		while (DateHelper.isDateBefore(dateIndex, reportDto.getValidTo())) {
+		while (DateHelper.isDateBefore(dateIndex, reportDto.getValidToDate())) {
 
 			// fill groups from 1 to MAX_ROWS
 			// only groups that are not empty in the interval of time
diff --git a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/controller/reports/ReportControllerTest.java b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/controller/reports/ReportControllerTest.java
index ea0ba91..8f1cbc1 100644
--- a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/controller/reports/ReportControllerTest.java
+++ b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/controller/reports/ReportControllerTest.java
@@ -96,8 +96,8 @@
 		standbyList.setTitle("Elektriker");
 		reportDto.setStandByList(standbyList);
 		reportDto.setReportLevel("Plan-Ebene");
-		reportDto.setValidFrom(new Date());
-		reportDto.setValidTo(new Date());
+		reportDto.setValidFromDate(new Date());
+		reportDto.setValidToDate(new Date());
 
 		StandbyGroup standbyGroup = new StandbyGroup();
 		standbyGroup.setId(1L);
@@ -336,8 +336,8 @@
 		assertEquals(true, result);
 
 		reportDto.setReportName(text);
-		reportDto.setValidTo(dateStr);
-		reportDto.setValidFrom(dateStr);
+		reportDto.setValidToDate(dateStr);
+		reportDto.setValidFromDate(dateStr);
 		reportDto.setReportLevel("Plan-Ebene");
 		reportDto.setPrintFormat("PDF");
 		reportDto.setUserId(1L);
diff --git a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/dto/report/ReportDtoTest.java b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/dto/report/ReportDtoTest.java
index a611f29..83c6fae 100644
--- a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/dto/report/ReportDtoTest.java
+++ b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/dto/report/ReportDtoTest.java
@@ -48,11 +48,11 @@
 
 		Date validationDate = new Date();
 
-		report.setValidFrom(validationDate);
-		assertEquals(validationDate.getTime(), report.getValidFrom().getTime());
+		report.setValidFromDate(validationDate);
+		assertEquals(validationDate.getTime(), report.getValidFromDate().getTime());
 
-		report.setValidTo(new Date());
-		assertEquals(validationDate.getTime(), report.getValidTo().getTime());
+		report.setValidToDate(new Date());
+		assertEquals(validationDate.getTime(), report.getValidToDate().getTime());
 
 		report.setStandByGroup(new StandbyGroup());
 		assertNotNull(report.getStandByGroup());
diff --git a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/rest/reports/ReportRestServiceTest.java b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/rest/reports/ReportRestServiceTest.java
index c54cb2b..b2fab9e 100644
--- a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/rest/reports/ReportRestServiceTest.java
+++ b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/rest/reports/ReportRestServiceTest.java
@@ -114,8 +114,8 @@
 		Date date2 = DateHelper.getDate(2018, 10, 11, 12, 00, 00);
 
 		ReportDto reportDto = new ReportDto();
-		reportDto.setValidFrom(date1);
-		reportDto.setValidTo(date2);
+		reportDto.setValidFromDate(date1);
+		reportDto.setValidToDate(date2);
 
 		reportDto.setStandByList(standbyList);
 		reportDto.setStatusId(1L);
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 9ceb5bb..479c550 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
@@ -67,8 +67,8 @@
 		report.setReportName("Monatsübersicht");
 		report.setPrintFormat("pdf");
 		report.setUserId(1L);
-		report.setValidFrom(new Date());
-		report.setValidTo(new Date());
+		report.setValidFromDate(new Date());
+		report.setValidToDate(new Date());
 		report.setStandByGroup(new StandbyGroup());
 		report.setStandByList(new StandbyList());
 		report.setDefaultDayRange(5);
@@ -219,8 +219,8 @@
 				StandbyGroupSelectionDto.class);
 
 		ReportDto reportDto = getReport();
-		reportDto.setValidFrom(new Date());
-		reportDto.setValidTo(new Date());
+		reportDto.setValidFromDate(new Date());
+		reportDto.setValidToDate(new Date());
 		reportDto.setStandByList(new StandbyList(plan.getFilter().getStandbyListId()));
 
 		Mockito.when(
diff --git a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverterTest.java b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverterTest.java
index 30424cb..0a28759 100644
--- a/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverterTest.java
+++ b/oKBereitschaftsplanungBackend/src/test/java/org/eclipse/openk/sp/util/ReportGroupNameDtoConverterTest.java
@@ -69,8 +69,8 @@
 		report.setReportName("Monatsübersicht");
 		report.setPrintFormat("pdf");
 		report.setUserId(1L);
-		report.setValidFrom(new Date());
-		report.setValidTo(new Date());
+		report.setValidFromDate(new Date());
+		report.setValidToDate(new Date());
 		report.setStandByGroup(new StandbyGroup());
 		report.setStandByList(new StandbyList());
 		report.setDefaultDayRange(5);
@@ -218,8 +218,8 @@
 				StandbyGroupSelectionDto.class);
 
 		ReportDto reportDto = getReport();
-		reportDto.setValidFrom(new Date());
-		reportDto.setValidTo(new Date());
+		reportDto.setValidFromDate(new Date());
+		reportDto.setValidToDate(new Date());
 		reportDto.setStandByList(new StandbyList(plan.getFilter().getStandbyListId()));
 
 		Mockito.when(