diff --git a/src/de/deadlocker8/budgetmasterserver/main/DatabaseHandler.java b/src/de/deadlocker8/budgetmasterserver/main/DatabaseHandler.java index 61b8ee0401aa153b527c1fd2b34190075e333a88..43097810d2388eba3369dcce329922ed1a7623e2 100644 --- a/src/de/deadlocker8/budgetmasterserver/main/DatabaseHandler.java +++ b/src/de/deadlocker8/budgetmasterserver/main/DatabaseHandler.java @@ -56,7 +56,15 @@ public class DatabaseHandler while(rs.next()) { - dateTime = formatter.parseDateTime(rs.getString("min")); + String min = rs.getString("min"); + if(min == null) + { + dateTime = null; + } + else + { + dateTime = formatter.parseDateTime(rs.getString("min")); + } } } catch(SQLException e) @@ -92,7 +100,15 @@ public class DatabaseHandler while(rs.next()) { - dateTime = formatter.parseDateTime(rs.getString("min")); + String min = rs.getString("min"); + if(min == null) + { + dateTime = null; + } + else + { + dateTime = formatter.parseDateTime(rs.getString("min")); + } } } catch(SQLException e) @@ -118,18 +134,26 @@ public class DatabaseHandler public int getRestForAllPreviousMonths(int year, int month) { + DateTimeFormatter formatter = DateTimeFormat.forPattern("MM.yyyy"); + String dateString = String.valueOf(month) + "." + year; + DateTime currentDate = formatter.parseDateTime(dateString); + DateTime firstNormalPaymentDate = getFirstNormalPaymentDate(); + if(firstNormalPaymentDate == null) + { + firstNormalPaymentDate = currentDate; + } DateTime firstRepeatingPaymentDate = getFirstRepeatingPaymentDate(); + if(firstRepeatingPaymentDate == null) + { + firstRepeatingPaymentDate = currentDate; + } DateTime firstDate = firstNormalPaymentDate; if(firstRepeatingPaymentDate.isBefore(firstNormalPaymentDate)) { firstDate = firstRepeatingPaymentDate; - } - - DateTimeFormatter formatter = DateTimeFormat.forPattern("MM.yyyy"); - String dateString = String.valueOf(month) + "." + year; - DateTime currentDate = formatter.parseDateTime(dateString);// + } if(firstDate.isAfter(currentDate)) {