From c827a0e983dd5e0fc527087d4fb39b6b222ef9cc Mon Sep 17 00:00:00 2001 From: Faith Kamau <121166087+hiqedme@users.noreply.github.com> Date: Thu, 23 May 2024 15:52:26 +0300 Subject: [PATCH 1/2] POC-155 fixed faulty contact reminders --- service/patient-reminder.service.js | 43 ++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 4 deletions(-) diff --git a/service/patient-reminder.service.js b/service/patient-reminder.service.js index f8aa8b0d9..7cba25adc 100755 --- a/service/patient-reminder.service.js +++ b/service/patient-reminder.service.js @@ -763,6 +763,7 @@ function getIptCompletionReminder(data) { function getFamilyTestingReminder(data) { let reminders = []; return getEncountersByEncounterType(data[0].person_uuid).then((res) => { + console.log('RES: ', res); if (res.results.length === 0) { reminders.push({ message: @@ -1100,12 +1101,46 @@ function transformZeroVl(vl) { } function getEncountersByEncounterType(patient_uuid) { - const family_testing_encounter = '975ae894-7660-4224-b777-468c2e710a2a'; - return new Promise(function (resolve, reject) { + const primaryFamilyTestingEncounter = '975ae894-7660-4224-b777-468c2e710a2a'; + const secondaryFamilyTestingEncounter = + '5a58f6f5-f5a6-47eb-a644-626abd83f83b'; + const specificConceptUuid = '0df3af2d-4eeb-4552-8395-51ef32270842'; + + function findSpecificObservation(encounters) { + for (const encounter of encounters) { + if (Array.isArray(encounter.obs)) { + for (const observation of encounter.obs) { + if (observation.concept.uuid === specificConceptUuid) { + console.log('CHILDREN LESS THAN 19 YEARS, CODED'); + return true; + } + } + } + } + return false; + } + + return new Promise((resolve, reject) => { encounter_service - .getEncountersByEncounterType(patient_uuid, family_testing_encounter) + .getEncountersByEncounterType(patient_uuid, primaryFamilyTestingEncounter) .then((encounters) => { - resolve(encounters); + if (encounters == null || encounters.results.length === 0) { + return encounter_service.getEncountersByEncounterType( + patient_uuid, + secondaryFamilyTestingEncounter + ); + } + return encounters; + }) + .then((encounters) => { + if (encounters == null || encounters.results.length === 0) { + resolve(null); + } else { + if (findSpecificObservation(encounters.results)) { + console.log('Encounters from Family testing: ', encounters); + } + resolve(encounters); + } }) .catch((err) => { reject(err); From 69cd7e03e66e5ac4dd330e709f03ae6cd84b0c29 Mon Sep 17 00:00:00 2001 From: Faith Kamau <121166087+hiqedme@users.noreply.github.com> Date: Fri, 19 Jul 2024 16:13:24 +0300 Subject: [PATCH 2/2] POC-155: --- service/patient-reminder.service.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/service/patient-reminder.service.js b/service/patient-reminder.service.js index 7cba25adc..e645e211d 100755 --- a/service/patient-reminder.service.js +++ b/service/patient-reminder.service.js @@ -542,7 +542,6 @@ function newViralLoadPresent(data) { } function pendingViralLoadLabResult(eidResults) { - // console.log('EID Results', eidResults); let incompleteResult = eidResults.find((result) => { if (result) { if (result.sample_status) { @@ -763,7 +762,6 @@ function getIptCompletionReminder(data) { function getFamilyTestingReminder(data) { let reminders = []; return getEncountersByEncounterType(data[0].person_uuid).then((res) => { - console.log('RES: ', res); if (res.results.length === 0) { reminders.push({ message: @@ -1111,7 +1109,6 @@ function getEncountersByEncounterType(patient_uuid) { if (Array.isArray(encounter.obs)) { for (const observation of encounter.obs) { if (observation.concept.uuid === specificConceptUuid) { - console.log('CHILDREN LESS THAN 19 YEARS, CODED'); return true; } }