|
|
|
@@ -3,9 +3,8 @@ package de.uniluebeck.mi.projmi6.db; |
|
|
|
import de.uniluebeck.mi.projmi6.model.*; |
|
|
|
|
|
|
|
import java.sql.*; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
import java.util.StringJoiner; |
|
|
|
import java.sql.Date; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
/** |
|
|
|
* Created by nils on 15.11.2015. |
|
|
|
@@ -15,41 +14,56 @@ public class DBHandler { |
|
|
|
private static final String SELECT_ALL_PATIENTS = "SELECT * FROM `patient`"; |
|
|
|
private static final String SELECT_PATIENT_BY_ID = "SELECT * FROM `patient` WHERE `id` = ?"; |
|
|
|
private static final String UPDATE_PATIENT = "UPDATE `patient` " + |
|
|
|
"SET `CAVE`=?, " + |
|
|
|
"`Familienstand`=?, " + |
|
|
|
"`Geburtsdatum`=?, " + |
|
|
|
"`Geburtsname`=?, " + |
|
|
|
"`Geschlecht`=?, " + // TODO: Hausnummer fehlt |
|
|
|
"`KassenID`=?, " + |
|
|
|
"`LetzterBearbeiter`=?, " + |
|
|
|
"`Nachname`=?, " + |
|
|
|
"`Ort`=?, " + |
|
|
|
"`PLZ`=?, " + |
|
|
|
"`Strasse`=?, " + |
|
|
|
"`Telefon`=?, " + |
|
|
|
"`Versichertennummer`=?, " + |
|
|
|
"`Vorname`=? " + |
|
|
|
"SET `CAVE`=?," + |
|
|
|
"`Familienstand`=?," + |
|
|
|
"`Geburtsdatum`=?," + |
|
|
|
"`Geburtsname`=?," + |
|
|
|
"`Geschlecht`=?," + // TODO: Hausnummer fehlt |
|
|
|
"`KassenID`=?," + |
|
|
|
"`LetzterBearbeiter`=?," + |
|
|
|
"`Nachname`=?," + |
|
|
|
"`Ort`=?," + |
|
|
|
"`PLZ`=?," + |
|
|
|
"`Strasse`=?," + |
|
|
|
"`Telefon`=?," + |
|
|
|
"`Versichertennummer`=?," + |
|
|
|
"`Vorname`=?" + |
|
|
|
"WHERE `ID`=?"; |
|
|
|
private static final String INSERT_PATIENT = "INSERT INTO `patient` " + |
|
|
|
"(`CAVE`, " + |
|
|
|
"`Familienstand`, " + |
|
|
|
"`Geburtsdatum`, " + |
|
|
|
"(`CAVE`," + |
|
|
|
"`Familienstand`," + |
|
|
|
"`Geburtsdatum`," + |
|
|
|
"`Geburtsname`," + |
|
|
|
"`Geschlecht`, " + |
|
|
|
"`Hausnummer`, " + |
|
|
|
"`KassenID`, " + |
|
|
|
"`LetzterBearbeiter`, " + |
|
|
|
"`Nachname`, " + |
|
|
|
"`Ort`, " + |
|
|
|
"`PLZ`, " + |
|
|
|
"`Strasse`, " + |
|
|
|
"`Geschlecht`," + |
|
|
|
"`Hausnummer`," + |
|
|
|
"`KassenID`," + |
|
|
|
"`LetzterBearbeiter`," + |
|
|
|
"`Nachname`," + |
|
|
|
"`Ort`," + |
|
|
|
"`PLZ`," + |
|
|
|
"`Strasse`," + |
|
|
|
"`Telefon`," + |
|
|
|
"`Versichertennummer`, " + |
|
|
|
"`Vorname`, " + |
|
|
|
"`Ersteller`) " + |
|
|
|
"`Versichertennummer`," + |
|
|
|
"`Vorname`," + |
|
|
|
"`Ersteller`)" + |
|
|
|
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; |
|
|
|
private static final String SELECT_ALL_STATIONEN = "SELECT * FROM `stammstation`"; |
|
|
|
private static final String SELECT_FAELLE_BY_PATID = "SELECT * FROM `fall` WHERE `patientid` = ?"; |
|
|
|
private static final String INSERT_FALL = "INSERT INTO `fall` " + |
|
|
|
"(`Aufnahmedatum`," + |
|
|
|
"`Entlassungsdatum`," + |
|
|
|
"`Vorstelldatum`," + |
|
|
|
"`EinweisenderArzt`," + |
|
|
|
"`Fallart`," + |
|
|
|
"`Selbsteinweisung`," + |
|
|
|
"`Hauptdiagnose`," + |
|
|
|
"`PatientID`," + |
|
|
|
"`Versichertennummer`," + |
|
|
|
"`KassenID`," + |
|
|
|
"`storniert`," + |
|
|
|
"`Ersteller`," + |
|
|
|
"`Letzter Bearbeiter`)" + |
|
|
|
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; |
|
|
|
private static final String SELECT_DIAGNOSE_BY_ID = "SELECT * FROM `diagnose` WHERE `diagid` = ?"; |
|
|
|
private static final String SELECT_ALL_ICD10CODES = "SELECT * FROM `stammicd10`"; |
|
|
|
private static final String SELECT_ALL_OPSCODES = "SELECT * FROM `stammops`"; |
|
|
|
@@ -214,6 +228,32 @@ public class DBHandler { |
|
|
|
return fall; |
|
|
|
} |
|
|
|
|
|
|
|
public static void insertFall(Fall fall, int mitarbid) throws SQLException { |
|
|
|
PreparedStatement statement = MySqlConnFactory.getConnection().prepareStatement(INSERT_FALL); |
|
|
|
|
|
|
|
if (fall.getAufnahmeDatum() != null) |
|
|
|
statement.setTimestamp(1, Timestamp.valueOf(fall.getAufnahmeDatum())); // Aufnahmedatum |
|
|
|
if (fall.getEntlassungsDatum() != null) |
|
|
|
statement.setTimestamp(2, Timestamp.valueOf(fall.getEntlassungsDatum())); // Entlassungsdatum |
|
|
|
if (fall.getVorstellDatum() != null) |
|
|
|
statement.setTimestamp(3, Timestamp.valueOf(fall.getVorstellDatum())); // Vorstelldatum |
|
|
|
if (fall.getEinweisenderArzt() != null) |
|
|
|
statement.setInt(4, fall.getEinweisenderArzt().getMitarbID()); // EinweisenderArzt |
|
|
|
statement.setString(5, fall.getFallArt().id()); // Fallart |
|
|
|
statement.setBoolean(6, fall.getSelbsteinweisung()); // Selbsteinweisung |
|
|
|
if (fall.getHauptDiagnose() != null) |
|
|
|
statement.setInt(7, fall.getHauptDiagnose().getDiagID()); // Hauptdiagnose |
|
|
|
statement.setInt(8, fall.getPatient().getPatID()); // PatientID |
|
|
|
statement.setString(9, fall.getVersichertenNummer()); // Versichertennummer |
|
|
|
if (fall.getKasse() != null) |
|
|
|
statement.setInt(10, fall.getKasse().getKassenID()); // KassenID |
|
|
|
statement.setBoolean(11, fall.getStorniert()); // storniert |
|
|
|
statement.setInt(12, mitarbid); // Ersteller |
|
|
|
statement.setInt(13, mitarbid); // Letzter Bearbeiter |
|
|
|
|
|
|
|
statement.execute(); |
|
|
|
} |
|
|
|
|
|
|
|
private static Diagnose getDiagnose(int diagid, Fall fall) throws SQLException { |
|
|
|
Diagnose diagnose = getDiagnose(diagid); |
|
|
|
diagnose.setFall(fall); |
|
|
|
|