瀏覽代碼

Merge branch 'master' of gogs.dittberner.it:nils/projmi

hapi
ikrontsi 10 年之前
父節點
當前提交
6ef2e4c186
共有 3 個檔案被更改,包括 93 行新增19 行删除
  1. +13
    -4
      src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java
  2. +11
    -9
      src/main/java/de/uniluebeck/mi/projmi6/controller/PatientTablesController.java
  3. +69
    -6
      src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java

+ 13
- 4
src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java 查看文件

@@ -9,6 +9,8 @@ import javafx.fxml.FXML;
import javafx.scene.control.*;
import javafx.util.Callback;

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

public class MainController {
@@ -192,13 +194,20 @@ public class MainController {

@FXML
private void initialize(){
fallOverview.disableProperty().bind(patientTablesController.selectedPatientProperty().isNull());
cmbUserChoose.itemsProperty().bind(this.mitarbeiterProperty());

fallOverview.disableProperty().bind(patientTablesController.selectedPatientProperty().isNull());


patientTablesController.selectedPatientProperty().addListener((observableValue,oldValue,newValue)-> {
try {
lvFall.setItems(FXCollections.observableArrayList(DBHandler.getFaelleByPatID(newValue.getPatID())));
System.out.println("Neuer Patient gewaehlt");
try {
List<Fall> faelle = DBHandler.getFaelleByPatID(newValue.getPatID());
System.out.println(faelle);
System.out.println("Liste der Faelle hat "+ faelle.size()+ " Eintrage ");
lvFall.setItems(FXCollections.observableArrayList(faelle));
}catch (Exception e){

e.printStackTrace();
}
});



+ 11
- 9
src/main/java/de/uniluebeck/mi/projmi6/controller/PatientTablesController.java 查看文件

@@ -146,6 +146,14 @@ public class PatientTablesController{
}


patientObjectBinding = Bindings.<Patient>createObjectBinding(() ->{
return patientOverviewTabPane.getSelectionModel().getSelectedItem().equals(patientOverviewTab)
? tblPatientOverview.getSelectionModel().getSelectedItem()
: null; //(Patient)tblStationOverview.getSelectionModel().getSelectedItem(); //TODO
}, tblPatientOverview.getSelectionModel().selectedItemProperty(),
tblStationOverview.getSelectionModel().selectedItemProperty(),
patientOverviewTabPane.getSelectionModel().selectedItemProperty());

tblPatientOverview.setItems(patientList);

initColumnsPatient();
@@ -216,16 +224,10 @@ public class PatientTablesController{
}


public ObjectBinding<Patient> selectedPatientProperty(){

return Bindings.<Patient>createObjectBinding(() ->{
return patientOverviewTabPane.getSelectionModel().getSelectedItem().equals(patientOverviewTab)
? tblPatientOverview.getSelectionModel().getSelectedItem()
: null; //(Patient)tblStationOverview.getSelectionModel().getSelectedItem(); //TODO
}, tblPatientOverview.getSelectionModel().selectedItemProperty(),
tblStationOverview.getSelectionModel().selectedItemProperty(),
patientOverviewTabPane.getSelectionModel().selectedItemProperty());
private ObjectBinding<Patient> patientObjectBinding = null;

public ObjectBinding<Patient> selectedPatientProperty(){
return patientObjectBinding;
}

public Patient getSelectedPatient(){


+ 69
- 6
src/main/java/de/uniluebeck/mi/projmi6/db/DBHandler.java 查看文件

@@ -22,6 +22,10 @@ public class DBHandler {
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 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`";
private static final String SELECT_ICD10CODE_BY_ID = "SELECT * FROM `stammicd10` WHERE `icd10code` = '?' AND `version` = ?";
private static final String SELECT_OPSCODE_BY_ID = "SELECT * FROM `stammops` WHERE `opscode` = '?' AND `version` = ?";

public static List<Patient> getAllPatients() throws SQLException {
Statement statement = MySqlConnFactory.getConnection().createStatement();
@@ -137,16 +141,75 @@ public class DBHandler {
diagnose.setArzt(new Mitarbeiter(rs.getInt("arzt")));
diagnose.setDiagArt(DiagArt.parseInt(rs.getInt("diagart")));
setVersionInformation(diagnose, rs);
diagnose.setIcd10code(new Icd10Code(rs.getString("icd10code"), "", rs.getInt("icd10version"))); // TODO: das geht auch in huebsch
diagnose.setIcd10code(getIcd10Code(rs.getString("icd10code"), rs.getInt("icd10version")));
return diagnose;
}

private static void setVersionInformation(Version t, ResultSet rs) throws SQLException {
t.setErsteller(rs.getInt("ersteller"));
t.setErstellDatumZeit(rs.getTimestamp("erstelldatum").toLocalDateTime());
t.setBearbeiter(rs.getInt("letzterbearbeiter"));
t.setBearbeitetDatumZeit(rs.getTimestamp("letztesbearbeitungsdatum").toLocalDateTime());
private static void setVersionInformation(Version version, ResultSet rs) throws SQLException {
version.setErsteller(rs.getInt("ersteller"));
version.setErstellDatumZeit(rs.getTimestamp("erstelldatum").toLocalDateTime());
version.setBearbeiter(rs.getInt("letzterbearbeiter"));
version.setBearbeitetDatumZeit(rs.getTimestamp("letztesbearbeitungsdatum").toLocalDateTime());
}

public static List<Icd10Code> getAllIcd10Codes() throws SQLException {
Statement statement = MySqlConnFactory.getConnection().createStatement();
ResultSet rs = statement.executeQuery(SELECT_ALL_ICD10CODES);

List<Icd10Code> icd10codes = new ArrayList<>();
while (rs.next()) {
icd10codes.add(getIcd10Code(rs));
}

return icd10codes;
}

private static Icd10Code getIcd10Code(String code, int version) throws SQLException {
PreparedStatement statement = MySqlConnFactory.getConnection().prepareStatement(SELECT_ICD10CODE_BY_ID);
ResultSet rs;
statement.setString(1, code);
statement.setInt(2, version);
rs = statement.executeQuery();

return getIcd10Code(rs);
}

private static Icd10Code getIcd10Code(ResultSet rs) throws SQLException {
String code = rs.getString("icd10code");
String text = rs.getString("text");
int version = rs.getInt("version");

return new Icd10Code(code, text, version);
}

public static List<OpsCode> getAllOpsCodes() throws SQLException {
Statement statement = MySqlConnFactory.getConnection().createStatement();
ResultSet rs = statement.executeQuery(SELECT_ALL_OPSCODES);

List<OpsCode> opscodes = new ArrayList<>();
while (rs.next()) {
opscodes.add(getOpsCode(rs));
}

return opscodes;
}

public static OpsCode getOpsCode(String code, int version) throws SQLException {
PreparedStatement statement = MySqlConnFactory.getConnection().prepareStatement(SELECT_OPSCODE_BY_ID);
ResultSet rs;
statement.setString(1, code);
statement.setInt(2, version);
rs = statement.executeQuery();

return getOpsCode(rs);
}

private static OpsCode getOpsCode(ResultSet rs) throws SQLException {
String code = rs.getString("opscode");
String text = rs.getString("text");
int version = rs.getInt("version");

return new OpsCode(code, text, version);
}

}

Loading…
取消
儲存