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 7952009..3df6171 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/controller/MainController.java @@ -2,6 +2,7 @@ package de.uniluebeck.mi.projmi6.controller; import de.uniluebeck.mi.projmi6.db.DBHandler; import de.uniluebeck.mi.projmi6.model.*; +import de.uniluebeck.mi.projmi6.view.MessageIcon; import javafx.beans.binding.Bindings; import javafx.beans.property.ReadOnlyObjectProperty; import javafx.beans.property.SimpleObjectProperty; @@ -30,6 +31,8 @@ public class MainController { private StationsHistorieController stationsHistorieController; private UntersuchungenController untersuchungenController; private LogController logController; + private MessageController messageController; + private int parallelTaskCount = 0; @@ -73,8 +76,10 @@ public class MainController { return untersuchungenController; } else if (clazz.equals(StationsHistorieController.class)) { return stationsHistorieController; - } else if (clazz.equals(LogController.class)){ + } else if (clazz.equals(LogController.class)) { return logController; + }else if(clazz.equals(MessageController.class)){ + return messageController; } else { System.err.println("Keine Controller-Klasse des Typs " + clazz + " gefunden!!!"); return null; @@ -90,6 +95,7 @@ public class MainController { untersuchungenController = new UntersuchungenController(this); stationsHistorieController = new StationsHistorieController(this); logController = new LogController(this); + messageController = new MessageController(this); } @@ -250,7 +256,6 @@ public class MainController { } - private Task loadCaseData = null; @@ -296,7 +301,6 @@ public class MainController { protected void succeeded() { super.succeeded(); if (isCancelled()) { - System.out.println("Task wurde gecancelt"); return; } ObservableList diagnoses = FXCollections.observableArrayList(diagnoseList); diff --git a/src/main/java/de/uniluebeck/mi/projmi6/controller/MessageController.java b/src/main/java/de/uniluebeck/mi/projmi6/controller/MessageController.java new file mode 100644 index 0000000..82c4c71 --- /dev/null +++ b/src/main/java/de/uniluebeck/mi/projmi6/controller/MessageController.java @@ -0,0 +1,44 @@ +package de.uniluebeck.mi.projmi6.controller; + +import de.uniluebeck.mi.projmi6.model.Fall; +import de.uniluebeck.mi.projmi6.model.HL7Message; +import de.uniluebeck.mi.projmi6.model.Patient; +import de.uniluebeck.mi.projmi6.view.MessageIcon; +import javafx.collections.ObservableList; +import javafx.fxml.FXML; + +/** + * Created by Johannes on 21/11/2015. + */ +public class MessageController { + final MainController mainController; + + @FXML + private MessageIcon messageIcon; + + + + + public MessageController(MainController mainController){ + this.mainController = mainController; + } + + @FXML + private void initialize(){ + + + } + + @FXML + private void onMessageIconClicked(){ + + } + + + public void addMessage(HL7Message message){ + + } + +} + + diff --git a/src/main/java/de/uniluebeck/mi/projmi6/db/MySqlConnectionFactory.java b/src/main/java/de/uniluebeck/mi/projmi6/db/MySqlConnectionFactory.java index e680c1c..c8dfe6f 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/db/MySqlConnectionFactory.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/db/MySqlConnectionFactory.java @@ -8,7 +8,7 @@ import java.sql.SQLException; * MySQL Connection Factory. */ public class MySqlConnectionFactory { - public static final String URL = "jdbc:mysql://141.83.20.84:3306/pmiw15g06_v01"; + public static final String URL = "jdbc:mysql://localhost:3306/pmiw15g06_v01"; public static final String USER = "pmiw15g06"; public static final String PASS = "AX3yQSYJSH43PrSz"; public static final String DRIVER = "com.mysql.jdbc.Driver"; diff --git a/src/main/java/de/uniluebeck/mi/projmi6/model/HL7Message.java b/src/main/java/de/uniluebeck/mi/projmi6/model/HL7Message.java new file mode 100644 index 0000000..d0985e7 --- /dev/null +++ b/src/main/java/de/uniluebeck/mi/projmi6/model/HL7Message.java @@ -0,0 +1,65 @@ +package de.uniluebeck.mi.projmi6.model; + +import java.time.LocalDateTime; + +/** + * Created by Johannes on 21/11/2015. + */ +public class HL7Message { + private LocalDateTime dateTime; + private String messageContent; + + private boolean failed; + + private Patient patient; + private int fallId; + + public HL7Message(Patient patient, int fallId, LocalDateTime dateTime, String messageContent, boolean failed) { + this.patient = patient; + this.fallId = fallId; + this.dateTime = dateTime; + this.messageContent = messageContent; + this.failed = failed; + } + + public LocalDateTime getDateTime() { + + return dateTime; + } + + public void setDateTime(LocalDateTime dateTime) { + this.dateTime = dateTime; + } + + public String getMessageContent() { + return messageContent; + } + + public void setMessageContent(String messageContent) { + this.messageContent = messageContent; + } + + public boolean isFailed() { + return failed; + } + + public void setFailed(boolean failed) { + this.failed = failed; + } + + public Patient getPatient() { + return patient; + } + + public void setPatient(Patient patient) { + this.patient = patient; + } + + public int getFallId() { + return fallId; + } + + public void setFallId(int fallId) { + this.fallId = fallId; + } +} diff --git a/src/main/java/de/uniluebeck/mi/projmi6/view/MessageIcon.java b/src/main/java/de/uniluebeck/mi/projmi6/view/MessageIcon.java index f762ab5..9ae96a6 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/view/MessageIcon.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/view/MessageIcon.java @@ -1,11 +1,18 @@ package de.uniluebeck.mi.projmi6.view; +import javafx.animation.FadeTransition; +import javafx.animation.Timeline; +import javafx.animation.Transition; +import javafx.beans.binding.Bindings; import javafx.beans.property.SimpleIntegerProperty; +import javafx.geometry.Pos; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.StackPane; +import javafx.scene.paint.Color; +import javafx.util.Duration; /** * Created by Johannes on 21/11/2015. @@ -18,16 +25,57 @@ public class MessageIcon extends Button { private final SimpleIntegerProperty messageCount = new SimpleIntegerProperty(this, "messageCount", 0); + FadeTransition transition; + public MessageIcon(){ - imageView = new ImageView(new Image("")); + imageView = new ImageView(new Image("message.png")); + imageView.setFitHeight(30); + imageView.setFitWidth(30); + /* imageView.opacityProperty().bind(Bindings.createDoubleBinding( + ()->messageCount.get()>0? 1.0 : 0.5, messageCount));*/ + + messageCountLabel = new Label(); + messageCountLabel.textProperty().bind(messageCount.asString()); + StackPane.setAlignment(messageCountLabel, Pos.BOTTOM_RIGHT); + messageCountLabel.setTextFill(Color.BLACK); + this.disableProperty().bind(messageCount.lessThanOrEqualTo(0)); StackPane graphic = new StackPane(imageView, messageCountLabel); this.setGraphic(graphic); + + initTransition(); + + } + + private void initTransition(){ + transition = new FadeTransition(Duration.millis(500), imageView); + transition.setFromValue(0.5); + transition.setToValue(1.0); + transition.setCycleCount(Timeline.INDEFINITE); + transition.setAutoReverse(true); + messageCount.addListener((observable, oldValue, newValue) -> { + if(messageCount.get()>0){ + transition.play(); + }else{ + transition.stop(); + + } + }); + } + + public int getMessageCount() { + return messageCount.get(); } + public SimpleIntegerProperty messageCountProperty() { + return messageCount; + } + public void setMessageCount(int messageCount) { + this.messageCount.set(messageCount); + } diff --git a/src/main/resources/main.fxml b/src/main/resources/main.fxml index 7feeee6..8cdcbb3 100644 --- a/src/main/resources/main.fxml +++ b/src/main/resources/main.fxml @@ -5,8 +5,10 @@ + + @@ -82,6 +84,7 @@ + diff --git a/src/main/resources/message.fxml b/src/main/resources/message.fxml new file mode 100644 index 0000000..8770a6f --- /dev/null +++ b/src/main/resources/message.fxml @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/message.png b/src/main/resources/message.png new file mode 100644 index 0000000..28fe88d Binary files /dev/null and b/src/main/resources/message.png differ