Browse Source

Parsen von BAR P05 angefangen abzusichern. Fehler fangen.

master
parent
commit
2d2799ec0b
1 changed files with 17 additions and 3 deletions
  1. +17
    -3
      src/main/java/de/uniluebeck/mi/projmi6/hapi/HL7Receiver.java

+ 17
- 3
src/main/java/de/uniluebeck/mi/projmi6/hapi/HL7Receiver.java View File

@@ -98,7 +98,7 @@ public class HL7Receiver<T extends AbstractMessage> implements ReceivingApplicat
// Ab hier wird es dirty.
for (BAR_P05_VISIT visit : visits) {
PV1 pv1 = visit.getPV1();
int fallid = Integer.parseInt(pv1.getVisitNumber().encode());
int fallid = Integer.parseInt(pv1.getVisitNumber().getIDNumber().encode());

List<Integer> fallids = new ArrayList<>();
try {
@@ -129,10 +129,17 @@ public class HL7Receiver<T extends AbstractMessage> implements ReceivingApplicat
updateUI(new HL7Message(patient, -1, LocalDateTime.now(), "Station nicht gefunden.", true));
return generateACKWithAR(message, "Station nicht gefunden.");
}
StationsHistorie hist = new StationsHistorie(); // TODO: StationsHist schreiben/schon vorhanden!
StationsHistorie hist = new StationsHistorie();
hist.setStationKey(station.getStation());
if (pv1.getAdmitDateTime().isEmpty()) {
HL7Util.logInHL7MessageToDatabase(message, msh, metadata);
updateUI(new HL7Message(patient, -1, LocalDateTime.now(), "Visit ohne Aufnahmedatum.", true));
return generateACKWithAR(message, "Visit ohne Aufnahmedatum.");
}
hist.setAufnahmeDatum(HL7Util.parseLocalDateTime(pv1.getAdmitDateTime().getTime()));
hist.setEntlassungsDatum(HL7Util.parseLocalDateTime(pv1.getDischargeDateTime()[0].getTime())); // TODO: null?
if (pv1.getDischargeDateTime().length >= 1) {
hist.setEntlassungsDatum(HL7Util.parseLocalDateTime(pv1.getDischargeDateTime()[0].getTime()));
}
hist.setFallID(fallid);

List<DG1> dg1s = visit.getDG1All();
@@ -242,6 +249,13 @@ public class HL7Receiver<T extends AbstractMessage> implements ReceivingApplicat
}
});

try {
// TODO: keine Updates moeglich, man muesste dazu viel implementieren.
DBHandler.setStationsHistorie(hist, false);
} catch (SQLException e) {
e.printStackTrace();
}

// Remember welche Faelle geaendert wurden
updatedFallIDs.add(fallid);
}


Loading…
Cancel
Save