| @@ -106,8 +106,6 @@ public class HL7 { | |||||
| } | } | ||||
| /** | /** | ||||
| * gibt erzeugte hl7 Nachricht auf der Konsole aus (Kann nach Debug phase wieder geloescht werden) | * gibt erzeugte hl7 Nachricht auf der Konsole aus (Kann nach Debug phase wieder geloescht werden) | ||||
| * @param msg | * @param msg | ||||
| @@ -133,49 +131,29 @@ public class HL7 { | |||||
| * | * | ||||
| * @param msg | * @param msg | ||||
| */ | */ | ||||
| public void parseMessage(Message msg) throws DataTypeException, SQLException { | |||||
| public void parseMessage(Message msg) throws DataTypeException { | |||||
| if (msg instanceof BAR_P05) { | if (msg instanceof BAR_P05) { | ||||
| BAR_P05 p05 = (BAR_P05) msg; | BAR_P05 p05 = (BAR_P05) msg; | ||||
| EVN evnSegment = p05.getEVN(); | EVN evnSegment = p05.getEVN(); | ||||
| PID pidSegment = p05.getPID(); | PID pidSegment = p05.getPID(); | ||||
| DBHandler dh = new DBHandler(); | DBHandler dh = new DBHandler(); | ||||
| Patient patient =dh.getPatient(Integer.valueOf(pidSegment.getPid3_PatientIdentifierList(0).getIDNumber().getValue())); | Patient patient =dh.getPatient(Integer.valueOf(pidSegment.getPid3_PatientIdentifierList(0).getIDNumber().getValue())); | ||||
| Fall fall = new Fall(); | Fall fall = new Fall(); | ||||
| LocalDateTime ldt = generateLocalDateTimeFromHl7(p05); | LocalDateTime ldt = generateLocalDateTimeFromHl7(p05); | ||||
| patient.setBearbeitetDatumZeit(ldt); | 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.setNachname(pidSegment.getPid5_PatientName(0).getFamilyName().getName()); | ||||
| patient.setVorname(pidSegment.getPid5_PatientName(0).getGivenName().getValue()); | patient.setVorname(pidSegment.getPid5_PatientName(0).getGivenName().getValue()); | ||||
| ca.uhn.hl7v2.model.v251.datatype.DTM geburtsTag = pidSegment.getPid7_DateTimeOfBirth().getTime(); | 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.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.<ValidationContext>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 { | public LocalDateTime generateLocalDateTimeFromHl7(BAR_P05 msg) throws DataTypeException { | ||||