From 2c6a63b17e779643ce50ab036810d2f817d729a3 Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sun, 23 May 2021 00:24:45 +0200
Subject: [PATCH] #598 - fixed handling of dates

---
 .../model/v5/converter/RepeatingEndOptionConverter_v5.java  | 1 +
 .../model/v5/converter/RepeatingOptionConverter_v5.java     | 6 +++++-
 .../model/v5/converter/TransactionConverter_v5.java         | 6 +++++-
 3 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingEndOptionConverter_v5.java b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingEndOptionConverter_v5.java
index bdf074cc6..e55dae9ec 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingEndOptionConverter_v5.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingEndOptionConverter_v5.java
@@ -29,6 +29,7 @@ public class RepeatingEndOptionConverter_v5 implements Converter<RepeatingEnd, B
 				break;
 			case DATE:
 				DateTime endDate = DateTime.parse(backupItem.getEndDate(), DateTimeFormat.forPattern("yyyy-MM-dd"));
+				endDate = endDate.withHourOfDay(12).withMinuteOfHour(0).withSecondOfMinute(0);
 				endOption = new RepeatingEndDate(endDate);
 				break;
 		}
diff --git a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingOptionConverter_v5.java b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingOptionConverter_v5.java
index acb18100c..88df673cb 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingOptionConverter_v5.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/RepeatingOptionConverter_v5.java
@@ -17,7 +17,11 @@ public class RepeatingOptionConverter_v5 implements Converter<RepeatingOption, B
 		}
 
 		final RepeatingOption repeatingOption = new RepeatingOption();
-		repeatingOption.setStartDate(DateTime.parse(backupItem.getStartDate(), DateTimeFormat.forPattern("yyyy-MM-dd")));
+
+		DateTime startDate = DateTime.parse(backupItem.getStartDate(), DateTimeFormat.forPattern("yyyy-MM-dd"));
+		startDate = startDate.withHourOfDay(12).withMinuteOfHour(0).withSecondOfMinute(0);
+		repeatingOption.setStartDate(startDate);
+
 		repeatingOption.setModifier(new RepeatingModifierConverter_v5().convertToInternalForm(backupItem.getModifier()));
 		repeatingOption.setEndOption(new RepeatingEndOptionConverter_v5().convertToInternalForm(backupItem.getEndOption()));
 		return repeatingOption;
diff --git a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/TransactionConverter_v5.java b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/TransactionConverter_v5.java
index 704ab69be..07b1ec0c5 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/TransactionConverter_v5.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/database/model/v5/converter/TransactionConverter_v5.java
@@ -23,7 +23,11 @@ public class TransactionConverter_v5 implements Converter<Transaction, BackupTra
 		transaction.setIsExpenditure(backupTransaction.getExpenditure());
 		transaction.setAccount(new AccountConverter_v5().convertToInternalForm(backupTransaction.getAccount()));
 		transaction.setTransferAccount(new AccountConverter_v5().convertToInternalForm(backupTransaction.getTransferAccount()));
-		transaction.setDate(DateTime.parse(backupTransaction.getDate(), DateTimeFormat.forPattern("yyyy-MM-dd")));
+
+		DateTime date = DateTime.parse(backupTransaction.getDate(), DateTimeFormat.forPattern("yyyy-MM-dd"));
+		date = date.withHourOfDay(12).withMinuteOfHour(0).withSecondOfMinute(0);
+		transaction.setDate(date);
+
 		transaction.setTags(backupTransaction.getTags());
 		transaction.setRepeatingOption(new RepeatingOptionConverter_v5().convertToInternalForm(backupTransaction.getRepeatingOption()));
 		return transaction;
-- 
GitLab