diff --git a/src/main/java/de/uniluebeck/mi/projmi6/HL7.java b/src/main/java/de/uniluebeck/mi/projmi6/HL7.java index 22c9f1b..9fc457d 100644 --- a/src/main/java/de/uniluebeck/mi/projmi6/HL7.java +++ b/src/main/java/de/uniluebeck/mi/projmi6/HL7.java @@ -106,8 +106,6 @@ public class HL7 { } - - /** * gibt erzeugte hl7 Nachricht auf der Konsole aus (Kann nach Debug phase wieder geloescht werden) * @param msg @@ -133,49 +131,29 @@ public class HL7 { * * @param msg */ - public void parseMessage(Message msg) throws DataTypeException, SQLException { + public void parseMessage(Message msg) throws DataTypeException { if (msg instanceof BAR_P05) { BAR_P05 p05 = (BAR_P05) msg; - EVN evnSegment = p05.getEVN(); PID pidSegment = p05.getPID(); - DBHandler dh = new DBHandler(); Patient patient =dh.getPatient(Integer.valueOf(pidSegment.getPid3_PatientIdentifierList(0).getIDNumber().getValue())); Fall fall = new Fall(); - LocalDateTime ldt = generateLocalDateTimeFromHl7(p05); patient.setBearbeitetDatumZeit(ldt); - patient.setBearbeiter(Integer.valueOf(evnSegment.getEvn5_OperatorID(0).getIDNumber().getValue())); - - /** wenn ein neuer patient angelegt werden sollte + //patient.setBearbeiter(evnSegment.getEvn5_OperatorID(0).getIDNumber()); + PID pidSegment = p05.getPID(); + patient.setPatID(Integer.valueOf(pidSegment.getPid3_PatientIdentifierList(0).getIDNumber().getValue()));//evt das 4. Segment patient.setNachname(pidSegment.getPid5_PatientName(0).getFamilyName().getName()); patient.setVorname(pidSegment.getPid5_PatientName(0).getGivenName().getValue()); ca.uhn.hl7v2.model.v251.datatype.DTM geburtsTag = pidSegment.getPid7_DateTimeOfBirth().getTime(); - LocalDate ld = LocalDate.of(geburtsTag.getYear(), geburtsTag.getMonth(), geburtsTag.getDay()); + LocalDate ld = LocalDate.of(geburtsTag.getYear(),geburtsTag.getMonth(),geburtsTag.getDay()); patient.setGeburtsdatum(ld); - Patient.Geschlecht geschlecht = Patient.Geschlecht.parseStringFromHL7(pidSegment.getPid8_AdministrativeSex().getValue()); - patient.setGeschlecht(geschlecht); - patient.setStrasse(pidSegment.getPid11_PatientAddress(0).getStreetAddress().getStreetName().getValue()); - patient.setOrt(pidSegment.getPid11_PatientAddress(0).getCity().getValue()); - patient.setHausnummer(pidSegment.getPid11_PatientAddress(0).getStreetAddress().getDwellingNumber().getValue()); - patient.setTelefon(pidSegment.getPid13_PhoneNumberHome(0).getTelephoneNumber().getValue()); - Patient.Familienstand familienstand = pidSegment.getPid16_MaritalStatus().getAlternateText().getValue(); - patient.setFamilienstand(); - */ - } - } + // patient.setGeschlecht(pidSegment.getPid8_AdministrativeSex().getValue()); + - public void validateMessage(Message msg) { - HapiContext context = new DefaultHapiContext(); - context.setValidationContext(ValidationContextFactory.defaultValidation()); - PipeParser parser = context.getPipeParser(); - try { - parser.encode(msg); - } catch (HL7Exception e) { - System.out.println("invaid message!" +e); - } + } } public LocalDateTime generateLocalDateTimeFromHl7(BAR_P05 msg) throws DataTypeException {