From 900084b57eb88ff8971b54c5a6a8089458785620 Mon Sep 17 00:00:00 2001 From: John Eipe Date: Thu, 13 Mar 2025 15:57:28 -0500 Subject: [PATCH 1/2] This attribute is needed for Event Metric even though it is not used in D_CONTACT_RECORD and default value fix for BMIRD datamart --- ...d_strep_pneumo_datamart_postprocessing.sql | 25 ++++++++-- .../repository/model/dto/Contact.java | 3 ++ .../model/reporting/ContactReporting.java | 1 + ...rep_pneumo_datamart_postprocessing-001.sql | 49 ++++++++++++------- 4 files changed, 56 insertions(+), 22 deletions(-) diff --git a/db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql b/db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql index 2586c5c1..e542785c 100644 --- a/db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql +++ b/db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql @@ -1,4 +1,4 @@ -CREATE PROCEDURE [dbo].[sp_bmird_strep_pneumo_datamart_postprocessing] +CREATE or ALTER PROCEDURE [dbo].[sp_bmird_strep_pneumo_datamart_postprocessing] @phc_uids nvarchar(max), @debug bit = 'false' AS @@ -9,7 +9,7 @@ BEGIN DECLARE @Proc_Step_no FLOAT = 0; DECLARE @Proc_Step_Name VARCHAR(200) = ''; DECLARE @batch_id bigint; - SET @batch_id = cast((format(getdate(), 'yyMMddHHmmss')) as bigint); + SET @batch_id = cast((format(getdate(), 'yyMMddHHmmssffff')) as bigint); DECLARE @Dataflow_Name VARCHAR(200) = 'BMIRD_STREP_PNEUMO Post-Processing Event'; DECLARE @Package_Name VARCHAR(200) = 'sp_bmird_strep_pneumo_datamart_postprocessing'; @@ -874,7 +874,16 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table SELECT INVESTIGATION_KEY, STRING_AGG(TYPES_OF_INFECTIONS_, ',') WITHIN GROUP (ORDER BY TYPES_OF_INFECTIONS_ DESC) - AS TYPE_INFECTION_OTHERS_CONCAT + AS TYPE_INFECTION_OTHERS_CONCAT, + 'No' as TYPE_INFECTION_BACTEREMIA, + 'No' as TYPE_INFECTION_PNEUMONIA, + 'No' as TYPE_INFECTION_MENINGITIS, + 'No' as TYPE_INFECTION_EMPYEMA, + 'No' as TYPE_INFECTION_CELLULITIS, + 'No' as TYPE_INFECTION_PERITONITIS, + 'No' as TYPE_INFECTION_PERICARDITIS, + 'No' as TYPE_INFECTION_PUERPERAL_SEP, + 'No' as TYPE_INFECTION_SEP_ARTHRITIS into #TYPE_INFECTION_INFO_OTHERS FROM #DM_BMD118 WHERE _mark_ = 0 @@ -1022,7 +1031,13 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table SELECT INVESTIGATION_KEY, STRING_AGG(STERILE_SITE_, ',') WITHIN GROUP (ORDER BY STERILE_SITE_ DESC) - AS STERILE_SITE_OTHERS_CONCAT + AS STERILE_SITE_OTHERS_CONCAT, + 'No' as STERILE_SITE_BLOOD, + 'No' as STERILE_SITE_CEREBRAL_SF, + 'No' as STERILE_SITE_PLEURAL_FLUID, + 'No' as STERILE_SITE_PERITONEAL_FLUID, + 'No' as STERILE_SITE_PERICARDIAL_FLUID, + 'No' as STERILE_SITE_JOINT_FLUID into #STEP_STERILE_SITE_INFO_OTHERS FROM #DM_BMD122 WHERE _mark_ = 0 @@ -1584,4 +1599,4 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table RETURN -1 ; END CATCH -END; \ No newline at end of file +END; diff --git a/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/dto/Contact.java b/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/dto/Contact.java index 4507d98c..fe0a582b 100644 --- a/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/dto/Contact.java +++ b/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/dto/Contact.java @@ -58,6 +58,9 @@ public class Contact { @Column(name="ctt_inv_assigned_dt") private String cttInvAssignedDt; + @Column(name="jurisdiction_cd") + private String jurisdictionCd; + @Column(name="ctt_jurisdiction_nm") private String cttJurisdictionNm; diff --git a/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/reporting/ContactReporting.java b/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/reporting/ContactReporting.java index 2cfc547f..dd775e4a 100644 --- a/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/reporting/ContactReporting.java +++ b/investigation-service/src/main/java/gov/cdc/etldatapipeline/investigation/repository/model/reporting/ContactReporting.java @@ -53,6 +53,7 @@ public class ContactReporting { private String localId; private Long namedDuringInterviewUid; private Long programJurisdictionOid; + private String jurisdictionCd; private String recordStatusCd; private String recordStatusTime; private String subjectEntityEpiLinkId; diff --git a/liquibase-service/src/main/resources/db/rdb_modern/routines/140-sp_bmird_strep_pneumo_datamart_postprocessing-001.sql b/liquibase-service/src/main/resources/db/rdb_modern/routines/140-sp_bmird_strep_pneumo_datamart_postprocessing-001.sql index 2b865e44..e542785c 100644 --- a/liquibase-service/src/main/resources/db/rdb_modern/routines/140-sp_bmird_strep_pneumo_datamart_postprocessing-001.sql +++ b/liquibase-service/src/main/resources/db/rdb_modern/routines/140-sp_bmird_strep_pneumo_datamart_postprocessing-001.sql @@ -1,4 +1,4 @@ -CREATE PROCEDURE [dbo].[sp_bmird_strep_pneumo_datamart_postprocessing] +CREATE or ALTER PROCEDURE [dbo].[sp_bmird_strep_pneumo_datamart_postprocessing] @phc_uids nvarchar(max), @debug bit = 'false' AS @@ -9,7 +9,7 @@ BEGIN DECLARE @Proc_Step_no FLOAT = 0; DECLARE @Proc_Step_Name VARCHAR(200) = ''; DECLARE @batch_id bigint; - SET @batch_id = cast((format(getdate(), 'yyMMddHHmmss')) as bigint); + SET @batch_id = cast((format(getdate(), 'yyMMddHHmmssffff')) as bigint); DECLARE @Dataflow_Name VARCHAR(200) = 'BMIRD_STREP_PNEUMO Post-Processing Event'; DECLARE @Package_Name VARCHAR(200) = 'sp_bmird_strep_pneumo_datamart_postprocessing'; @@ -142,9 +142,9 @@ BEGIN END as PATIENT_ADDRESS into #BMIRD_PATIENT1 from #INVKEYS BC - left join dbo.D_PATIENT as P with (nolock) + left join dbo.D_PATIENT as P with (nolock) on BC.PATIENT_KEY = P.PATIENT_key - left join dbo.CONDITION as C with (nolock) + left join dbo.CONDITION as C with (nolock) on C.CONDITION_KEY = BC.CONDITION_KEY AND P.PATIENT_KEY <> 1 ; @@ -189,9 +189,9 @@ BEGIN from #BMIRD_PATIENT1 as bpa left join dbo.v_nrt_inv_keys_attrs_mapping as inv on bpa.investigation_key = inv.investigation_key - left join dbo.INVESTIGATION i with (nolock) + left join dbo.INVESTIGATION i with (nolock) on i.INVESTIGATION_KEY = bpa.INVESTIGATION_KEY and i.INVESTIGATION_KEY <> 1 - left join dbo.EVENT_METRIC em with (nolock) + left join dbo.EVENT_METRIC em with (nolock) on em.event_uid = i.CASE_UID left outer join dbo.D_ORGANIZATION o with (nolock) on inv.ADT_HSPTL_KEY = o.ORGANIZATION_KEY and o.ORGANIZATION_KEY <> 1 @@ -300,7 +300,7 @@ Step 7: Merge the tables so that both <= 8 and > 8 results are included 1 as SORT_ORDER into #ANTIMICRO1A FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.ANTIMICROBIAL a with (nolock) + INNER JOIN dbo.ANTIMICROBIAL a with (nolock) ON bc.ANTIMICROBIAL_GRP_KEY = a.ANTIMICROBIAL_GRP_KEY WHERE a.ANTIMICROBIAL_GRP_KEY <> 1 AND a.ANTIMICROBIAL_AGENT_TESTED_IND = 'PENICILLIN' ORDER BY INVESTIGATION_KEY, SORT_ORDER; @@ -546,7 +546,7 @@ Step 5: Merge the tables so that both <= 8 and > 8 results are included a.UNDERLYING_CONDITION_NM as UNDERLYING_CONDITION_ into #BMD127 FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) on bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY WHERE a.UNDERLYING_CONDITION_NM IS NOT NULL ORDER BY bc.INVESTIGATION_KEY, a.UNDERLYING_CONDITION_NM; @@ -653,7 +653,7 @@ Step 4: Merge the new table with the BMIRD_ANTIMICRO table a.NON_STERILE_SITE AS NON_STERILE_SITE_ into #DM_BMD125 FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) on bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY WHERE A.NON_STERILE_SITE IS NOT NULL ORDER BY bc.INVESTIGATION_KEY, a.NON_STERILE_SITE; @@ -664,7 +664,7 @@ Step 4: Merge the new table with the BMIRD_ANTIMICRO table a.STREP_PNEUMO_1_CULTURE_SITES AS ADD_CULTURE_1_SITE_ into #DM_BMD142 FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) on bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY WHERE A.STREP_PNEUMO_1_CULTURE_SITES IS NOT NULL ORDER BY bc.INVESTIGATION_KEY, a.STREP_PNEUMO_1_CULTURE_SITES; @@ -674,7 +674,7 @@ Step 4: Merge the new table with the BMIRD_ANTIMICRO table a.STREP_PNEUMO_2_CULTURE_SITES AS ADD_CULTURE_2_SITE_ into #DM_BMD144 FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) on bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY WHERE A.STREP_PNEUMO_2_CULTURE_SITES IS NOT NULL ORDER BY bc.INVESTIGATION_KEY, a.STREP_PNEUMO_2_CULTURE_SITES; @@ -791,7 +791,7 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table distinct bc.INVESTIGATION_KEY, a.TYPES_OF_INFECTIONS AS TYPES_OF_INFECTIONS_ from #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) on bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY ) SELECT @@ -874,7 +874,16 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table SELECT INVESTIGATION_KEY, STRING_AGG(TYPES_OF_INFECTIONS_, ',') WITHIN GROUP (ORDER BY TYPES_OF_INFECTIONS_ DESC) - AS TYPE_INFECTION_OTHERS_CONCAT + AS TYPE_INFECTION_OTHERS_CONCAT, + 'No' as TYPE_INFECTION_BACTEREMIA, + 'No' as TYPE_INFECTION_PNEUMONIA, + 'No' as TYPE_INFECTION_MENINGITIS, + 'No' as TYPE_INFECTION_EMPYEMA, + 'No' as TYPE_INFECTION_CELLULITIS, + 'No' as TYPE_INFECTION_PERITONITIS, + 'No' as TYPE_INFECTION_PERICARDITIS, + 'No' as TYPE_INFECTION_PUERPERAL_SEP, + 'No' as TYPE_INFECTION_SEP_ARTHRITIS into #TYPE_INFECTION_INFO_OTHERS FROM #DM_BMD118 WHERE _mark_ = 0 @@ -948,7 +957,7 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table distinct bc.INVESTIGATION_KEY, a.STERILE_SITE AS STERILE_SITE_ FROM #BMIRD_PATIENT1 bc - INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) + INNER JOIN dbo.BMIRD_MULTI_VALUE_FIELD a with (nolock) ON bc.BMIRD_MULTI_VAL_GRP_KEY = a.BMIRD_MULTI_VAL_GRP_KEY ) SELECT @@ -1022,7 +1031,13 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table SELECT INVESTIGATION_KEY, STRING_AGG(STERILE_SITE_, ',') WITHIN GROUP (ORDER BY STERILE_SITE_ DESC) - AS STERILE_SITE_OTHERS_CONCAT + AS STERILE_SITE_OTHERS_CONCAT, + 'No' as STERILE_SITE_BLOOD, + 'No' as STERILE_SITE_CEREBRAL_SF, + 'No' as STERILE_SITE_PLEURAL_FLUID, + 'No' as STERILE_SITE_PERITONEAL_FLUID, + 'No' as STERILE_SITE_PERICARDIAL_FLUID, + 'No' as STERILE_SITE_JOINT_FLUID into #STEP_STERILE_SITE_INFO_OTHERS FROM #DM_BMD122 WHERE _mark_ = 0 @@ -1511,7 +1526,7 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table ,src.CULTURE_SEROTYPE ,src.OTHSEROTYPE FROM #BMIRD_ANTIMICRO_6 src - LEFT JOIN dbo.BMIRD_STREP_PNEUMO_DATAMART tgt + LEFT JOIN dbo.BMIRD_STREP_PNEUMO_DATAMART tgt on src.INVESTIGATION_KEY = tgt.INVESTIGATION_KEY WHERE tgt.INVESTIGATION_KEY IS NULL; @@ -1584,4 +1599,4 @@ Step 5: Merge the new table with the BMIRD_ANTIMICRO table RETURN -1 ; END CATCH -END; \ No newline at end of file +END; From 6ffdd54ffa1af89316275b845f50e78c8be417da Mon Sep 17 00:00:00 2001 From: John Eipe Date: Thu, 13 Mar 2025 15:59:29 -0500 Subject: [PATCH 2/2] File renamed --- ....sql => 047-sp_bmird_strep_pneumo_datamart_postprocessing.sql} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename db/upgrade/rdb_modern/routines/{045-sp_bmird_strep_pneumo_datamart_postprocessing.sql => 047-sp_bmird_strep_pneumo_datamart_postprocessing.sql} (100%) diff --git a/db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql b/db/upgrade/rdb_modern/routines/047-sp_bmird_strep_pneumo_datamart_postprocessing.sql similarity index 100% rename from db/upgrade/rdb_modern/routines/045-sp_bmird_strep_pneumo_datamart_postprocessing.sql rename to db/upgrade/rdb_modern/routines/047-sp_bmird_strep_pneumo_datamart_postprocessing.sql