88import org .springframework .web .bind .annotation .ResponseBody ;
99import org .springframework .web .bind .annotation .RestController ;
1010import org .hl7 .fhir .r4 .model .MedicationRequest ;
11+ import org .hl7 .fhir .r4 .model .Annotation ;
1112import org .hl7 .fhir .r4 .model .MedicationDispense ;
1213import org .hl7 .fhir .r4 .model .Reference ;
1314
@@ -80,6 +81,9 @@ private void handleRxFillMessage(RxFill rxFill, Header header) {
8081 logger .info (" PrescriberOrderNumber: " + header .getPrescriberOrderNumber ());
8182 logger .info (" Dispensed Status: " + dispensedStatus );
8283
84+ String note = rxFill .getFillStatus ().getDispensedStatus ().Note ;
85+ logger .info (" Dispensed Note: " + note );
86+
8387 IFhirResourceDao <MedicationRequest > medicationRequestDao =
8488 jpaRestfulServer .getDao (MedicationRequest .class );
8589 IFhirResourceDao <MedicationDispense > medicationDispenseDao =
@@ -114,6 +118,7 @@ private void handleRxFillMessage(RxFill rxFill, Header header) {
114118 medicationDispense .setMedication (medicationRequest .getMedication ());
115119 medicationDispense .setSubject (medicationRequest .getSubject ());
116120 medicationDispense .addAuthorizingPrescription (new Reference (requestId ));
121+ medicationDispense .addNote (new Annotation ().setText (note ));
117122
118123 // store the MedicationDispense
119124 RequestDetails dispenseDetails = new SystemRequestDetails ();
@@ -130,7 +135,7 @@ private MedicationDispense.MedicationDispenseStatus convertRxFillDispensedStatus
130135 case PARTIALLY_DISPENSED :
131136 return MedicationDispense .MedicationDispenseStatus .INPROGRESS ;
132137 case NOT_DISPENSED :
133- return MedicationDispense .MedicationDispenseStatus .PREPARATION ;
138+ return MedicationDispense .MedicationDispenseStatus .ONHOLD ;
134139 case TRANSFERRED :
135140 case UNKNOWN :
136141 default :
0 commit comments