ソースを参照

saveMessage in a file Diagnsen ersteinma rausgenommen

hapi
Natascha 10年前
committed by taschi
コミット
1841a9ef1b
1個のファイルの変更55行の追加0行の削除
  1. +55
    -0
      src/main/java/de/uniluebeck/mi/projmi6/HL7.java

+ 55
- 0
src/main/java/de/uniluebeck/mi/projmi6/HL7.java ファイルの表示

@@ -86,6 +86,10 @@ public class HL7 {
pidSegment.getPid13_PhoneNumberHome (0).getTelephoneNumber ().setValue ( patient.getTelefon () );
pidSegment.getPid16_MaritalStatus ().getAlternateIdentifier ().setValue ( patient.getFamilienstand ().toString());

<<<<<<< HEAD
=======
validateMessage(adt);
>>>>>>> a06bab3... saveMessage in a file Diagnsen ersteinma rausgenommen
/*
//Dg1 (Diagnosen)
List<DG1> dg1List = new ArrayList<> ( );
@@ -102,9 +106,14 @@ public class HL7 {
*/
//print generated message
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)
* @param msg
@@ -130,8 +139,54 @@ public class HL7 {
*
* @param msg
*/
<<<<<<< HEAD
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 {


読み込み中…
キャンセル
保存