Skip to content

Commit

Permalink
BAH-3209 | added provider info in the obs response (#230)
Browse files Browse the repository at this point in the history
  • Loading branch information
kavitha-sundararajan authored Sep 12, 2023
1 parent 440647c commit 29b508e
Showing 1 changed file with 16 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,21 @@


import org.openmrs.Encounter;
import org.openmrs.EncounterProvider;
import org.openmrs.Obs;
import org.openmrs.Visit;
import org.openmrs.module.bahmniemrapi.drugorder.mapper.BahmniProviderMapper;
import org.openmrs.module.emrapi.encounter.domain.EncounterTransaction;
import org.openmrs.module.webservices.rest.web.RestConstants;
import org.openmrs.module.webservices.rest.web.annotation.PropertyGetter;
import org.openmrs.module.webservices.rest.web.representation.NamedRepresentation;
import org.openmrs.module.webservices.rest.web.representation.Representation;
import org.openmrs.module.webservices.rest.web.resource.impl.DelegatingResourceDescription;
import org.openmrs.module.webservices.rest.web.v1_0.resource.openmrs1_11.ObsResource1_11;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@org.openmrs.module.webservices.rest.web.annotation.Resource(name = RestConstants.VERSION_1 + "/obs", supportedClass = Obs.class, supportedOpenmrsVersions = {"1.10.* - 2.*"}, order = 0)
public class BahmniObsResource extends ObsResource1_11 {
Expand All @@ -29,6 +34,7 @@ public DelegatingResourceDescription getRepresentationDescription(Representation
description.addProperty("visitUuid");
description.addProperty("encounterUuid");
description.addProperty("visitStartDateTime");
description.addProperty("providerList");
return description;
}
return representationDescription;
Expand All @@ -53,5 +59,15 @@ public String getEncounterUuid(Obs obs) {
Encounter encounter = obs.getEncounter();
return encounter.getUuid();
}

@PropertyGetter("providerList")
public List<EncounterTransaction.Provider> getProviderList(Obs obs) {
List<EncounterTransaction.Provider> providerList = new ArrayList<>();
BahmniProviderMapper bahmniProviderMapper = new BahmniProviderMapper();
for (EncounterProvider encounterProvider : obs.getEncounter().getEncounterProviders()) {
providerList.add(bahmniProviderMapper.map(encounterProvider.getProvider()));
}
return providerList;
}
}

0 comments on commit 29b508e

Please sign in to comment.