diff --git a/hmda-quarterly-data-service/src/main/resources/application.conf b/hmda-quarterly-data-service/src/main/resources/application.conf index c916a6ab71..486be341db 100644 --- a/hmda-quarterly-data-service/src/main/resources/application.conf +++ b/hmda-quarterly-data-service/src/main/resources/application.conf @@ -13,91 +13,41 @@ server { db { mv { + periods_annual: "2018,2019,2020,2021,2022" + periods_annual: ${?PERIODS_ANNUAL} + periods_with_quarter: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" + periods_with_quarter: ${?PERIODS_QUARTER} + suffix_home_purchase: "purpose_p" + suffix_home_purchase: ${?SUFFIX_HOME_PURCHASE} + suffix_refinance: "purpose_r" + suffix_refinance: ${?SUFFIX_REFINANCE} app_vol: app_vol app_vol: ${?APP_VOL} - app_vol_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - app_vol_periods: ${?APP_VOL_PERIODS} all_app_vol: all_app_vol all_app_vol: ${?ALL_APP_VOL} - all_app_vol_periods: "2018,2019,2020,2021,2022" - all_app_vol_periods: ${?ALL_APP_VOL_PERIODS} cred_score_by_loan: median_credit_score_by_loan_type cred_score_by_loan: ${?CRED_SCORE_BY_LOAN} - cred_score_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - cred_score_by_loan_periods: ${?CRED_SCORE_BY_LOAN_PERIODS} cred_score_by_re: median_credit_score_by_loan_by_race cred_score_by_re: ${?CRED_SCORE_BY_RE} - cred_score_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - cred_score_by_re_periods: ${?CRED_SCORE_BY_RE_PERIODS} cltv_by_loan: median_cltv_by_loan_type cltv_by_loan: ${?CLTV_BY_LOAN} - cltv_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - cltv_by_loan_periods: ${?CLTV_BY_LOAN_PERIODS} cltv_by_re: median_cltv_by_race cltv_by_re: ${?CLTV_BY_RE} - cltv_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - cltv_by_re_periods: ${?CLTV_BY_RE_PERIODS} dti_by_loan: median_dti_by_loan_type dti_by_loan: ${?DTI_BY_LOAN} - dti_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - dti_by_loan_periods: ${?DTI_BY_LOAN_PERIODS} dti_by_re: median_dti_by_race dti_by_re: ${?DTI_BY_RE} - dti_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - dti_by_re_periods: ${?DTI_BY_RE_PERIODS} denial_rates_by_loan: denial_rates denial_rates_by_loan: ${?DENIAL_RATES_BY_LOAN} - denial_rates_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - denial_rates_by_loan_periods: ${?DENIAL_RATES_BY_LOAN_PERIODS} denial_rates_by_re: denial_rates_by_race denial_rates_by_re: ${?DENIAL_RATES_BY_RE} - denial_rates_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - denial_rates_by_re_periods: ${?DENIAL_RATES_BY_RE_PERIODS} interest_rates_by_loan: median_interest_rates_by_loan_type interest_rates_by_loan: ${?INTEREST_RATES_BY_LOAN} - interest_rates_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - interest_rates_by_loan_periods: ${?INTEREST_RATES_BY_LOAN_PERIODS} interest_rates_by_re: median_interest_rates_by_race interest_rates_by_re: ${?INTEREST_RATES_BY_RE} - interest_rates_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - interest_rates_by_re_periods: ${?INTEREST_RATES_BY_RE_PERIODS} tlc_by_loan: median_total_loan_costs_by_loan_type tlc_by_loan: ${?TLC_BY_LOAN} - tlc_by_loan_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" tlc_by_re: median_total_loan_costs_by_race tlc_by_re: ${?TLC_BY_RE} - tlc_by_re_periods: "2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3" - tlc_by_re_periods: ${?TLC_BY_RE_PERIODS} - // home - app_vol_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - all_app_vol_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p" - cred_score_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - cred_score_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - cltv_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - cltv_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - dti_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - dti_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - denial_rates_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - denial_rates_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - interest_rates_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - interest_rates_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - tlc_by_loan_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - tlc_by_re_periods_purpose_p: "2018_purpose_p,2019_purpose_p,2020_purpose_p,2021_purpose_p,2022_purpose_p,2023_q1_purpose_p,2023_q2_purpose_p,2023_q3_purpose_p" - //refinance - app_vol_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - all_app_vol_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r" - cred_score_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - cred_score_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - cltv_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - cltv_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - dti_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - dti_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - denial_rates_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - denial_rates_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - interest_rates_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - interest_rates_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - tlc_by_loan_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - tlc_by_re_periods_purpose_r: "2018_purpose_r,2019_purpose_r,2020_purpose_r,2021_purpose_r,2022_purpose_r,2023_q1_purpose_r,2023_q2_purpose_r,2023_q3_purpose_r" - } -} \ No newline at end of file +} diff --git a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dao/repo/QuarterlyGraphMvConfig.scala b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dao/repo/QuarterlyGraphMvConfig.scala index 2c923fc53f..93e8465e50 100644 --- a/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dao/repo/QuarterlyGraphMvConfig.scala +++ b/hmda-quarterly-data-service/src/main/scala/hmda/quarterly/data/api/dao/repo/QuarterlyGraphMvConfig.scala @@ -7,61 +7,73 @@ object QuarterlyGraphMvConfig { val dbConfig: DatabaseConfig[JdbcProfile] = DatabaseConfig.forConfig[JdbcProfile]("db") import dbConfig._ val APP_VOL_MV: String = config.getString("mv.app_vol") - val APP_VOL_PERIODS: Seq[String] = config.getString("mv.app_vol_periods").split(",").toSeq + val APP_VOL_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val ALL_APP_VOL_MV: String = config.getString("mv.all_app_vol") - val ALL_APP_VOL_PERIODS: Seq[String] = config.getString("mv.all_app_vol_periods").split(",").toSeq + val ALL_APP_VOL_PERIODS: Seq[String] = config.getString("mv.periods_annual").split(",").toSeq val CRED_SCORE_BY_LOAN_MV: String = config.getString("mv.cred_score_by_loan") - val CRED_SCORE_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.cred_score_by_loan_periods").split(",").toSeq + val CRED_SCORE_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val CRED_SCORE_BY_RE_MV: String = config.getString("mv.cred_score_by_re") - val CRED_SCORE_BY_RE_PERIODS: Seq[String] = config.getString("mv.cred_score_by_re_periods").split(",").toSeq + val CRED_SCORE_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val CLTV_BY_LOAN_MV: String = config.getString("mv.cltv_by_loan") - val CLTV_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.cltv_by_loan_periods").split(",").toSeq + val CLTV_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val CLTV_BY_RE_MV: String = config.getString("mv.cltv_by_re") - val CLTV_BY_RE_PERIODS: Seq[String] = config.getString("mv.cltv_by_re_periods").split(",").toSeq + val CLTV_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val DTI_BY_LOAN_MV: String = config.getString("mv.dti_by_loan") - val DTI_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.dti_by_loan_periods").split(",").toSeq + val DTI_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val DTI_BY_RE_MV: String = config.getString("mv.dti_by_re") - val DTI_BY_RE_PERIODS: Seq[String] = config.getString("mv.dti_by_re_periods").split(",").toSeq + val DTI_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val DENIAL_RATES_BY_LOAN_MV: String = config.getString("mv.denial_rates_by_loan") - val DENIAL_RATES_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.denial_rates_by_loan_periods").split(",").toSeq + val DENIAL_RATES_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val DENIAL_RATES_BY_RE_MV: String = config.getString("mv.denial_rates_by_re") - val DENIAL_RATES_BY_RE_PERIODS: Seq[String] = config.getString("mv.denial_rates_by_re_periods").split(",").toSeq + val DENIAL_RATES_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val INTEREST_RATES_BY_LOAN_MV: String = config.getString("mv.interest_rates_by_loan") - val INTEREST_RATES_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.interest_rates_by_loan_periods").split(",").toSeq + val INTEREST_RATES_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val INTEREST_RATES_BY_RE_MV: String = config.getString("mv.interest_rates_by_re") - val INTEREST_RATES_BY_RE_PERIODS: Seq[String] = config.getString("mv.interest_rates_by_re_periods").split(",").toSeq + val INTEREST_RATES_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val TLC_BY_LOAN_MV: String = config.getString("mv.tlc_by_loan") - val TLC_BY_LOAN_PERIODS: Seq[String] = config.getString("mv.tlc_by_loan_periods").split(",").toSeq + val TLC_BY_LOAN_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) val TLC_BY_RE_MV: String = config.getString("mv.tlc_by_re") - val TLC_BY_RE_PERIODS: Seq[String] = config.getString("mv.tlc_by_re_periods").split(",").toSeq + val TLC_BY_RE_PERIODS: Seq[String] = periodPrefixer("", config.getString("mv.periods_with_quarter").split(",").toSeq) // loan purpose home - val APP_VOL_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.app_vol_periods_purpose_p").split(",").toSeq - val ALL_APP_VOL_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.all_app_vol_periods_purpose_p").split(",").toSeq - val CRED_SCORE_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.cred_score_by_loan_periods_purpose_p").split(",").toSeq - val CRED_SCORE_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.cred_score_by_re_periods_purpose_p").split(",").toSeq - val CLTV_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.cltv_by_loan_periods_purpose_p").split(",").toSeq - val CLTV_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.cltv_by_re_periods_purpose_p").split(",").toSeq - val DTI_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.dti_by_loan_periods_purpose_p").split(",").toSeq - val DTI_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.dti_by_re_periods_purpose_p").split(",").toSeq - val DENIAL_RATES_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.denial_rates_by_loan_periods_purpose_p").split(",").toSeq - val DENIAL_RATES_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.denial_rates_by_re_periods_purpose_p").split(",").toSeq - val INTEREST_RATES_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.interest_rates_by_loan_periods_purpose_p").split(",").toSeq - val INTEREST_RATES_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.interest_rates_by_re_periods_purpose_p").split(",").toSeq - val TLC_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.tlc_by_loan_periods_purpose_p").split(",").toSeq - val TLC_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.tlc_by_re_periods_purpose_p").split(",").toSeq + val SUFFIX_HOME_PURCHASE: String = config.getString("mv.suffix_home_purchase") + val APP_VOL_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val ALL_APP_VOL_PERIODS_PURPOSE_PURCHASE: Seq[String] = config.getString("mv.periods_annual").split(",").toSeq + val CRED_SCORE_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CRED_SCORE_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CLTV_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CLTV_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DTI_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DTI_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DENIAL_RATES_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DENIAL_RATES_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val INTEREST_RATES_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val INTEREST_RATES_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val TLC_BY_LOAN_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val TLC_BY_RE_PERIODS_PURPOSE_PURCHASE: Seq[String] = periodPrefixer(SUFFIX_HOME_PURCHASE, config.getString("mv.periods_with_quarter").split(",").toSeq) //loan purpose refinance - val APP_VOL_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.app_vol_periods_purpose_r").split(",").toSeq - val ALL_APP_VOL_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.all_app_vol_periods_purpose_r").split(",").toSeq - val CRED_SCORE_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.cred_score_by_loan_periods_purpose_r").split(",").toSeq - val CRED_SCORE_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.cred_score_by_re_periods_purpose_r").split(",").toSeq - val CLTV_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.cltv_by_loan_periods_purpose_r").split(",").toSeq - val CLTV_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.cltv_by_re_periods_purpose_r").split(",").toSeq - val DTI_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.dti_by_loan_periods_purpose_r").split(",").toSeq - val DTI_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.dti_by_re_periods_purpose_r").split(",").toSeq - val DENIAL_RATES_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.denial_rates_by_loan_periods_purpose_r").split(",").toSeq - val DENIAL_RATES_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.denial_rates_by_re_periods_purpose_r").split(",").toSeq - val INTEREST_RATES_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.interest_rates_by_loan_periods_purpose_r").split(",").toSeq - val INTEREST_RATES_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.interest_rates_by_re_periods_purpose_r").split(",").toSeq - val TLC_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.tlc_by_loan_periods_purpose_r").split(",").toSeq - val TLC_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = config.getString("mv.tlc_by_re_periods_purpose_r").split(",").toSeq -} + val SUFFIX_REFINANCE: String = config.getString("mv.suffix_refinance") + val APP_VOL_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val ALL_APP_VOL_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_annual").split(",").toSeq) + val CRED_SCORE_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CRED_SCORE_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CLTV_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val CLTV_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DTI_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DTI_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DENIAL_RATES_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val DENIAL_RATES_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val INTEREST_RATES_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val INTEREST_RATES_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val TLC_BY_LOAN_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + val TLC_BY_RE_PERIODS_PURPOSE_REFINANCE: Seq[String] = periodPrefixer(SUFFIX_REFINANCE, config.getString("mv.periods_with_quarter").split(",").toSeq) + + // adds prefixes to table names + def periodPrefixer(suffix: String,periods:Seq[String]): Seq[String] = { + if ( suffix.nonEmpty){ + val periodsAndSuffix: Seq[String] = periods.map(period => period+"_"+suffix) + periodsAndSuffix + } else { + periods + } + } +} \ No newline at end of file diff --git a/kubernetes/hmda-quarterly-data-service/templates/quarterly-mv-configmap.yaml b/kubernetes/hmda-quarterly-data-service/templates/quarterly-mv-configmap.yaml index dff6366bea..4b8a4d999d 100644 --- a/kubernetes/hmda-quarterly-data-service/templates/quarterly-mv-configmap.yaml +++ b/kubernetes/hmda-quarterly-data-service/templates/quarterly-mv-configmap.yaml @@ -4,30 +4,18 @@ metadata: name: {{ include "hmda-quarterly-data-service.fullname" . }}-mv-configmap data: APP_VOL: applications_volume - APP_VOL_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 ALL_APP_VOL: all_applications_volume - ALL_APP_VOL_PERIODS: 2019,2020,2021 + PERIODS_ANNUAL: 2018,2019,2020,2021,2022 CRED_SCORE_BY_LOAN: median_credit_score_by_loan_type - CRED_SCORE_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 + PERIODS_WITH_QUARTER: 2018,2019,2020,2021,2022,2023_q1,2023_q2,2023_q3 CRED_SCORE_BY_RE: median_credit_score_by_loan_by_race - CRED_SCORE_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 CLTV_BY_LOAN: median_cltv_by_loan_type - CLTV_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 CLTV_BY_RE: median_cltv_by_race - CLTV_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 DTI_BY_LOAN: median_dti_by_loan_type - DTI_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 DTI_BY_RE: median_dti_by_race - DTI_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 DENIAL_RATES_BY_LOAN: denial_rates - DENIAL_RATES_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 DENIAL_RATES_BY_RE: denial_rates_by_race - DENIAL_RATES_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 INTEREST_RATES_BY_LOAN: median_interest_rates_by_loan_type - INTEREST_RATES_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 INTEREST_RATES_BY_RE: median_interest_rates_by_race - INTEREST_RATES_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 TLC_BY_LOAN: median_total_loan_costs_by_loan_type - TLC_BY_LOAN_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 - TLC_BY_RE: median_total_loan_costs_by_race - TLC_BY_RE_PERIODS: 2019,2020,2021,2022_q1,2022_q2_2,2022_q3 \ No newline at end of file + TLC_BY_RE: median_total_loan_costs_by_race \ No newline at end of file