From 011add41a6348f7df6d496297835286538cb03cf Mon Sep 17 00:00:00 2001 From: slubwama1 Date: Thu, 4 Dec 2025 05:28:20 +0300 Subject: [PATCH 1/4] U4X-1083: Enable Shared Use of HTS Form Between Lab and Clinician --- .../concepts_and_drugs/tools-2024/Concept.xml | 5 + .../tools-2024/Concept_Name.xml | 2 + .../tools-2024/Concept_Set.xml | 4 + .../jsonforms/HMIS-ACP-018-HTSClientCard.json | 467 ++++-------------- 4 files changed, 117 insertions(+), 361 deletions(-) diff --git a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept.xml b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept.xml index 82ceee4a4..88de36fa5 100644 --- a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept.xml +++ b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept.xml @@ -944,4 +944,9 @@ + + + + + diff --git a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml index 9b8397e00..8df307ee5 100644 --- a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml +++ b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml @@ -969,4 +969,6 @@ + + diff --git a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Set.xml b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Set.xml index dad1ef989..67aada3d6 100644 --- a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Set.xml +++ b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Set.xml @@ -393,4 +393,8 @@ + + + + diff --git a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json index 75724e6f2..11c3a4647 100644 --- a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json +++ b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json @@ -14,7 +14,7 @@ "sections": [ { "label": "Client Details", - "isExpanded": "true", + "isExpanded": "false", "questions": [ { "label": "Serial number", @@ -432,7 +432,7 @@ }, { "label": "HIV Risk Assessment", - "isExpanded": "true", + "isExpanded": "false", "questions": [ { "label": "Testing for HIV for the first time", @@ -747,380 +747,125 @@ ] }, { - "label": "HIV Test Results", - "isExpanded": "true", + "label": "HIV Test Results From Lab", + "isExpanded": "false", "questions": [ { - "label": "HIV Test-1 Kit", - "type": "obs", - "id": "testKit1", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc1d9a-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "cbbc130e-a7e2-11ed-afa1-0242ac120002", - "label": "Determine", - "conceptMappings": [] - }, - { - "concept": "cbbc1502-a7e2-11ed-afa1-0242ac120002", - "label": "HIV- Syphilis-Duo", - "conceptMappings": [] - } - ] - } - }, - { - "label": "HIV Test-1 Kit Results", - "type": "obs", - "id": "testKit1Results", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc1fb6-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "isEmpty(testKit1)" - } - }, - { - "label": "HIV Test-2 Kit", - "type": "obs", - "id": "testKit2", - "questionOptions": { - "rendering": "checkbox", - "concept": "cbbc26fa-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "cbbc16b0-a7e2-11ed-afa1-0242ac120002", - "label": "Stat Pak", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "testKit1Results !=='dc9f3fdd-30ab-102d-86b0-7a5022ba4115'" - } - }, - { - "label": "HIV Test-2 Kit Results", - "type": "obs", - "id": "testKit2Results", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc2394-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "isEmpty(testKit2)" - } - }, - { - "label": "HIV Test-3 Kit", - "type": "obs", - "id": "testKit3", + "label": "HIV Test Order", + "type": "testOrder", + "id": "hivTestOrder", + "required": "true", "questionOptions": { - "rendering": "checkbox", - "concept": "5140ca0a-b2c0-11ed-afa1-0242ac120002", + "rendering": "repeating", + "orderSettingUuid": "OUTPATIENT", + "orderType": "testorder", "answers": [ { - "concept": "51408284-b2c0-11ed-afa1-0242ac120002", - "label": "SD Bioline", + "concept": "8eb0bd19-ca11-4be1-8e58-c59aa53aad83", + "label": "HIV test", "conceptMappings": [] } - ] + ], + "concept": "8eb0bd19-ca11-4be1-8e58-c59aa53aad83" }, - "hide": { - "hideWhenExpression": "testKit2Results !=='dc9f3fdd-30ab-102d-86b0-7a5022ba4115'" - } + "validators": [] }, { - "label": "HIV Test-3 Kit Results", - "type": "obs", - "id": "testKit3Results", + "type": "obsGroup", "questionOptions": { - "rendering": "radio", - "concept": "cbbc2556-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] + "rendering": "group", + "concept": "8eb0bd19-ca11-4be1-8e58-c59aa53aad83" }, - "hide": { - "hideWhenExpression": "isEmpty(testKit3)" - } - }, - { - "label": "HIV final test results", - "type": "obs", - "id": "hivFinalTestResults", - "questionOptions": { - "rendering": "select", - "concept": "3d292447-d7df-417f-8a71-e53e869ec89d", - "answers": [ - { - "concept": "dcdf4241-30ab-102d-86b0-7a5022ba4115", - "label": "Positive", - "conceptMappings": [] - }, - { - "concept": "dcdf4653-30ab-102d-86b0-7a5022ba4115", - "label": "Negative", - "conceptMappings": [] - }, - { - "concept": "16d4ad2b-c4eb-4e88-a27f-5d9b9b6a9aed", - "label": "Inconclusive", - "conceptMappings": [] - } - ] - } - }, - { - "label": "Sample sent to Reference Laboratory", - "type": "obs", - "id": "sampleSentToLab", - "required": "false", - "questionOptions": { - "rendering": "radio", - "concept": "11316f54-0437-449c-b698-9e2dc48daa11", - "answers": [ - { - "concept": "1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "label": "Yes" - }, - { - "concept": "1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "label": "No" - }, - { - "concept": "701d63e2-9641-4360-a5a1-8e2043a4249b", - "label": "Not Collected" - } - ] - } + "id": "labTestResults", + "label": "Lab Test Results", + "questions": [ + { + "type": "obs", + "questionOptions": { + "rendering": "radio", + "concept": "7803ffa8-c24f-41ec-89f8-821e2a71fda6", + "answers": [ + { + "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", + "label": "NON-REACTIVE" + }, + { + "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", + "label": "REACTIVE" + } + ] + }, + "id": "determine", + "label": "Determine" + }, + { + "type": "obs", + "questionOptions": { + "rendering": "radio", + "concept": "85534e6a-22a1-433e-aa57-f358f1eb0a16", + "answers": [ + { + "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", + "label": "NON-REACTIVE" + }, + { + "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", + "label": "REACTIVE" + } + ] + }, + "id": "statPak", + "label": "Stat Pak " + }, + { + "type": "obs", + "questionOptions": { + "rendering": "radio", + "concept": "ad4760fe-9a58-4e60-b626-29d345b9a220", + "answers": [ + { + "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", + "label": "NON-REACTIVE" + }, + { + "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", + "label": "REACTIVE" + } + ] + }, + "id": "sdBioline", + "label": "SD Bioline" + }, + { + "type": "obs", + "questionOptions": { + "rendering": "radio", + "concept": "37a5bf42-5b94-4ae7-8c46-9ebff55ef349", + "answers": [ + { + "concept": "16d4ad2b-c4eb-4e88-a27f-5d9b9b6a9aed", + "label": "INC (HTC)" + }, + { + "concept": "dc85aa72-30ab-102d-86b0-7a5022ba4115", + "label": "NEGATIVE" + }, + { + "concept": "dc866728-30ab-102d-86b0-7a5022ba4115", + "label": "POSITIVE" + } + ] + }, + "id": "finalResult", + "label": "FInal Result" + } + ] } ] }, - { - "label": "HIV Test Results (FOR MCH TESTING)", - "isExpanded": "true", - "questions": [ - { - "label": "HIV Test-1 Kit", - "type": "obs", - "id": "mchTestKit1", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc1d9a-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "cbbc130e-a7e2-11ed-afa1-0242ac120002", - "label": "Determine", - "conceptMappings": [] - } - ] - } - }, - { - "label": "HIV Test-1 Kit Results", - "type": "obs", - "id": "mchTestKit1Results", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc1fb6-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "isEmpty(testKit1)" - } - }, - { - "label": "HIV Test-2 Kit", - "type": "obs", - "id": "mchTestKit2", - "questionOptions": { - "rendering": "checkbox", - "concept": "cbbc26fa-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "cbbc16b0-a7e2-11ed-afa1-0242ac120002", - "label": "Stat Pak", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "testKit1Results !=='dc9f3fdd-30ab-102d-86b0-7a5022ba4115'" - } - }, - { - "label": "HIV Test-2 Kit Results", - "type": "obs", - "id": "mchTestKit2Results", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc2394-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "isEmpty(testKit2)" - } - }, - { - "label": "HIV Test-3 Kit", - "type": "obs", - "id": "mchTestKit3", - "questionOptions": { - "rendering": "checkbox", - "concept": "5140ca0a-b2c0-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "51408284-b2c0-11ed-afa1-0242ac120002", - "label": "SD Bioline", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "testKit2Results !=='dc9f3fdd-30ab-102d-86b0-7a5022ba4115'" - } - }, - { - "label": "HIV Test-3 Kit Results", - "type": "obs", - "id": "mchTestKit3Results", - "questionOptions": { - "rendering": "radio", - "concept": "cbbc2556-a7e2-11ed-afa1-0242ac120002", - "answers": [ - { - "concept": "dc9f442a-30ab-102d-86b0-7a5022ba4115", - "label": "Non-Reactive (NR)", - "conceptMappings": [] - }, - { - "concept": "dc9f3fdd-30ab-102d-86b0-7a5022ba4115", - "label": "Reactive (R)", - "conceptMappings": [] - } - ] - }, - "hide": { - "hideWhenExpression": "isEmpty(testKit3)" - } - }, - { - "label": "HIV final test results", - "type": "obs", - "id": "mchHivFinalTestResults", - "questionOptions": { - "rendering": "select", - "concept": "3d292447-d7df-417f-8a71-e53e869ec89d", - "answers": [ - { - "concept": "dcdf4241-30ab-102d-86b0-7a5022ba4115", - "label": "Positive", - "conceptMappings": [] - }, - { - "concept": "dcdf4653-30ab-102d-86b0-7a5022ba4115", - "label": "Negative", - "conceptMappings": [] - }, - { - "concept": "16d4ad2b-c4eb-4e88-a27f-5d9b9b6a9aed", - "label": "Inconclusive", - "conceptMappings": [] - } - ] - } - }, - { - "label": "Sample sent to Reference Laboratory", - "type": "obs", - "id": "mchSampleSentToLab", - "required": "false", - "questionOptions": { - "rendering": "radio", - "concept": "", - "answers": [ - { - "concept": "1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "label": "Yes" - }, - { - "concept": "1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "label": "No" - }, - { - "concept": "", - "label": "Not Collected" - } - ] - } - } - ], - "hide": { - "hideWhenExpression": "testKit2Results !== 'dc9f3fdd-30ab-102d-86b0-7a5022ba4115' && testKit1 !== 'cbbc1502-a7e2-11ed-afa1-0242ac120002'" - } - }, { "label": "Result Received As/TB Screening", - "isExpanded": "true", + "isExpanded": "false", "questions": [ { "label": "Results received as individual", @@ -1316,7 +1061,7 @@ }, { "label": "Prevention Services and Referral", - "isExpanded": "true", + "isExpanded": "false", "questions": [ { "label": "Client has been linked to prevention services", @@ -1480,7 +1225,7 @@ }, { "label": "Rapid Test for HIV Recent Infection", - "isExpanded": "true", + "isExpanded": "false", "questions": [ { "label": "Test Name", From c9ef03501cbaa096566393f5bb1048703d53b9bf Mon Sep 17 00:00:00 2001 From: slubwama1 Date: Thu, 4 Dec 2025 05:32:19 +0300 Subject: [PATCH 2/4] ensure test order is not requiered --- .../resources/jsonforms/HMIS-ACP-018-HTSClientCard.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json index 11c3a4647..ab7a513c7 100644 --- a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json +++ b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json @@ -747,14 +747,14 @@ ] }, { - "label": "HIV Test Results From Lab", + "label": "HIV Test and Results", "isExpanded": "false", "questions": [ { "label": "HIV Test Order", "type": "testOrder", "id": "hivTestOrder", - "required": "true", + "required": false, "questionOptions": { "rendering": "repeating", "orderSettingUuid": "OUTPATIENT", From a11f0fe439514e869e8da82b88f86b5bf1b671ac Mon Sep 17 00:00:00 2001 From: slubwama1 Date: Thu, 4 Dec 2025 08:15:01 +0300 Subject: [PATCH 3/4] change name to HIV test panel --- .../metadata/concepts_and_drugs/tools-2024/Concept_Name.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml index 8df307ee5..66edff0de 100644 --- a/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml +++ b/api/src/main/resources/metadata/concepts_and_drugs/tools-2024/Concept_Name.xml @@ -969,6 +969,5 @@ - - + From 60341094ff623eae7096e60f40d82107cd2ee69a Mon Sep 17 00:00:00 2001 From: slubwama1 Date: Thu, 4 Dec 2025 08:19:23 +0300 Subject: [PATCH 4/4] add removed question if test sent to referral lab --- .../jsonforms/HMIS-ACP-018-HTSClientCard.json | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json index ab7a513c7..a18501312 100644 --- a/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json +++ b/omod/src/main/webapp/resources/jsonforms/HMIS-ACP-018-HTSClientCard.json @@ -747,14 +747,14 @@ ] }, { - "label": "HIV Test and Results", + "label": "HIV Test Results From Lab", "isExpanded": "false", "questions": [ { "label": "HIV Test Order", "type": "testOrder", "id": "hivTestOrder", - "required": false, + "required": "true", "questionOptions": { "rendering": "repeating", "orderSettingUuid": "OUTPATIENT", @@ -860,6 +860,30 @@ "label": "FInal Result" } ] + }, + { + "label": "Sample sent to Reference Laboratory", + "type": "obs", + "id": "sampleSentToLab", + "required": "false", + "questionOptions": { + "rendering": "radio", + "concept": "11316f54-0437-449c-b698-9e2dc48daa11", + "answers": [ + { + "concept": "1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "label": "Yes" + }, + { + "concept": "1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "label": "No" + }, + { + "concept": "701d63e2-9641-4360-a5a1-8e2043a4249b", + "label": "Not Collected" + } + ] + } } ] },