Skip to content

Commit

Permalink
BAH-4061 | Refactor. Change Medication Administration Status Type As …
Browse files Browse the repository at this point in the history
…VarChar (#73)

* [Rahul] | BAH-4061 | Refactor. Change Medication Administration Status Type As VarChar

* [Rahul] | BAH-4061 | Refactor. Remove Unused Dependencies

* [Rahul] | BAH-4061 | Refactor. Change Status Value In Test

* [Rahul] | BAH-4061 | Refactor. Remove MedicationAdministration Status Null Check

* [Rahul] | BAH-4061 | Fix. MedicationAdministrationStatus Test Data
  • Loading branch information
rahu1ramesh authored Aug 23, 2024
1 parent bd02ff4 commit 7380c98
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -285,12 +285,12 @@ public void shouldGetTheSavedSlotsForPatientByAdministeredTime() {


MedicationAdministration medicationAdministration=new MedicationAdministration();
medicationAdministration.setStatus(testConcept);
medicationAdministration.setStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED);
medicationAdministration.setAdministeredDateTime(DateTimeUtil.convertLocalDateTimeDate(medicationAdministeredTime));
MedicationAdministration savedMedicationAdministration= medicationAdministrationDao.createOrUpdate(medicationAdministration);

MedicationAdministration medicationAdministration2=new MedicationAdministration();
medicationAdministration2.setStatus(testConcept);
medicationAdministration2.setStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED);
medicationAdministration2.setAdministeredDateTime(DateTimeUtil.convertLocalDateTimeDate(medicationAdministeredTime2));
MedicationAdministration savedMedicationAdministration2= medicationAdministrationDao.createOrUpdate(medicationAdministration2);

Expand Down Expand Up @@ -376,12 +376,12 @@ public void shouldGetTheSavedSlotsForPatientBySubjectReferenceAndAGivenTimeFrame


MedicationAdministration medicationAdministration=new MedicationAdministration();
medicationAdministration.setStatus(testConcept);
medicationAdministration.setStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED);
medicationAdministration.setAdministeredDateTime(DateTimeUtil.convertLocalDateTimeDate(medicationAdministeredTime));
MedicationAdministration savedMedicationAdministration= medicationAdministrationDao.createOrUpdate(medicationAdministration);

MedicationAdministration medicationAdministration2=new MedicationAdministration();
medicationAdministration2.setStatus(testConcept);
medicationAdministration2.setStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED);
medicationAdministration2.setAdministeredDateTime(DateTimeUtil.convertLocalDateTimeDate(medicationAdministeredTime2));
MedicationAdministration savedMedicationAdministration2= medicationAdministrationDao.createOrUpdate(medicationAdministration2);

Expand Down
4 changes: 2 additions & 2 deletions api/src/test/resources/scheduleMedicationsTestData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@
<ipd_schedule schedule_id="1" uuid="23255323d-e887-4485-bc19-756cdbf00001" subject_reference_id="2" actor_reference_id="1" service_type_id="101" active="true" start_date="2024-01-27 15:48:00.0" creator="1" date_created="2024-01-27 15:48:00.0" voided="false" visit_id="1"/>

<concept concept_id="103" retired="false" datatype_id="4" class_id="11" is_set="false" creator="1" date_created="2024-01-27 15:48:00.0" version="" uuid="0abca361-f6bf-49cc-97de-b2f37f099125"/>
<medication_administration medication_administration_id="1" uuid="23255323d-e887-4485-bc19-756cdbf10101" status="103" creator="1" date_created="2024-01-27 20:00:00.0" voided="false"/>
<medication_administration medication_administration_id="2" uuid="23255323d-e887-4485-bc19-756cdbf10102" status="103" creator="1" date_created="2024-01-28 14:00:00.0" voided="false"/>
<medication_administration medication_administration_id="1" uuid="23255323d-e887-4485-bc19-756cdbf10101" status="COMPLETED" creator="1" date_created="2024-01-27 20:00:00.0" voided="false"/>
<medication_administration medication_administration_id="2" uuid="23255323d-e887-4485-bc19-756cdbf10102" status="COMPLETED" creator="1" date_created="2024-01-28 14:00:00.0" voided="false"/>

<ipd_slot slot_id="1" uuid="23255323d-e887-4485-bc19-756cdbf00101" service_type_id="101" schedule_id="1" status="COMPLETED" start_date_time="2024-01-27 20:00:00.0" creator="1" date_created="2024-01-27 15:48:00.0" voided="false" order_id="1" medication_administration_id="1"/>
<ipd_slot slot_id="2" uuid="23255323d-e887-4485-bc19-756cdbf00102" service_type_id="101" schedule_id="1" status="SCHEDULED" start_date_time="2024-01-28 08:00:00.0" creator="1" date_created="2024-01-27 15:48:00.0" voided="false" order_id="1"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ public static MedicationAdministrationResponse createFrom(org.openmrs.module.ipd
if (openmrsMedicationAdministration == null) {
return null;
}
String status = openmrsMedicationAdministration.getStatus() != null ? openmrsMedicationAdministration.getStatus().getShortNameInLocale(Context.getLocale()).getName() : null;
String status = openmrsMedicationAdministration.getStatus().toCode() != null ? openmrsMedicationAdministration.getStatus().toCode() : null;
String statusReason = openmrsMedicationAdministration.getStatusReason() != null ? openmrsMedicationAdministration.getStatusReason().getDisplayString() : null;
String patientUuid = openmrsMedicationAdministration.getPatient() != null ? openmrsMedicationAdministration.getPatient().getUuid() : null;
String encounterUuid = openmrsMedicationAdministration.getEncounter() != null ? openmrsMedicationAdministration.getEncounter().getUuid() : null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
import org.openmrs.module.webservices.rest.web.RestConstants;
import org.openmrs.module.webservices.rest.web.RestUtil;
import org.openmrs.module.webservices.rest.web.v1_0.controller.BaseRestController;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
Expand All @@ -30,6 +32,7 @@ public class IPDMedicationAdministrationController extends BaseRestController {

private final IPDMedicationAdministrationService ipdMedicationAdministrationService;
private final MedicationAdministrationFactory medicationAdministrationFactory;
private static final Logger log = LoggerFactory.getLogger(IPDMedicationAdministrationController.class);

@Autowired
public IPDMedicationAdministrationController(IPDMedicationAdministrationService ipdMedicationAdministrationService,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import org.openmrs.DrugOrder;
import org.openmrs.api.context.Context;
import org.openmrs.module.fhir2.apiext.translators.MedicationAdministrationStatusTranslator;
import org.openmrs.module.fhir2.apiext.translators.MedicationAdministrationTranslator;
import org.openmrs.module.ipd.api.model.MedicationAdministration;
import org.openmrs.module.ipd.api.model.MedicationAdministrationNote;
Expand All @@ -12,7 +11,6 @@
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;

Expand All @@ -21,21 +19,18 @@
public class MedicationAdministrationFactory {

private MedicationAdministrationTranslator medicationAdministrationTranslator;
private MedicationAdministrationStatusTranslator medicationAdministrationStatusTranslator;

@Autowired
public MedicationAdministrationFactory(MedicationAdministrationTranslator medicationAdministrationTranslator,
MedicationAdministrationStatusTranslator medicationAdministrationStatusTranslator) {
public MedicationAdministrationFactory(MedicationAdministrationTranslator medicationAdministrationTranslator) {
this.medicationAdministrationTranslator = medicationAdministrationTranslator;
this.medicationAdministrationStatusTranslator = medicationAdministrationStatusTranslator;
}

public MedicationAdministration mapRequestToMedicationAdministration(MedicationAdministrationRequest request, MedicationAdministration existingMedicationAdministration) {

MedicationAdministration medicationAdministration = new MedicationAdministration();
if (existingMedicationAdministration ==null || existingMedicationAdministration.getId() == null) {
medicationAdministration.setAdministeredDateTime(request.getAdministeredDateTimeAsLocaltime());
medicationAdministration.setStatus(medicationAdministrationStatusTranslator.toOpenmrsType(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.fromCode(request.getStatus())));
medicationAdministration.setStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.fromCode(request.getStatus()));
medicationAdministration.setPatient(Context.getPatientService().getPatientByUuid(request.getPatientUuid()));
medicationAdministration.setEncounter(Context.getEncounterService().getEncounterByUuid(request.getEncounterUuid()));
medicationAdministration.setDrugOrder((DrugOrder) Context.getOrderService().getOrderByUuid(request.getOrderUuid()));
Expand Down

0 comments on commit 7380c98

Please sign in to comment.