| @@ -86,6 +86,10 @@ public class HL7 { | |||||
| pidSegment.getPid13_PhoneNumberHome (0).getTelephoneNumber ().setValue ( patient.getTelefon () ); | pidSegment.getPid13_PhoneNumberHome (0).getTelephoneNumber ().setValue ( patient.getTelefon () ); | ||||
| pidSegment.getPid16_MaritalStatus ().getAlternateIdentifier ().setValue ( patient.getFamilienstand ().toString()); | pidSegment.getPid16_MaritalStatus ().getAlternateIdentifier ().setValue ( patient.getFamilienstand ().toString()); | ||||
| <<<<<<< HEAD | |||||
| ======= | |||||
| validateMessage(adt); | |||||
| >>>>>>> a06bab3... saveMessage in a file Diagnsen ersteinma rausgenommen | |||||
| /* | /* | ||||
| //Dg1 (Diagnosen) | //Dg1 (Diagnosen) | ||||
| List<DG1> dg1List = new ArrayList<> ( ); | List<DG1> dg1List = new ArrayList<> ( ); | ||||
| @@ -102,9 +106,14 @@ public class HL7 { | |||||
| */ | */ | ||||
| //print generated message | //print generated message | ||||
| printXMLEncodedMessageADT(adt); | printXMLEncodedMessageADT(adt); | ||||
| <<<<<<< HEAD | |||||
| ======= | |||||
| } | } | ||||
| >>>>>>> a06bab3... saveMessage in a file Diagnsen ersteinma rausgenommen | |||||
| /** | /** | ||||
| * 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 | ||||
| @@ -130,8 +139,54 @@ public class HL7 { | |||||
| * | * | ||||
| * @param msg | * @param msg | ||||
| */ | */ | ||||
| <<<<<<< HEAD | |||||
| public void parseMessage(Message msg) throws DataTypeException { | public void parseMessage(Message msg) throws DataTypeException { | ||||
| ======= | |||||
| public void parseMessage(Message msg) throws DataTypeException, SQLException { | |||||
| 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.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()); | |||||
| 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(); | |||||
| */ | |||||
| } | |||||
| >>>>>>> a06bab3... saveMessage in a file Diagnsen ersteinma rausgenommen | |||||
| } | |||||
| 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 { | ||||