From c84e52d0df20da30bc1e90851250a4b78a0a8be3 Mon Sep 17 00:00:00 2001 From: jewelbonnie Date: Tue, 31 Dec 2024 13:13:44 +0530 Subject: [PATCH] feat: implement grouping based on screening code for each observations modified 745 --- .../converters/shinny/BaseConverter.java | 21 ++++------ .../java/org/techbd/util/ScreeningAnswer.java | 42 ------------------- 2 files changed, 9 insertions(+), 54 deletions(-) delete mode 100644 hub-prime/src/main/java/org/techbd/util/ScreeningAnswer.java diff --git a/hub-prime/src/main/java/org/techbd/service/converters/shinny/BaseConverter.java b/hub-prime/src/main/java/org/techbd/service/converters/shinny/BaseConverter.java index d6a2f64cacf..65bbb9fd29f 100644 --- a/hub-prime/src/main/java/org/techbd/service/converters/shinny/BaseConverter.java +++ b/hub-prime/src/main/java/org/techbd/service/converters/shinny/BaseConverter.java @@ -10,27 +10,22 @@ import org.hl7.fhir.r4.model.Extension; import org.hl7.fhir.r4.model.Reference; import org.hl7.fhir.r4.model.StringType; -import org.techbd.util.ScreeningAnswer; + import org.techbd.util.YamlUtil; + public abstract class BaseConverter implements IConverter { public static Map PROFILE_MAP = getProfileUrlMap(); - public static Map> QUESTIONS_MAP = getConfigMap(); - public static Map SCREENING_ANSWER_MAP = ScreeningAnswer.getCodeToScoreMap(); public static Map getProfileUrlMap() { return YamlUtil.getYamlResourceAsMap("src/main/resources/shinny/shinny-artifacts/profile.yml"); } - public static Map> getConfigMap() { - return YamlUtil.getYamlResourceAsListMap("src/main/resources/shinny/shinny-artifacts/config.yml"); - } - public CanonicalType getProfileUrl() { return new CanonicalType(PROFILE_MAP.get(getResourceType().name().toLowerCase())); } - public static Extension createExtension(String url,String value, String system, String code, String display) { + public static Extension createExtension(String url, String value, String system, String code, String display) { if (StringUtils.isEmpty(url)) { throw new IllegalArgumentException("Extension URL cannot be null or empty"); } @@ -51,15 +46,17 @@ public static Extension createExtension(String url,String value, String system, codeableConcept.addCoding(coding); extension.setValue(codeableConcept); } - if (StringUtils.isNotEmpty(value)){ + if (StringUtils.isNotEmpty(value)) { extension.setValue(new StringType(value)); } return extension; } - /** + + /** * Method to create a Reference object and populate the 'assigner' field * - * @param referenceString The reference string in the format "ResourceType/ResourceId" + * @param referenceString The reference string in the format + * "ResourceType/ResourceId" * @return A Reference object representing the assigner reference */ public static Reference createAssignerReference(String referenceString) { @@ -69,7 +66,7 @@ public static Reference createAssignerReference(String referenceString) { } Reference reference = new Reference(); reference.setReference(referenceString); - + return reference; } } diff --git a/hub-prime/src/main/java/org/techbd/util/ScreeningAnswer.java b/hub-prime/src/main/java/org/techbd/util/ScreeningAnswer.java deleted file mode 100644 index e25ec3f2981..00000000000 --- a/hub-prime/src/main/java/org/techbd/util/ScreeningAnswer.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.techbd.util; - -import java.util.Map; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -public enum ScreeningAnswer { - - NEVER(1, "LA6270-8", "Never"), - RARELY(2, "LA10066-1", "Rarely"), - SOMETIMES(3, "LA10082-8", "Sometimes"), - FAIRLY_OFTEN(4, "LA16644-9", "Fairly often"), - FREQUENTLY(5, "LA6482-9", "Frequently"); - - private final int score; - private final String code; - private final String text; - - ScreeningAnswer(int score, String code, String text) { - this.score = score; - this.code = code; - this.text = text; - } - - public int getScore() { - return score; - } - - public String getCode() { - return code; - } - - public String getText() { - return text; - } - - public static Map getCodeToScoreMap() { - return Stream.of(values()) - .collect(Collectors.toMap(ScreeningAnswer::getCode, ScreeningAnswer::getScore)); - } -} -