From 84eb47058349464def68cc76c3cf1d754e8d7cc2 Mon Sep 17 00:00:00 2001 From: lucyjemutai <130601439+lucyjemutai@users.noreply.github.com> Date: Thu, 14 Sep 2023 09:05:06 +0300 Subject: [PATCH] Previous values are picked from old encounters --- src/api/api.ts | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/api/api.ts b/src/api/api.ts index 0acc45d8..55857a5f 100644 --- a/src/api/api.ts +++ b/src/api/api.ts @@ -1,3 +1,4 @@ +/* eslint-disable prettier/prettier */ import { openmrsFetch, openmrsObservableFetch } from '@openmrs/esm-framework'; import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; @@ -27,13 +28,6 @@ export function getLocationsByTag(tag: string): Observable<{ uuid: string; displ ); } -export function getPreviousEncounter(patientUuid: string, encounterType) { - const query = `encounterType=${encounterType}&patient=${patientUuid}`; - return openmrsFetch(`/ws/rest/v1/encounter?${query}&limit=1&v=${encounterRepresentation}`).then(({ data }) => { - return data.results.length ? data.results[0] : null; - }); -} - export function fetchConceptNameByUuid(conceptUuid: string) { return openmrsFetch(`/ws/rest/v1/concept/${conceptUuid}/name?limit=1`).then(({ data }) => { if (data.results.length) { @@ -97,3 +91,23 @@ export async function fetchClobData(form: OpenmrsForm): Promise { return clobDataResponse; } + +export function getPreviousEncounter(patientUuid: string, encounterType: string) { + const query = `patient=${patientUuid}&_sort=-_lastUpdated&_count=1&type=${encounterType}`; + return openmrsFetch(`/ws/fhir2/R4/Encounter?${query}`).then(async ({ data }) => { + console.log('LUCY_FHIR', data); + if (data.total > 0) { + const latestEncounter = data.entry[0].resource; + console.log('TEST', latestEncounter.id); + + const query = `encounterType=${encounterType}&patient=${patientUuid}`; + return openmrsFetch(`/ws/rest/v1/encounter/${latestEncounter.id}?${query}&limit=1&v=${encounterRepresentation}`, + ).then(({ data }) => { + console.log('LUCY_REST', data); + return data.results.length ? data.results[0] : null; + }); + } else { + return null; + } + }); +} \ No newline at end of file