diff --git a/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java b/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java index aebc1b7..17d1952 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java @@ -264,7 +264,7 @@ public class MainController { protected Void call() throws Exception { untersuchungList = DBHandler.getUntersuchungByFall(newValue); diagnoseList = DBHandler.getDiagnosenByFall(newValue); - // stationsHistorieList = DBHandler.getStationsHistorieByStation(""); + stationsHistorieList = DBHandler.getStationsHistorieByFall(newValue); return null; } @@ -277,6 +277,8 @@ public class MainController { } untersuchungenController.setUntersuchungen(FXCollections.observableArrayList(untersuchungList)); diagnoseController.setDiagnosen(FXCollections.observableArrayList(diagnoseList)); + stationsHistorieController.setStationsHistorie(FXCollections.observableArrayList(stationsHistorieList)); + tabPaneFall.setDisable(false); tabFallDiagnose.setDisable(false); diff --git a/src/main/java/de/uniluebeck/mi/projmi6/controller/StationsHistorieController.java b/src/main/java/de/uniluebeck/mi/projmi6/controller/StationsHistorieController.java index faaf0b1..775f6bf 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/controller/StationsHistorieController.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/controller/StationsHistorieController.java @@ -1,15 +1,21 @@ package de.uniluebeck.mi.projmi6.controller; +import de.uniluebeck.mi.projmi6.db.DBHandler; import de.uniluebeck.mi.projmi6.model.Station; import de.uniluebeck.mi.projmi6.model.StationsHistorie; import de.uniluebeck.mi.projmi6.view.DateTimePicker; +import javafx.beans.binding.Bindings; import javafx.beans.property.SimpleObjectProperty; +import javafx.collections.FXCollections; import javafx.collections.ObservableList; +import javafx.collections.transformation.FilteredList; import javafx.fxml.FXML; import javafx.scene.control.*; import javafx.scene.control.cell.PropertyValueFactory; import java.time.LocalDate; +import java.util.List; +import java.util.stream.Collectors; /** * Created by 631806 on 12.11.15. @@ -33,7 +39,7 @@ public class StationsHistorieController { private Label statHistCreator, statHistCreateTime, statHistEditor, statHistEditTime; @FXML - private TableColumncolStatHistAbteilung, colStatHistStation; + private TableColumn colStatHistStation; @FXML private TableColumn colStatHistAufnahmeDatum, colStatHistEntlassungsDatum; @@ -45,19 +51,44 @@ public class StationsHistorieController { private ComboBox cmbStation; @FXML - private ComboBox cmbAbteilung; + private ComboBox cmbAbteilung; public StationsHistorieController(MainController mainController){ this.mainController = mainController; } + public void setStationsHistorie(ObservableList stationsHistorie) { + this.stationsHistorie.set(stationsHistorie); + } + + private SimpleObjectProperty> stationsHistorie = + new SimpleObjectProperty<>(); + + + @FXML private void initialize() { + initColumns(); + + List abteilungen = mainController.getStammdaten().getStationen().stream() + .map(stat->stat.getAbteilung()).distinct().collect(Collectors.toList()); + cmbAbteilung.setItems(FXCollections.observableArrayList(abteilungen)); + + + FilteredList stationenFiltered = new FilteredList(mainController.getStammdaten().getStationen()); + + stationenFiltered.predicateProperty().bind(Bindings.createObjectBinding(() -> { + return p -> p.getAbteilung().equals(cmbAbteilung.getValue()); + },cmbAbteilung.valueProperty())); + cmbStation.setItems(mainController.getStammdaten().getStationen()); + + + + tblStationsHistorie.itemsProperty().bind(stationsHistorie); tblStationsHistorie.getSelectionModel().selectedItemProperty().addListener((observableValue, oldValue, newValue) -> { setStationsHistorieSelected(newValue); - }); } @@ -91,7 +122,6 @@ public class StationsHistorieController { this.stationsHistorie.set(stationsHistorie); } - private SimpleObjectProperty> stationsHistorie = new SimpleObjectProperty<>(); public void setStationsHistorieSelected(StationsHistorie stationsHistorie){ @@ -105,7 +135,7 @@ public class StationsHistorieController { private void initColumns(){ - //colStatHistAbteilung.setCellValueFactory(); + // colStatHistStation.setCellValueFactory(new PropertyValueFactory()); colStatHistAufnahmeDatum.setCellValueFactory(new PropertyValueFactory("aufnahmeDatum")); colStatHistEntlassungsDatum.setCellValueFactory(new PropertyValueFactory("entlassungsDatum")); //colStatHistStation.setCellValueFactory(new PropertyValueFactory()); @@ -114,6 +144,10 @@ public class StationsHistorieController { private void copyStationsHistorieDataIntoFields(){ + if(stationsHistorieSelected==null){ + return; + } + //TODO cmbStation.setValue dtTmAufnahme.setDateTime(stationsHistorieSelected.getAufnahmeDatum()); diff --git a/src/main/resources/stationshistorie.fxml b/src/main/resources/stationshistorie.fxml index 704d2fa..9b3d1c0 100644 --- a/src/main/resources/stationshistorie.fxml +++ b/src/main/resources/stationshistorie.fxml @@ -21,7 +21,6 @@ -