diff --git a/src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java b/src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java index beca7aa..33238a1 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java @@ -107,6 +107,7 @@ public class DBHandler { private static final String SELECT_MITARBEITER_BY_ID = "SELECT * FROM `mitarbeiter` WHERE `mitarbid` = ?"; private static final String SELECT_DIAGNOSE_BY_FALLID = "SELECT * FROM `diagnose` WHERE `fallid` = ?"; private static final String SELECT_ALL_KASSEN = "SELECT * FROM `kasse`"; + private static final String SELECT_KASSE_BY_KASSENID = "SELECT * FROM `kasse` WHERE `kasse`.`KassenID` = ?"; /** * Gibt alle {@link Patient} aus der DB zurueck. @@ -284,6 +285,13 @@ public class DBHandler { if (rs.getInt("hauptdiagnose") != 0) { fall.setHauptDiagnose(getDiagnose(rs.getInt("hauptdiagnose"), fall)); } + if (rs.getString("versichertennummer") != null) { + fall.setVersichertenNummer(rs.getString("versichertennummer")); + } + if (rs.getInt("kassenid") != 0) { + fall.setKasse(getKasse(rs.getInt("kassenid"))); + } + fall.setFallArt(FallArt.parseString(rs.getString("fallart"))); return fall; } @@ -324,7 +332,11 @@ public class DBHandler { } else { statement.setTimestamp(4, null); } - statement.setString(5, fall.getFallArt().id()); // Fallart + if (fall.getFallArt() != null) { + statement.setString(5, fall.getFallArt().id()); // Fallart + } else { + statement.setString(5, null); + } statement.setBoolean(6, fall.getSelbsteinweisung()); // Selbsteinweisung if (fall.getHauptDiagnose() != null) { statement.setInt(7, fall.getHauptDiagnose().getDiagID()); // Hauptdiagnose @@ -343,6 +355,9 @@ public class DBHandler { statement.setInt(12, fall.getPatient().getPatID()); // PatientID statement.setInt(13, mitarbid); // Ersteller } + if (isUpdate) { + statement.setInt(12, fall.getFallID()); + } statement.execute(); } @@ -603,6 +618,15 @@ public class DBHandler { return kassen; } + private static Kasse getKasse(int kassenid) throws SQLException { + PreparedStatement statement = MySqlConnFactory.getConnection().prepareStatement(SELECT_KASSE_BY_KASSENID); + statement.setInt(1, kassenid); + ResultSet rs = statement.executeQuery(); + + rs.next(); // TODO + return getKasse(rs); + } + /** * Extrahiert ein Objekt {@link Kasse} aus einem gegebenen {@link ResultSet}. *