2016-06-28 46 views
0

我正在使用HAPI FHIR DSTU2HL7Org在遠程服務器中創建MedicationOrders。該對象的構造如下。複製生成的消息中包含的元素 - HAPI FHIR DSTU2HL7Org

MedicationOrder[] medicationOrder = null; 
MedicationOrderDataWrapper[] medicationOrderWrapper = new MedicationOrderDataToolkit().getMedicationOrderDataWrapper(wrapper); 

if(medicationOrderWrapper != null) 
{ 
    medicationOrder = new MedicationOrder[medicationOrderWrapper.length]; 
    for(int i=0; i<medicationOrderWrapper.length; i++) 
    { 
    medicationOrder[i] = new MedicationOrder(); 
    MedicationOrderDosageInstructionComponent dosageInstruction = new MedicationOrderDosageInstructionComponent().setDose(medicationOrderWrapper[i].getDoseQuantity()). 
     setTiming(medicationOrderWrapper[i].getTiming()).setAdditionalInstructions(medicationOrderWrapper[i].getAdditionalInstruction()); 

    medicationOrder[i].addDosageInstruction(dosageInstruction).setEncounterTarget(medicationOrderWrapper[i].getEncounter()). 
    setMedication(medicationOrderWrapper[i].getMedicationCodeableConcept()).setPatientTarget(medicationOrderWrapper[i].getPatient()).setPrescriberTarget(medicationOrderWrapper[i].getPractitioner()) 
    .addExtension(medicationOrderWrapper[i].getExtension()); 

    medicationOrder[i].getContained().add(medicationOrder[i].getEncounterTarget()); 
    medicationOrder[i].getContained().add(medicationOrderWrapper[i].getOrganization()); 
    medicationOrder[i].getContained().add(medicationOrderWrapper[i].getLocation()); 
    medicationOrder[i].getContained().add(medicationOrder[i].getPatientTarget()); 
    medicationOrder[i].getContained().add(medicationOrder[i].getPrescriberTarget()); 

    medicationOrder[i].setEncounter(new Reference("#" + medicationOrder[i].getEncounterTarget().getId())) 
    .setPatient(new Reference("#" + medicationOrder[i].getPatientTarget().getId()).setDisplay(medicationOrder[i].getPatientTarget().getName().get(0).getText())) 
    .setPrescriber(new Reference("#" + medicationOrder[i].getPrescriberTarget().getId()).setDisplay(medicationOrder[i].getPrescriberTarget().getName().getText())) 
    .setReason(medicationOrderWrapper[i].getReasonCodeableConcept()).addIdentifier(medicationOrderWrapper[i].getCosmicIdentifier()); 

但是,此代碼導致生成的xml消息中包含的元素重複。組織和位置元素分別出現3次和2次,而患者,醫生和相遇只出現一次。

任何人都可以解釋一下嗎?

回答

0

這實際上聽起來像一個錯誤。您是否介意在GitHub問題跟蹤器上提交報告?

+0

謝謝阿格紐先生。我會報告一個錯誤。 –

相關問題