diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_mapper.py index 36e51552..f19c10bd 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_mapper.py @@ -214,6 +214,9 @@ class ComDrMapper(UltmarcTableMapper): # 西暦の取得 self.__set_era() + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) # 存在しない場合はInsert @@ -247,14 +250,10 @@ class ComDrMapper(UltmarcTableMapper): # 削除予定理由 if len(self.record.drdel_code) > 0: set_clauses.append('delete_sche_reason_cd = :drdel_code') - if self.record.drdel_code == '@': - self.query_parameter['drdel_code'] = None # 重複時相手先コード if len(self.record.opp_dup_code) > 0: set_clauses.append('opp_dup_cd = :opp_dup_code') - if self.record.reptdr_id == '@': - self.query_parameter['opp_dup_code'] = None # 医師名(漢字) if len(self.record.dr_name) > 0: @@ -275,12 +274,6 @@ class ComDrMapper(UltmarcTableMapper): set_clauses.append('birthday_month = :birthday_month') set_clauses.append('birthday_day = :birthday_day') set_clauses.append('birthday = :birth_day') - if self.record.birthday_era == '@': - self.query_parameter['birthday_era'] = None - self.query_parameter['birthday_year'] = None - self.query_parameter['birthday_month'] = None - self.query_parameter['birthday_day'] = None - self.query_parameter['birth_day'] = None # 出身都道府県コード if len(self.record.home_town_code) > 0: @@ -295,10 +288,6 @@ class ComDrMapper(UltmarcTableMapper): set_clauses.append('grad_year = :grad_year') set_clauses.append('grad_era = :grad_yearera') set_clauses.append('grad_y = :grad_y') - if self.record.grad_yearera == '@': - self.query_parameter['grad_yearera'] = None - self.query_parameter['grad_year'] = None - self.query_parameter['grad_y'] = None # 出身校コード if len(self.record.graduniv_code) > 0: @@ -313,16 +302,10 @@ class ComDrMapper(UltmarcTableMapper): set_clauses.append('drday_era = :drda_yera') set_clauses.append('drday_year = :drday_year') set_clauses.append('drday_y = :drday_y') - if self.record.drda_yera == '@': - self.query_parameter['drda_yera'] = None - self.query_parameter['drday_year'] = None - self.query_parameter['drday_y'] = None # 住所不明 if len(self.record.dr_addr_lost_code) > 0: set_clauses.append('addr_unknown_reason_cd = :dr_addr_lost_code') - if self.record.dr_addr_lost_code == '@': - self.query_parameter['dr_addr_lost_code'] = None # 住所 # 集合項目のいずれかに入力がある場合に更新 @@ -340,32 +323,22 @@ class ComDrMapper(UltmarcTableMapper): # 自宅電話番号 if len(self.record.dr_tel) > 0: set_clauses.append('home_phone_number = :dr_tel') - if self.record.dr_tel == '@': - self.query_parameter['dr_tel'] = None # 利用停止区分 if len(self.record.use_stop_flag) > 0: set_clauses.append('use_stop_div = :use_stop_flag') - if self.record.use_stop_flag == '@': - self.query_parameter['use_stop_flag'] = None # 利用停止理由 if len(self.record.use_stopc_ode) > 0: set_clauses.append('use_stop_reason_cd = :use_stopc_ode') - if self.record.use_stopc_ode == '@': - self.query_parameter['use_stopc_ode'] = None # 利用停止登録年月日 if len(self.record.cre_stop_date) > 0: set_clauses.append('use_stop_regist_ymd = :cre_stop_date') - if self.record.cre_stop_date == '@': - self.query_parameter['cre_stop_date'] = None # 利用停止解除年月日 if len(self.record.release_date) > 0: set_clauses.append('use_stop_cancel_ymd = :release_date') - if self.record.release_date == '@': - self.query_parameter['release_date'] = None # 開勤区分 if len(self.record.pract_class_code) > 0: @@ -376,10 +349,6 @@ class ComDrMapper(UltmarcTableMapper): set_clauses.append('estab_era = :pract_yearera') set_clauses.append('estab_year = :pract_year') set_clauses.append('estab_y = :estab_y') - if self.record.pract_yearera == '@': - self.query_parameter['pract_yearera'] = None - self.query_parameter['pract_year'] = None - self.query_parameter['estab_y'] = None # 一括登録フラグ if len(self.record.bskregst_flag) > 0: @@ -459,3 +428,53 @@ class ComDrMapper(UltmarcTableMapper): # 月日も空の場合、生年月日は空 return '' + + def __set_clearing_item(self): + # 削除予定理由 + if self.record.drdel_code == '@': + self.query_parameter['drdel_code'] = None + # 重複時相手先コード + if self.record.reptdr_id == '@': + self.query_parameter['opp_dup_code'] = None + # 生年月日 + if self.record.birthday_era == '@': + self.query_parameter['birthday_era'] = None + self.query_parameter['birthday_year'] = None + self.query_parameter['birthday_month'] = None + self.query_parameter['birthday_day'] = None + self.query_parameter['birth_day'] = None + # 卒年 + if self.record.grad_yearera == '@': + self.query_parameter['grad_yearera'] = None + self.query_parameter['grad_year'] = None + self.query_parameter['grad_y'] = None + # 登録年 + if self.record.drda_yera == '@': + self.query_parameter['drda_yera'] = None + self.query_parameter['drday_year'] = None + self.query_parameter['drday_y'] = None + # 住所不明 + if self.record.dr_addr_lost_code == '@': + self.query_parameter['dr_addr_lost_code'] = None + # 自宅電話番号 + if self.record.dr_tel == '@': + self.query_parameter['dr_tel'] = None + # 利用停止区分 + if self.record.use_stop_flag == '@': + self.query_parameter['use_stop_flag'] = None + # 利用停止理由 + if self.record.use_stopc_ode == '@': + self.query_parameter['use_stopc_ode'] = None + # 利用停止登録年月日 + if self.record.cre_stop_date == '@': + self.query_parameter['cre_stop_date'] = None + # 利用停止解除年月日 + if self.record.release_date == '@': + self.query_parameter['release_date'] = None + # 開業年 + if self.record.pract_yearera == '@': + self.query_parameter['pract_yearera'] = None + self.query_parameter['pract_year'] = None + self.query_parameter['estab_y'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_wrkplace_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_wrkplace_mapper.py index 0e9737af..fc47b278 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_wrkplace_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_dr_wrkplace_mapper.py @@ -182,6 +182,10 @@ class ComDrWrkplaceMapper(UltmarcTableMapper): def __make_queries(self): # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # 存在しない場合はInsert if record_count[0]['count_num'] == 0: return [self.INSERT_QUERY] @@ -204,8 +208,6 @@ class ComDrWrkplaceMapper(UltmarcTableMapper): # DM不可フラグの値をセット # 履歴レコード作成判断とならないため、後から設定 if self.record.notdm_flg != '': - notdm_flg = None if self.record.notdm_flg == '@' else self.record.notdm_flg - self.query_parameter['notdm_flg'] = notdm_flg set_clause_without_historical.append(f'notdm_flg = :notdm_flg') # 何かしら更新がある場合、履歴作成クエリを作成 if len(set_clauses_with_historical) != 0: @@ -230,24 +232,16 @@ class ComDrWrkplaceMapper(UltmarcTableMapper): # 役職コード if self.record.postcode != '': set_clauses.append('post_cd = :postcode') - self.query_parameter['postcode'] = '' if self.record.postcode == '@' else self.record.postcode # 大学順位 if self.record.identitycode != '': set_clauses.append('identity_cd = :identitycode') - self.query_parameter['identitycode'] = '' if self.record.identitycode == '@' else self.record.identitycode # 所属部科(集合項目) if self.record.sectcode != '': # 所属部科コード - self.query_parameter['sectcode'] = '9999' if self.record.sectcode == '@' else self.record.sectcode set_clauses.append('blng_sec_cd = :sectcode') # 所属部科(カナ) - sectname_kana = None if self.record.sectname_kana == '@' else self.record.sectname_kana - self.query_parameter['sectname_kana'] = sectname_kana set_clauses.append(f'blng_sec_name_kana = :sectname_kana') # 所属部科(漢字) - # 全角文字なので、修正項目として全角@が連携されるパターンがある - sectname = None if self.record.sectname == '@' else self.record.sectname - self.query_parameter['sectname'] = sectname set_clauses.append(f'blng_sec_name = :sectname') # 何かしら更新がある場合、適用開始日をセットする @@ -256,3 +250,32 @@ class ComDrWrkplaceMapper(UltmarcTableMapper): set_clauses.append("aply_start_ymd = DATE_FORMAT(:syor_date, '%Y%m%d')") return set_clauses + + def __set_clearing_item(self): + + # 役職コード + if self.record.postcode == '@': + # NOT NULLのため、空文字をセット + self.query_parameter['postcode'] = '' + # 大学順位 + if self.record.identitycode == '@': + # NOT NULLのため、空文字をセット + self.query_parameter['identitycode'] = '' + # DM不可フラグ + if self.record.notdm_flg == '@': + self.query_parameter['notdm_flg'] = None + + # 以下、実際には項目のクリアが発生しない為不要なロジックだが、現行踏襲の為残しておく + # 所属部科コード + if self.record.sectcode == '@': + # NOT NULLのため、固定の所属部科コードをセット + self.query_parameter['sectcode'] = '9999' + # 所属部科(カナ) + if self.record.sectname_kana == '@': + self.query_parameter['sectname_kana'] = None + # 所属部科(漢字) + # 全角の項目なので、修正項目値として全角@が連携される + if self.record.sectname == '@': + self.query_parameter['sectname'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_att_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_att_mapper.py index b6deaef0..2954527e 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_att_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_att_mapper.py @@ -677,6 +677,10 @@ class ComInstAttMapper(UltmarcTableMapper): def __make_upsert_query(self): # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # 存在しない場合はInsert if record_count[0]['count_num'] == 0: self.queries.append(self.INSERT_QUERY) @@ -693,40 +697,24 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('dpc_flag = :dpc_flag') set_clauses.append('dpc_specday = :dpc_spec_day') set_clauses.append('dpc_cancelday = :dpc_cancel_day') - if self.record.dpc_flag == '@': - self.query_parameter['dpc_flag'] = None - self.query_parameter['dpc_spec_day'] = None - self.query_parameter['dpc_cancel_day'] = None # DPC準備病院 if len(self.record.predpc_flag) > 0: set_clauses.append('predpc_flag = :predpc_flag') set_clauses.append('predpc_specday = :predpc_spec_day') set_clauses.append('predpc_cancelday = :predpc_cancel_day') - if self.record.predpc_flag == '@': - self.query_parameter['predpc_flag'] = None - self.query_parameter['predpc_spec_day'] = None - self.query_parameter['predpc_cancel_day'] = None # がん診療連携拠点病院 if len(self.record.cancer_flag) > 0: set_clauses.append('cancer_flag = :cancer_flag') set_clauses.append('cancer_specday = :cancer_spec_day') set_clauses.append('cancer_cancelday = :cancer_cancel_day') - if self.record.cancer_flag == '@': - self.query_parameter['cancer_flag'] = None - self.query_parameter['cancer_spec_day'] = None - self.query_parameter['cancer_cancel_day'] = None # 特定機能病院 if len(self.record.funchp_flag) > 0: set_clauses.append('funchpflag = :funchp_flag') set_clauses.append('funchpokdate = :funchp_ok_date') set_clauses.append('funchpcandate = :funchp_can_date') - if self.record.funchp_flag == '@': - self.query_parameter['funchp_flag'] = None - self.query_parameter['funchp_ok_date'] = None - self.query_parameter['funchp_can_date'] = None # 地域医療支援病院 if len(self.record.areasuphp_flag) > 0: @@ -734,275 +722,167 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('areasuphpintrate = :areasuphp_intrate') set_clauses.append('areasuphpokdate = :areasuphp_ok_date') set_clauses.append('areasuphpcandate = :areasuphp_can_date') - if self.record.areasuphp_flag == '@': - self.query_parameter['areasuphp_flag'] = None - self.query_parameter['areasuphp_intrate'] = None - self.query_parameter['areasuphp_ok_date'] = None - self.query_parameter['areasuphp_can_date'] = None # 超急性期脳卒中加算 if len(self.record.acuthp_add_flag) > 0: set_clauses.append('acuthpaddflag = :acuthp_add_flag') set_clauses.append('acuthpaddokdate = :acuthp_add_ok_date') set_clauses.append('acuthpaddcandate = :acuthp_add_can_date') - if self.record.acuthp_add_flag == '@': - self.query_parameter['acuthp_add_flag'] = None - self.query_parameter['acuthp_add_ok_date'] = None - self.query_parameter['acuthp_add_can_date'] = None # 総合入院体制加算 if len(self.record.genadmisiion_flag) > 0: set_clauses.append('genadmisiionflag = :genadmisiion_flag') set_clauses.append('genadmisiionfokdate = :genadmisiion_ok_date') set_clauses.append('genadmisiionfcandate = :genadmisiion_can_date') - if self.record.genadmisiion_flag == '@': - self.query_parameter['genadmisiion_flag'] = None - self.query_parameter['genadmisiion_ok_date'] = None - self.query_parameter['genadmisiion_can_date'] = None # 医師事務作業補助体制加算 if len(self.record.assistance_flag) > 0: set_clauses.append('assistanceflag = :assistance_flag') set_clauses.append('assistanceokdate = :assistance_ok_date') set_clauses.append('assistancecandate = :assistance_can_date') - if self.record.assistance_flag == '@': - self.query_parameter['assistance_flag'] = None - self.query_parameter['assistance_ok_date'] = None - self.query_parameter['assistance_can_date'] = None # 診療録管理体制加算 if len(self.record.diagnosis_treatment_flag) > 0: set_clauses.append('diagnosistreatment_flag = :diagnosis_treatment_flag') set_clauses.append('diagnosistreatment_specday = :diagnosis_treatment_spec_day') set_clauses.append('diagnosistreatment_cancelday = :diagnosis_treatment_cancel_day') - if self.record.diagnosis_treatment_flag == '@': - self.query_parameter['diagnosis_treatment_flag'] = None - self.query_parameter['diagnosis_treatment_spec_day'] = None - self.query_parameter['diagnosis_treatment_cancel_day'] = None # 医療安全対策加算 if len(self.record.safety_flag) > 0: set_clauses.append('safety_flag = :safety_flag') set_clauses.append('safety_specday = :safety_spec_day') set_clauses.append('safety_cancelday = :safety_cancel_day') - if self.record.safety_flag == '@': - self.query_parameter['safety_flag'] = None - self.query_parameter['safety_spec_day'] = None - self.query_parameter['safety_cancel_day'] = None # 褥瘡ハイリスク患者ケア加算 if len(self.record.highrisk_flag) > 0: set_clauses.append('highrisk_flag = :highrisk_flag') set_clauses.append('highrisk_specday = :highrisk_spec_day') set_clauses.append('highrisk_cancelday = :highrisk_cancel_day') - if self.record.highrisk_flag == '@': - self.query_parameter['highrisk_flag'] = None - self.query_parameter['highrisk_spec_day'] = None - self.query_parameter['highrisk_cancel_day'] = None # 地域連携小児夜間・休日診療料 if len(self.record.infant_and_holiday_flag) > 0: set_clauses.append('infantandholiday_flag = :infant_and_holiday_flag') set_clauses.append('infantandholiday_specday = :infant_and_holiday_spec_day') set_clauses.append('infantandholiday_cancelday = :infant_and_holiday_cancel_day') - if self.record.infant_and_holiday_flag == '@': - self.query_parameter['infant_and_holiday_flag'] = None - self.query_parameter['infant_and_holiday_spec_day'] = None - self.query_parameter['infant_and_holiday_cancel_day'] = None # 開放型病院 if len(self.record.ophp_flag) > 0: set_clauses.append('ophpflag = :ophp_flag') set_clauses.append('ophpokdate = :ophpok_date') set_clauses.append('ophpcandate = :ophpcan_date') - if self.record.ophp_flag == '@': - self.query_parameter['ophp_flag'] = None - self.query_parameter['ophpok_date'] = None - self.query_parameter['ophpcan_date'] = None # 地域連携クリティカルパス if len(self.record.critical_flag) > 0: set_clauses.append('critical_flag = :critical_flag') - # 項目クリア判断 - is_aggregate_item_clear = self.record.critical_flag == '@' - if is_aggregate_item_clear: - self.query_parameter['critical_flag'] = None # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) for i in range(1, 21): num = str(i).zfill(2) # 2桁で0埋め setting_item_name = f'critical_code{num}' set_clauses.append(f'{setting_item_name} = :{setting_item_name}') - if is_aggregate_item_clear: - self.query_parameter[setting_item_name] = None # 薬剤管理指導料 if len(self.record.drgmgthp_flag) > 0: set_clauses.append('drgmgthpflag = :drgmgthp_flag') set_clauses.append('drgmgthpokdate = :drgmgthp_ok_date') set_clauses.append('drgmgthpcandate = :drgmgthp_can_date') - if self.record.drgmgthp_flag == '@': - self.query_parameter['drgmgthp_flag'] = None - self.query_parameter['drgmgthp_ok_date'] = None - self.query_parameter['drgmgthp_can_date'] = None # 画像診断管理加算 if len(self.record.image_diagnosis_flag) > 0: set_clauses.append('imagediagnosis_flag = :image_diagnosis_flag') set_clauses.append('imagediagnosis_specifiedday = :image_diagnosis_specified_day') set_clauses.append('imagediagnosis_cancelday = :image_diagnosis_cancel_day') - if self.record.image_diagnosis_flag == '@': - self.query_parameter['image_diagnosis_flag'] = None - self.query_parameter['image_diagnosis_specified_day'] = None - self.query_parameter['image_diagnosis_cancel_day'] = None # 外来化学療法加算 if len(self.record.chemotherapy_flag) > 0: set_clauses.append('chemotherapy_flag = :chemotherapy_flag') set_clauses.append('chemotherapy_specday = :chemotherapy_spec_day') set_clauses.append('chemotherapy_cancelday = :chemotherapy_cancel_day') - if self.record.chemotherapy_flag == '@': - self.query_parameter['chemotherapy_flag'] = None - self.query_parameter['chemotherapy_spec_day'] = None - self.query_parameter['chemotherapy_cancel_day'] = None # 疾患別リハビリテーション料 if len(self.record.rehabilitation_flag) > 0: set_clauses.append('rehabilitation_flag = :rehabilitation_flag') - # 項目クリア判断 - is_aggregate_item_clear = self.record.rehabilitation_flag == '@' - if is_aggregate_item_clear: - self.query_parameter['rehabilitation_flag'] = None # 10個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) for i in range(1, 11): num = str(i).zfill(2) # 2桁で0埋め setting_item_name = f'rehabilitation_code{num}' set_clauses.append(f'{setting_item_name} = :{setting_item_name}') - if is_aggregate_item_clear: - self.query_parameter[setting_item_name] = None # 麻酔管理料 if len(self.record.anesthetizing_manage_flag) > 0: set_clauses.append('anesthetizingmanage_flag = :anesthetizing_manage_flag') set_clauses.append('anesthetizingmanage_specday = :anesthetizing_manage_spec_day') set_clauses.append('anesthetizingmanage_cancelday = :anesthetizing_manage_can_day') - if self.record.anesthetizing_manage_flag == '@': - self.query_parameter['anesthetizing_manage_flag'] = None - self.query_parameter['anesthetizing_manage_spec_day'] = None - self.query_parameter['anesthetizing_manage_can_day'] = None # 在宅療養支援病院・診療所 if len(self.record.home_recuperation_flag) > 0: set_clauses.append('homerecuperation_flag = :home_recuperation_flag') set_clauses.append('homerecuperation_specday = :home_recuperation_spec_day') set_clauses.append('homerecuperation_cancelday = :home_recuperation_cancel_day') - if self.record.home_recuperation_flag == '@': - self.query_parameter['home_recuperation_flag'] = None - self.query_parameter['home_recuperation_spec_day'] = None - self.query_parameter['home_recuperation_cancel_day'] = None # 在宅時医学総合管理料 if len(self.record.synthesis_when_staying_flag) > 0: set_clauses.append('synthesiswhenstaying_flag = :synthesis_when_staying_flag') set_clauses.append('synthesiswhenstaying_specday = :synthesis_when_staying_spec_day') set_clauses.append('synthesiswhenstaying_cancelday = :synthesis_when_staying_can_day') - if self.record.synthesis_when_staying_flag == '@': - self.query_parameter['synthesis_when_staying_flag'] = None - self.query_parameter['synthesis_when_staying_spec_day'] = None - self.query_parameter['synthesis_when_staying_can_day'] = None # 在宅末期医療総合診療料 if len(self.record.home_late_flag) > 0: set_clauses.append('homelateflag = :home_late_flag') set_clauses.append('homelateokday = :home_late_ok_day') set_clauses.append('homelatecanday = :home_late_can_day') - if self.record.home_late_flag == '@': - self.query_parameter['home_late_flag'] = None - self.query_parameter['home_late_ok_day'] = None - self.query_parameter['home_late_can_day'] = None # ケアミックス区分 if len(self.record.caremix_kind) > 0: set_clauses.append('caremixkind = :caremix_kind') - if self.record.caremix_kind == '@': - self.query_parameter['caremix_kind'] = None # 完全型・移行型区分 if len(self.record.fullmove_flag) > 0: set_clauses.append('fullmoveflag = :fullmove_flag') - if self.record.fullmove_flag == '@': - self.query_parameter['fullmove_flag'] = None # 療養型病床群 if sum(len(item) for item in self.record.resthp_items) > 0: + # 医療型 set_clauses.append('resthpflag = :resthp_flag') set_clauses.append('resthpcarekind = :resthp_care_kind') set_clauses.append('resthpbednum = :resthp_bed_num') set_clauses.append('resthpokdate = :resthp_ok_date') set_clauses.append('resthpcandate = :resthp_can_date') + # 介護型 set_clauses.append('resthpcarenrskind = :resthp_care_nrs_kind') set_clauses.append('resthpcarebednum = :resthp_care_bed_num') set_clauses.append('resthpcareokdate = :resthp_care_ok_date') set_clauses.append('resthpcarecandate = :resthp_care_can_date') + # 合計 set_clauses.append('resthpsbednum = :resthp_sbed_num') - if self.record.resthp_flag == '@': - self.query_parameter['resthp_flag'] = None - self.query_parameter['resthp_care_kind'] = None - self.query_parameter['resthp_bed_num'] = None - self.query_parameter['resthp_ok_date'] = None - self.query_parameter['resthp_can_date'] = None - self.query_parameter['resthp_care_nrs_kind'] = None - self.query_parameter['resthp_care_bed_num'] = None - self.query_parameter['resthp_care_ok_date'] = None - self.query_parameter['resthp_care_can_date'] = None - self.query_parameter['resthp_sbed_num'] = None # 一般病棟 if len(self.record.nrmhp_flag) > 0: set_clauses.append('nrmhpflag = :nrmhp_flag') set_clauses.append('nrmhpcarekind = :nrmhp_care_kind') set_clauses.append('nrmhpbedtotalnum = :nrmhp_bed_total_num') - if self.record.nrmhp_flag == '@': - self.query_parameter['nrmhp_flag'] = None - self.query_parameter['nrmhp_care_kind'] = None - self.query_parameter['nrmhp_bed_total_num'] = None # 精神病棟 if len(self.record.menthp_flag) > 0: set_clauses.append('menthpflag = :menthp_flag') set_clauses.append('menthpcarekind = :menthp_care_kind') set_clauses.append('menthpbednum = :menthp_bed_num') - if self.record.menthp_flag == '@': - self.query_parameter['menthp_flag'] = None - self.query_parameter['menthp_care_kind'] = None - self.query_parameter['menthp_bed_num'] = None # 結核病棟 if len(self.record.tubhp_flag) > 0: set_clauses.append('tubhpflag = :tubhp_flag') set_clauses.append('tubhpcarekind = :tubhp_care_kind') set_clauses.append('tubhpbednum = :tubhp_bed_num') - if self.record.tubhp_flag == '@': - self.query_parameter['tubhp_flag'] = None - self.query_parameter['tubhp_care_kind'] = None - self.query_parameter['tubhp_bed_num'] = None # 感染症指定医療機関 if len(self.record.infhp_flag) > 0: set_clauses.append('infhpflag = :infhp_flag') set_clauses.append('infhpflag1 = :infhp_flag1') set_clauses.append('infhpflag2 = :infhp_flag2') - if self.record.infhp_flag == '@': - self.query_parameter['infhp_flag'] = None - self.query_parameter['infhp_flag1'] = None - self.query_parameter['infhp_flag2'] = None # 感染症病床 if len(self.record.infhp_bed_flag) > 0: set_clauses.append('infhpbedflag = :infhp_bed_flag') set_clauses.append('infhpbednum = :infhp_bed_num') - if self.record.infhp_bed_flag == '@': - self.query_parameter['infhp_bed_flag'] = None - self.query_parameter['infhp_bed_num'] = None # 緩和ケア病棟設置病院 if len(self.record.hospice_flag) > 0: @@ -1010,11 +890,6 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('hospicebednum = :hospice_bed_num') set_clauses.append('hospiceokdate = :hospice_ok_date') set_clauses.append('hospicecandate = :hospice_can_date') - if self.record.hospice_flag == '@': - self.query_parameter['hospice_flag'] = None - self.query_parameter['hospice_bed_num'] = None - self.query_parameter['hospice_ok_date'] = None - self.query_parameter['hospice_can_date'] = None # 医療機能評価 if len(self.record.hpfunce_st_flag) > 0: @@ -1022,55 +897,35 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('hpfuncestkind = :hpfunce_st_kind') set_clauses.append('hpfuncestokdate = :hpfunce_st_ok_date') set_clauses.append('hpfuncestcandate = :hpfunce_st_can_date') - if self.record.hpfunce_st_flag == '@': - self.query_parameter['hpfunce_st_flag'] = None - self.query_parameter['hpfunce_st_kind'] = None - self.query_parameter['hpfunce_st_ok_date'] = None - self.query_parameter['hpfunce_st_can_date'] = None # 臨床研修指定病院 if sum(len(item) for item in self.record.cl_items) > 0: + # 基幹型病院1 set_clauses.append('clolyhpkind = :clolyhp_kind') set_clauses.append('clolyhpokdate = :clolyhp_ok_date') set_clauses.append('clolyhpcandate = :clolyhp_can_date') + # 基幹型病院2(群指定) set_clauses.append('clhpkind = :clhp_kind') set_clauses.append('clhpokdate = :clhp_ok_date') set_clauses.append('clhpcandate = :clhp_can_date') + # 協力型病院(群指定) set_clauses.append('cldephpkind = :cldephp_kind') set_clauses.append('cldephpokdate = :cldephp_ok_date') set_clauses.append('cldephpcandate = :cldephp_can_date') - if self.record.clolyhp_kind == '@': - self.query_parameter['clolyhp_kind'] = None - self.query_parameter['clolyhp_ok_date'] = None - self.query_parameter['clolyhp_can_date'] = None - self.query_parameter['clhp_kind'] = None - self.query_parameter['clhp_ok_date'] = None - self.query_parameter['clhp_can_date'] = None - self.query_parameter['cldephp_kind'] = None - self.query_parameter['cldephp_ok_date'] = None - self.query_parameter['cldephp_can_date'] = None # 災害拠点病院 if len(self.record.disasthp_flag) > 0: set_clauses.append('disasthpflag = :disasthp_flag') - if self.record.disasthp_flag == '@': - self.query_parameter['disasthp_flag'] = None # 救急医療 if len(self.record.d1emerhp_flag) > 0: set_clauses.append('d1emerhpflag = :d1emerhp_flag') set_clauses.append('d2emerhpflag = :d2emerhp_flag') set_clauses.append('d3emerhpflag = :d3emerhp_flag') - if self.record.d1emerhp_flag == '@': - self.query_parameter['d1emerhp_flag'] = None - self.query_parameter['d2emerhp_flag'] = None - self.query_parameter['d3emerhp_flag'] = None # 救急告示診療所 if len(self.record.emergency_clinic) > 0: set_clauses.append('emergencyclinic = :emergency_clinic') - if self.record.emergency_clinic == '@': - self.query_parameter['emergency_clinic'] = None # 治験中核病院 if len(self.record.trial_core_flag) > 0: @@ -1078,72 +933,42 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('trialcore_div = :trial_core_div') set_clauses.append('trialcoreokdate = :trial_core_ok_date') set_clauses.append('trialcorecandate = :trial_core_can_date') - if self.record.trial_core_flag == '@': - self.query_parameter['trial_core_flag'] = None - self.query_parameter['trial_core_div'] = None - self.query_parameter['trial_core_ok_date'] = None - self.query_parameter['trial_core_can_date'] = None # 認知症疾患医療センター if len(self.record.dementia_flag) > 0: set_clauses.append('dementiaflag = :dementia_flag') set_clauses.append('dementiaokdate = :dementia_okd_ate') set_clauses.append('dementiacandate = :dementia_can_date') - if self.record.dementia_flag == '@': - self.query_parameter['dementia_flag'] = None - self.query_parameter['dementia_okd_ate'] = None - self.query_parameter['dementia_can_date'] = None # 特定健康診査実施機関 if len(self.record.sphealth_exploration) > 0: set_clauses.append('sphealth_exploration = :sphealth_exploration') - if self.record.sphealth_exploration == '@': - self.query_parameter['sphealth_exploration'] = None # 特定保健指導実施機関 if len(self.record.sphealth_guidance) > 0: set_clauses.append('sphealth_guidance = :sphealth_guidance') - if self.record.sphealth_guidance == '@': - self.query_parameter['sphealth_guidance'] = None # 先進医療実施医療機関 if len(self.record.hiadhp_flag) > 0: set_clauses.append('hiadhpflag = :hiadhp_flag') - # 項目クリア判断 - is_aggregate_item_clear = self.record.hiadhp_flag == '@' - if is_aggregate_item_clear: - self.query_parameter['hiadhp_flag'] = None # 40個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) for i in range(1, 41): setting_item_name_code = f'hiadhpcode{i}' setting_item_name_kind = f'hiadhpkind{i}' set_clauses.append(f'{setting_item_name_code} = :{setting_item_name_code}') set_clauses.append(f'{setting_item_name_kind} = :{setting_item_name_kind}') - if is_aggregate_item_clear: - self.query_parameter[setting_item_name_code] = None - self.query_parameter[setting_item_name_kind] = None # 先端医療実施医療機関 if len(self.record.hitechhp_flag) > 0: set_clauses.append('hitechhpflag = :hitechhp_flag') - # 項目クリア判断 - is_aggregate_item_clear = self.record.hitechhp_flag == '@' - if is_aggregate_item_clear: - self.query_parameter['hitechhp_flag'] = None # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) for i in range(1, 21): setting_item_name = f'hitechhpkind{i}' set_clauses.append(f'{setting_item_name} = :{setting_item_name}') - if is_aggregate_item_clear: - self.query_parameter[setting_item_name] = None # 政策医療 if len(self.record.policy_medical_flag) > 0: set_clauses.append('policymedical_flag = :policy_medical_flag') - # 項目クリア判断 - is_aggregate_item_clear = self.record.policy_medical_flag == '@' - if is_aggregate_item_clear: - self.query_parameter['policy_medical_flag'] = None # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) for i in range(1, 21): num = str(i).zfill(2) # 2桁で0埋め @@ -1151,9 +976,6 @@ class ComInstAttMapper(UltmarcTableMapper): setting_item_name_content = f'policymedical_content{num}' set_clauses.append(f'{setting_item_name_code} = :{setting_item_name_code}') set_clauses.append(f'{setting_item_name_content} = :{setting_item_name_content}') - if is_aggregate_item_clear: - self.query_parameter[setting_item_name_code] = None - self.query_parameter[setting_item_name_content] = None # 訪問看護ステーション if len(self.record.visitcarest_flag) > 0: @@ -1161,17 +983,10 @@ class ComInstAttMapper(UltmarcTableMapper): set_clauses.append('visitcarestation_id = :visitcarestation_id') set_clauses.append('visitcarestation_code = :visitcarestation_code') set_clauses.append('visitcarestation_yobi = :visitcarestation_yobi') - if self.record.visitcarest_flag == '@': - self.query_parameter['visitcarest_flag'] = None - self.query_parameter['visitcarestation_id'] = None - self.query_parameter['visitcarestation_code'] = None - self.query_parameter['visitcarestation_yobi'] = None # 開設年月 if len(self.record.open_date) > 0: set_clauses.append('opendate = :open_date') - if self.record.open_date == '@': - self.query_parameter['open_date'] = None update_columns = ','.join(set_clauses) # 何も更新項目が無い場合はNoneとする(更新処理は行わない) @@ -1184,3 +999,277 @@ class ComInstAttMapper(UltmarcTableMapper): update_columns=update_columns ) return update_query + + def __set_clearing_item(self): + # DPC対象病院 + if self.record.dpc_flag == '@': + self.query_parameter['dpc_flag'] = None + self.query_parameter['dpc_spec_day'] = None + self.query_parameter['dpc_cancel_day'] = None + # DPC準備病院 + if self.record.predpc_flag == '@': + self.query_parameter['predpc_flag'] = None + self.query_parameter['predpc_spec_day'] = None + self.query_parameter['predpc_cancel_day'] = None + # がん診療連携拠点病院 + if self.record.cancer_flag == '@': + self.query_parameter['cancer_flag'] = None + self.query_parameter['cancer_spec_day'] = None + self.query_parameter['cancer_cancel_day'] = None + # 特定機能病院 + if self.record.funchp_flag == '@': + self.query_parameter['funchp_flag'] = None + self.query_parameter['funchp_ok_date'] = None + self.query_parameter['funchp_can_date'] = None + # 地域医療支援病院 + if self.record.areasuphp_flag == '@': + self.query_parameter['areasuphp_flag'] = None + self.query_parameter['areasuphp_intrate'] = None + self.query_parameter['areasuphp_ok_date'] = None + self.query_parameter['areasuphp_can_date'] = None + # 超急性期脳卒中加算 + if self.record.acuthp_add_flag == '@': + self.query_parameter['acuthp_add_flag'] = None + self.query_parameter['acuthp_add_ok_date'] = None + self.query_parameter['acuthp_add_can_date'] = None + # 総合入院体制加算 + if self.record.genadmisiion_flag == '@': + self.query_parameter['genadmisiion_flag'] = None + self.query_parameter['genadmisiion_ok_date'] = None + self.query_parameter['genadmisiion_can_date'] = None + # 医師事務作業補助体制加算 + if self.record.assistance_flag == '@': + self.query_parameter['assistance_flag'] = None + self.query_parameter['assistance_ok_date'] = None + self.query_parameter['assistance_can_date'] = None + # 診療録管理体制加算 + if self.record.diagnosis_treatment_flag == '@': + self.query_parameter['diagnosis_treatment_flag'] = None + self.query_parameter['diagnosis_treatment_spec_day'] = None + self.query_parameter['diagnosis_treatment_cancel_day'] = None + # 医療安全対策加算 + if self.record.safety_flag == '@': + self.query_parameter['safety_flag'] = None + self.query_parameter['safety_spec_day'] = None + self.query_parameter['safety_cancel_day'] = None + # 褥瘡ハイリスク患者ケア加算 + if self.record.highrisk_flag == '@': + self.query_parameter['highrisk_flag'] = None + self.query_parameter['highrisk_spec_day'] = None + self.query_parameter['highrisk_cancel_day'] = None + # 地域連携小児夜間・休日診療料 + if self.record.infant_and_holiday_flag == '@': + self.query_parameter['infant_and_holiday_flag'] = None + self.query_parameter['infant_and_holiday_spec_day'] = None + self.query_parameter['infant_and_holiday_cancel_day'] = None + # 開放型病院 + if self.record.ophp_flag == '@': + self.query_parameter['ophp_flag'] = None + self.query_parameter['ophpok_date'] = None + self.query_parameter['ophpcan_date'] = None + + # 地域連携クリティカルパス + is_aggregate_item_clear = self.record.critical_flag == '@' + if is_aggregate_item_clear: + self.query_parameter['critical_flag'] = None + # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) + for i in range(1, 21): + num = str(i).zfill(2) # 2桁で0埋め + setting_item_name = f'critical_code{num}' + if is_aggregate_item_clear: + self.query_parameter[setting_item_name] = None + + # 薬剤管理指導料 + if self.record.drgmgthp_flag == '@': + self.query_parameter['drgmgthp_flag'] = None + self.query_parameter['drgmgthp_ok_date'] = None + self.query_parameter['drgmgthp_can_date'] = None + # 画像診断管理加算 + if self.record.image_diagnosis_flag == '@': + self.query_parameter['image_diagnosis_flag'] = None + self.query_parameter['image_diagnosis_specified_day'] = None + self.query_parameter['image_diagnosis_cancel_day'] = None + # 外来化学療法加算 + if self.record.chemotherapy_flag == '@': + self.query_parameter['chemotherapy_flag'] = None + self.query_parameter['chemotherapy_spec_day'] = None + self.query_parameter['chemotherapy_cancel_day'] = None + + # 疾患別リハビリテーション料 + is_aggregate_item_clear = self.record.rehabilitation_flag == '@' + if is_aggregate_item_clear: + self.query_parameter['rehabilitation_flag'] = None + # 10個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) + for i in range(1, 11): + num = str(i).zfill(2) # 2桁で0埋め + setting_item_name = f'rehabilitation_code{num}' + if is_aggregate_item_clear: + self.query_parameter[setting_item_name] = None + + # 麻酔管理料 + if self.record.anesthetizing_manage_flag == '@': + self.query_parameter['anesthetizing_manage_flag'] = None + self.query_parameter['anesthetizing_manage_spec_day'] = None + self.query_parameter['anesthetizing_manage_can_day'] = None + # 在宅療養支援病院・診療所 + if self.record.home_recuperation_flag == '@': + self.query_parameter['home_recuperation_flag'] = None + self.query_parameter['home_recuperation_spec_day'] = None + self.query_parameter['home_recuperation_cancel_day'] = None + # 在宅時医学総合管理料 + if self.record.synthesis_when_staying_flag == '@': + self.query_parameter['synthesis_when_staying_flag'] = None + self.query_parameter['synthesis_when_staying_spec_day'] = None + self.query_parameter['synthesis_when_staying_can_day'] = None + # 在宅末期医療総合診療料 + if self.record.home_late_flag == '@': + self.query_parameter['home_late_flag'] = None + self.query_parameter['home_late_ok_day'] = None + self.query_parameter['home_late_can_day'] = None + # ケアミックス区分 + if self.record.caremix_kind == '@': + self.query_parameter['caremix_kind'] = None + # 完全型・移行型区分 + if self.record.fullmove_flag == '@': + self.query_parameter['fullmove_flag'] = None + # 療養型病床群 + if self.record.resthp_flag == '@': + # 医療型 + self.query_parameter['resthp_flag'] = None + self.query_parameter['resthp_care_kind'] = None + self.query_parameter['resthp_bed_num'] = None + self.query_parameter['resthp_ok_date'] = None + self.query_parameter['resthp_can_date'] = None + # 介護型 + self.query_parameter['resthp_care_nrs_kind'] = None + self.query_parameter['resthp_care_bed_num'] = None + self.query_parameter['resthp_care_ok_date'] = None + self.query_parameter['resthp_care_can_date'] = None + # 合計 + self.query_parameter['resthp_sbed_num'] = None + # 一般病棟 + if self.record.nrmhp_flag == '@': + self.query_parameter['nrmhp_flag'] = None + self.query_parameter['nrmhp_care_kind'] = None + self.query_parameter['nrmhp_bed_total_num'] = None + # 精神病棟 + if self.record.menthp_flag == '@': + self.query_parameter['menthp_flag'] = None + self.query_parameter['menthp_care_kind'] = None + self.query_parameter['menthp_bed_num'] = None + # 結核病棟 + if self.record.tubhp_flag == '@': + self.query_parameter['tubhp_flag'] = None + self.query_parameter['tubhp_care_kind'] = None + self.query_parameter['tubhp_bed_num'] = None + # 感染症指定医療機関 + if self.record.infhp_flag == '@': + self.query_parameter['infhp_flag'] = None + self.query_parameter['infhp_flag1'] = None + self.query_parameter['infhp_flag2'] = None + # 感染症病床 + if self.record.infhp_bed_flag == '@': + self.query_parameter['infhp_bed_flag'] = None + self.query_parameter['infhp_bed_num'] = None + # 緩和ケア病棟設置病院 + if self.record.hospice_flag == '@': + self.query_parameter['hospice_flag'] = None + self.query_parameter['hospice_bed_num'] = None + self.query_parameter['hospice_ok_date'] = None + self.query_parameter['hospice_can_date'] = None + # 医療機能評価 + if self.record.hpfunce_st_flag == '@': + self.query_parameter['hpfunce_st_flag'] = None + self.query_parameter['hpfunce_st_kind'] = None + self.query_parameter['hpfunce_st_ok_date'] = None + self.query_parameter['hpfunce_st_can_date'] = None + # 臨床研修指定病院 + if self.record.clolyhp_kind == '@': + # 基幹型病院1 + self.query_parameter['clolyhp_kind'] = None + self.query_parameter['clolyhp_ok_date'] = None + self.query_parameter['clolyhp_can_date'] = None + # 基幹型病院2(群指定) + self.query_parameter['clhp_kind'] = None + self.query_parameter['clhp_ok_date'] = None + self.query_parameter['clhp_can_date'] = None + # 協力型病院(群指定) + self.query_parameter['cldephp_kind'] = None + self.query_parameter['cldephp_ok_date'] = None + self.query_parameter['cldephp_can_date'] = None + # 災害拠点病院 + if self.record.disasthp_flag == '@': + self.query_parameter['disasthp_flag'] = None + # 救急医療 + if self.record.d1emerhp_flag == '@': + self.query_parameter['d1emerhp_flag'] = None + self.query_parameter['d2emerhp_flag'] = None + self.query_parameter['d3emerhp_flag'] = None + # 救急告示診療所 + if self.record.emergency_clinic == '@': + self.query_parameter['emergency_clinic'] = None + # 治験中核病院 + if self.record.trial_core_flag == '@': + self.query_parameter['trial_core_flag'] = None + self.query_parameter['trial_core_div'] = None + self.query_parameter['trial_core_ok_date'] = None + self.query_parameter['trial_core_can_date'] = None + # 認知症疾患医療センター + if self.record.dementia_flag == '@': + self.query_parameter['dementia_flag'] = None + self.query_parameter['dementia_okd_ate'] = None + self.query_parameter['dementia_can_date'] = None + # 特定健康診査実施機関 + if self.record.sphealth_exploration == '@': + self.query_parameter['sphealth_exploration'] = None + # 特定保健指導実施機関 + if self.record.sphealth_guidance == '@': + self.query_parameter['sphealth_guidance'] = None + + # 先進医療実施医療機関 + is_aggregate_item_clear = self.record.hiadhp_flag == '@' + if is_aggregate_item_clear: + self.query_parameter['hiadhp_flag'] = None + # 40個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) + for i in range(1, 41): + setting_item_name_code = f'hiadhpcode{i}' + setting_item_name_kind = f'hiadhpkind{i}' + if is_aggregate_item_clear: + self.query_parameter[setting_item_name_code] = None + self.query_parameter[setting_item_name_kind] = None + + # 先端医療実施医療機関 + is_aggregate_item_clear = self.record.hitechhp_flag == '@' + if is_aggregate_item_clear: + self.query_parameter['hitechhp_flag'] = None + # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) + for i in range(1, 21): + setting_item_name = f'hitechhpkind{i}' + if is_aggregate_item_clear: + self.query_parameter[setting_item_name] = None + + # 政策医療 + # 項目クリア判断 + is_aggregate_item_clear = self.record.policy_medical_flag == '@' + if is_aggregate_item_clear: + self.query_parameter['policy_medical_flag'] = None + # 20個分の項目設定(rangeの第2引数の数字はループに含まれないため、+1を指定する) + for i in range(1, 21): + num = str(i).zfill(2) # 2桁で0埋め + setting_item_name_code = f'policymedical_code{num}' + setting_item_name_content = f'policymedical_content{num}' + if is_aggregate_item_clear: + self.query_parameter[setting_item_name_code] = None + self.query_parameter[setting_item_name_content] = None + + # 訪問看護ステーション + if self.record.visitcarest_flag == '@': + self.query_parameter['visitcarest_flag'] = None + self.query_parameter['visitcarestation_id'] = None + self.query_parameter['visitcarestation_code'] = None + self.query_parameter['visitcarestation_yobi'] = None + # 開設年月 + if self.record.open_date == '@': + self.query_parameter['open_date'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_mapper.py index 3802ed62..cbf29145 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_inst_mapper.py @@ -263,6 +263,10 @@ class ComInstMapper(UltmarcTableMapper): def __make_upsert_query(self): # レコードの存在確認(施設) record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + + # 「@」による項目クリアを設定 + self.__set_clearing_item() + if record_count[0]['count_num'] == 0: # 存在しない場合はInsert self.queries.append(self.INSERT_INST_QUERY) @@ -344,96 +348,64 @@ class ComInstMapper(UltmarcTableMapper): # 未確認フラグ if len(self.record.uncheck_flag) > 0: set_clauses.append('unconf_flg = :uncheck_flag') - if self.record.uncheck_flag == '@': - self.query_parameter['uncheck_flag'] = None # 削除予定理由コード if len(self.record.hpdel_code) > 0: set_clauses.append('delete_sche_reason_cd = :hpdel_code') - if self.record.hpdel_code == '@': - self.query_parameter['hpdel_code'] = None # 重複時相手先コード if len(self.record.dup_opp_code) > 0: set_clauses.append('dup_opp_cd = :dup_opp_code') - if self.record.duphp_id == '@': - self.query_parameter['dup_opp_code'] = None # 住所不明理由コード if len(self.record.hp_addr_lost_code) > 0: set_clauses.append('addr_unknown_reason_cd = :hp_addr_lost_code') - if self.record.hp_addr_lost_code == '@': - self.query_parameter['hp_addr_lost_code'] = None # 電話番号なしフラグ if len(self.record.tel_nothing_flag) > 0: set_clauses.append('phone_number_non_flg = :tel_nothing_flag') - if self.record.tel_nothing_flag == '@': - self.query_parameter['tel_nothing_flag'] = None # 電話番号 if len(self.record.hp_tel) > 0: set_clauses.append('inst_phone_number = :hp_tel') - if self.record.hp_tel == '@': - self.query_parameter['hp_tel'] = None # 施設代表者コード if len(self.record.inst_repre_code) > 0: set_clauses.append('inst_repre_cd = :inst_repre_code') - if self.record.president_id == '@': - self.query_parameter['inst_repre_code'] = None # 代表者(カナ) if len(self.record.president_kana) > 0: set_clauses.append('inst_repre_kana = :president_kana') - if self.record.president_kana == '@': - self.query_parameter['president_kana'] = None # 代表者(漢字) ※「@」が大文字 if len(self.record.president) > 0: set_clauses.append('inst_repre = :president') - if self.record.president == '@': - self.query_parameter['president'] = None # 開業予定フラグ・開業予定年月 if len(self.record.open_flag + self.record.open_year_month) > 0: set_clauses.append('estab_sche_flg = :open_flag') set_clauses.append('estab_sche_ym = :open_year_month') - if self.record.open_flag == '@': - self.query_parameter['open_flag'] = None - self.query_parameter['open_year_month'] = None # 休院フラグ・休院開始年月 if len(self.record.close_flag + self.record.close_year_month) > 0: set_clauses.append('close_flg = :close_flag') set_clauses.append('close_start_ym = :close_year_month') - if self.record.close_flag == '@': - self.query_parameter['close_flag'] = None - self.query_parameter['close_year_month'] = None # 関連大学親コード if len(self.record.univ_prnt_code) > 0: set_clauses.append('rltd_univ_prnt_cd = :univ_prnt_code') - if self.record.assoc_parrent_id == '@': - self.query_parameter['univ_prnt_code'] = None # 病棟閉鎖フラグ if len(self.record.close_flag2) > 0: set_clauses.append('ward_abolish_flg = :close_flag2') - if self.record.close_flag2 == '@': - self.query_parameter['close_flag2'] = None # 病床数(定員) if self.record.bed_num is not None: set_clauses.append('bed_num = :bed_num') - if self.record.bed_num == '@': - self.query_parameter['bed_num'] = None # 許可病床メンテ日付 if len(self.record.bed_class_maint_date) > 0: set_clauses.append('prmit_bed_maint_ymd = :bed_class_maint_date') - if self.record.bed_class_maint_date == '@': - self.query_parameter['bed_class_maint_date'] = None # 許可ベッド数(合計、精神、結核、感染、その他、一般病床、療養病床) if not self.record.prmit_bed.count(None) == len(self.record.prmit_bed): @@ -444,14 +416,6 @@ class ComInstMapper(UltmarcTableMapper): set_clauses.append('prmit_bed_num_other = :bed_num_gen') set_clauses.append('prmit_bed_num_gen = :bed_num_gen2') set_clauses.append('prmit_bed_num_rcup = :bed_num_rest') - if self.record.bed_num_sum == '@': - self.query_parameter['bed_num_sum'] = None - self.query_parameter['bed_num_psy'] = None - self.query_parameter['bed_num_tub'] = None - self.query_parameter['bed_num_epi'] = None - self.query_parameter['bed_num_gen'] = None - self.query_parameter['bed_num_gen2'] = None - self.query_parameter['bed_num_rest'] = None # 検査項目(微生物、血清、血液、病理、寄生虫、生化、RI) if sum(len(item) for item in self.record.insp_item) > 0: @@ -462,14 +426,6 @@ class ComInstMapper(UltmarcTableMapper): set_clauses.append('insp_item_paras = :inspect_code5') set_clauses.append('insp_item_biochem = :inspect_code6') set_clauses.append('insp_item_ri = :inspect_code7') - if self.record.inspect_code1 == '@': - self.query_parameter['inspect_code1'] = None - self.query_parameter['inspect_code2'] = None - self.query_parameter['inspect_code3'] = None - self.query_parameter['inspect_code4'] = None - self.query_parameter['inspect_code5'] = None - self.query_parameter['inspect_code6'] = None - self.query_parameter['inspect_code7'] = None update_columns = ','.join(set_clauses) # 何も更新項目が無い場合は更新処理は行わない @@ -494,6 +450,7 @@ class ComInstMapper(UltmarcTableMapper): # 削除 self.queries.append(self.PHYSICAL_DELETE_TRT_QUERY) + # 診療科目の1つ目の値がクリアマーク(@)の場合、診療科目を登録しない if self.record.medsbj_code[0] == "@": return @@ -516,10 +473,15 @@ class ComInstMapper(UltmarcTableMapper): record_count = self.db.execute_select(self.RECORD_EXISTS_SPCARE_QUERY, self.query_parameter) # 存在しない場合はInsert if record_count[0]['count_num'] == 0: + # 特養医務室の集合項目の値がクリアマーク(@)の場合、登録しない + if self.record.dcfhp_92id == "@": + return + self.queries.append(self.INSERT_SPCARE_QUERY) return # 存在する場合はUpdate + # 特養医務室の集合項目の値がクリアマーク(@)の場合、DCF親施設コードをクリアし、削除日を設定 if self.record.dcfhp_92id == "@": self.query_parameter['dcf_prnt_inst_code'] = None self.query_parameter['delete_ymd'] = self.query_parameter['execute_date_str_ymd'] @@ -529,3 +491,73 @@ class ComInstMapper(UltmarcTableMapper): self.queries.append(self.UPDATE_SPCARE_QUERY) return + + def __set_clearing_item(self): + + # 未確認フラグ + if self.record.uncheck_flag == '@': + self.query_parameter['uncheck_flag'] = None + # 削除予定理由コード + if self.record.hpdel_code == '@': + self.query_parameter['hpdel_code'] = None + # 重複時相手先コード + if self.record.duphp_id == '@': + self.query_parameter['dup_opp_code'] = None + # 住所不明理由コード + if self.record.hp_addr_lost_code == '@': + self.query_parameter['hp_addr_lost_code'] = None + # 電話番号なしフラグ + if self.record.tel_nothing_flag == '@': + self.query_parameter['tel_nothing_flag'] = None + # 電話番号 + if self.record.hp_tel == '@': + self.query_parameter['hp_tel'] = None + # 施設代表者コード + if self.record.president_id == '@': + self.query_parameter['inst_repre_code'] = None + # 代表者(カナ) + if self.record.president_kana == '@': + self.query_parameter['president_kana'] = None + # 代表者(漢字) ※全角文字のため、クリアマーク「@」が大文字 + if self.record.president == '@': + self.query_parameter['president'] = None + # 開業予定フラグ・開業予定年月 + if self.record.open_flag == '@': + self.query_parameter['open_flag'] = None + self.query_parameter['open_year_month'] = None + # 休院フラグ・休院開始年月 + if self.record.close_flag == '@': + self.query_parameter['close_flag'] = None + self.query_parameter['close_year_month'] = None + # 関連大学親コード + if self.record.assoc_parrent_id == '@': + self.query_parameter['univ_prnt_code'] = None + # 病棟閉鎖フラグ + if self.record.close_flag2 == '@': + self.query_parameter['close_flag2'] = None + # 病床数(定員) + if self.record.bed_num == '@': + self.query_parameter['bed_num'] = None + # 許可病床メンテ日付 + if self.record.bed_class_maint_date == '@': + self.query_parameter['bed_class_maint_date'] = None + # 許可ベッド数(合計、精神、結核、感染、その他、一般病床、療養病床) + if self.record.bed_num_sum == '@': + self.query_parameter['bed_num_sum'] = None + self.query_parameter['bed_num_psy'] = None + self.query_parameter['bed_num_tub'] = None + self.query_parameter['bed_num_epi'] = None + self.query_parameter['bed_num_gen'] = None + self.query_parameter['bed_num_gen2'] = None + self.query_parameter['bed_num_rest'] = None + # 検査項目(微生物、血清、血液、病理、寄生虫、生化、RI) + if self.record.inspect_code1 == '@': + self.query_parameter['inspect_code1'] = None + self.query_parameter['inspect_code2'] = None + self.query_parameter['inspect_code3'] = None + self.query_parameter['inspect_code4'] = None + self.query_parameter['inspect_code5'] = None + self.query_parameter['inspect_code6'] = None + self.query_parameter['inspect_code7'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_pharm_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_pharm_mapper.py index b234815d..640152d6 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_pharm_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_pharm_mapper.py @@ -143,6 +143,9 @@ class ComPharmMapper(UltmarcTableMapper): return def __make_upsert_query(self): + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) # 存在しない場合はInsert @@ -175,7 +178,6 @@ class ComPharmMapper(UltmarcTableMapper): # 住所不明理由コード if self.record.hp_addr_lost_code != '': set_clauses.append('addr_unknown_reason_cd = :hp_addr_lost_code') - self.query_parameter['hp_addr_lost_code'] = None if self.record.hp_addr_lost_code == '@' else self.record.hp_addr_lost_code # 正式施設名カナ if self.record.hp_name_kana != '': @@ -197,42 +199,31 @@ class ComPharmMapper(UltmarcTableMapper): if len(self.record.close_flg + self.record.close_yearmonth) > 0: set_clauses.append('close_flg = :close_flg') set_clauses.append('close_start_ym = :close_yearmonth') - if self.record.close_flg == '@': - self.query_parameter['close_flg'] = None - self.query_parameter['close_yearmonth'] = None # 開業予定フラグ、開業予定年月 if len(self.record.open_flag + self.record.open_yearmonth) > 0: set_clauses.append('estab_sche_flg = :open_flag') set_clauses.append('estab_sche_ym = :open_yearmonth') - if self.record.open_flag == '@': - self.query_parameter['open_flag'] = None - self.query_parameter['open_yearmonth'] = None # 施設代表者カナ if self.record.president_Kana != '': set_clauses.append('inst_repre_kana = :president_Kana') - self.query_parameter['president_Kana'] = None if self.record.president_Kana == '@' else self.record.president_Kana - # 施設代表者 ※@が大文字 + # 施設代表者 if self.record.president != '': set_clauses.append('inst_repre = :president') - self.query_parameter['president'] = None if self.record.president == '@' else self.record.president # 電話番号なしフラグ if self.record.tel_nothing_flag != '': set_clauses.append('phone_number_non_flg = :tel_nothing_flag') - self.query_parameter['tel_nothing_flag'] = None if self.record.tel_nothing_flag == '@' else self.record.tel_nothing_flag # 未確認フラグ if self.record.unconf_flg != '': set_clauses.append('unconf_flg = :unconf_flg') - self.query_parameter['unconf_flg'] = None if self.record.unconf_flg == '@' else self.record.unconf_flg # 施設電話番号 if self.record.tel_number != '': set_clauses.append('inst_phone_number = :tel_number') - self.query_parameter['tel_number'] = None if self.record.tel_number == '@' else self.record.tel_number # 施設住所カナ if self.record.addr_kana != '': @@ -255,7 +246,6 @@ class ComPharmMapper(UltmarcTableMapper): # 住所表示番号 if self.record.addr_number != '': set_clauses.append('addr_display_number = :addr_number') - self.query_parameter['addr_number'] = None if self.record.addr_number == '@' else self.record.addr_number # 住所カウント(集合項目である県コードが入っていればカウントをセットする) if len(self.record.prefc_cd) > 0: @@ -265,32 +255,73 @@ class ComPharmMapper(UltmarcTableMapper): # 経営体コード if self.record.mgtclass_code != '': set_clauses.append('manage_cd = :mgtclass_code') - self.query_parameter['mgtclass_code'] = None if self.record.mgtclass_code == '@' else self.record.mgtclass_code # 削除予定理由コード if self.record.del_cd != '': set_clauses.append('delete_sche_reason_cd = :del_cd') - self.query_parameter['del_cd'] = None if self.record.del_cd == '@' else self.record.del_cd # 重複時相手先コード if self.record.dup_opp_cd != '': set_clauses.append('dup_opp_cd = :dup_opp_cd') - self.query_parameter['dup_opp_cd'] = None if self.record.dup_opp_cd == '@' else self.record.dup_opp_cd # 管理薬剤師名(漢字)※@が大文字 if self.record.pharmacist != '': set_clauses.append('supervising_pharmacist = :pharmacist') - self.query_parameter['pharmacist'] = None if self.record.pharmacist == '@' else self.record.pharmacist # 管理薬剤師名(カナ) if self.record.pharmacist_kana != '': set_clauses.append('supervising_pharmacist_kana = :pharmacist_kana') - self.query_parameter['pharmacist_kana'] = None if self.record.pharmacist_kana == '@' else self.record.pharmacist_kana # チェーン店本部コード if self.record.franchise_hq_id != '': set_clauses.append('franchise_hq_cd = :franchise_hq_cd') - if self.record.franchise_hq_id == '@': - self.query_parameter['franchise_hq_cd'] = None return set_clauses + + def __set_clearing_item(self): + # 住所不明理由コード + if self.record.hp_addr_lost_code == '@': + self.query_parameter['hp_addr_lost_code'] = None + # 休院フラグ、休院予定年月 + if self.record.close_flg == '@': + self.query_parameter['close_flg'] = None + self.query_parameter['close_yearmonth'] = None + # 開業予定フラグ、開業予定年月 + if self.record.open_flag == '@': + self.query_parameter['open_flag'] = None + self.query_parameter['open_yearmonth'] = None + # 施設代表者カナ + if self.record.president_Kana == '@': + self.query_parameter['president_Kana'] = None + # 施設代表者 ※@が大文字 + if self.record.president == '@': + self.query_parameter['president'] = None + # 電話番号なしフラグ + if self.record.tel_nothing_flag == '@': + self.query_parameter['tel_nothing_flag'] = None + # 未確認フラグ + if self.record.unconf_flg == '@': + self.query_parameter['unconf_flg'] = None + # 施設電話番号 + if self.record.tel_number == '@': + self.query_parameter['tel_number'] = None + # 住所表示番号 + if self.record.addr_number == '@': + self.query_parameter['addr_number'] = None + # 削除予定理由コード + if self.record.del_cd == '@': + self.query_parameter['del_cd'] = None + # 重複時相手先コード + if self.record.duphp_id == '@': + self.query_parameter['dup_opp_cd'] = None + # 管理薬剤師名(漢字) ※@が大文字 + if self.record.pharmacist == '@': + self.query_parameter['pharmacist'] = None + # 管理薬剤師名(カナ) + if self.record.pharmacist_kana == '@': + self.query_parameter['pharmacist_kana'] = None + # チェーン店本部コード + if self.record.franchise_hq_id == '@': + self.query_parameter['franchise_hq_cd'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_base_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_base_mapper.py index 2c8bd8e0..db54cb40 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_base_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_base_mapper.py @@ -1,6 +1,7 @@ from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import \ UltmarcTableMapper -from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_base import ComPrefcMedBase +from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_base import \ + ComPrefcMedBase class ComPrefcMedBaseMapper(UltmarcTableMapper): @@ -191,15 +192,18 @@ class ComPrefcMedBaseMapper(UltmarcTableMapper): def __init__(self, record: list[str], db) -> None: super().__init__(record, db, ComPrefcMedBase) - program_name = __name__.split('.')[-1] # 当モジュール名(現行から変わっている) + program_name = __name__.split(".")[-1] # 当モジュール名(現行から変わっている) # モジュール名をクエリパラメータに設定 - self.query_parameter['program_name'] = program_name + self.query_parameter["program_name"] = program_name # 読み込んだレコード値もクエリパラメータに追加 - self.query_parameter = {**self.query_parameter, **self.record.to_sql_parameter()} + self.query_parameter = { + **self.query_parameter, + **self.record.to_sql_parameter(), + } def make_query(self): # 『修正区分がB(修正)かつ追加削除区分が1(退職)』の場合、物理削除 - if self.record.maint_flag == 'B' and self.record.adddel_div == '1': + if self.record.maint_flag == "B" and self.record.adddel_div == "1": self.queries.append(self.PHYSICAL_DELETE_QUERY) return @@ -208,10 +212,16 @@ class ComPrefcMedBaseMapper(UltmarcTableMapper): return def __make_upsert_query(self): + + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # レコードの存在確認 - record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + record_count = self.db.execute_select( + self.RECORD_EXISTS_QUERY, self.query_parameter + ) # 存在しない場合はInsert - if record_count[0]['count_num'] == 0: + if record_count[0]["count_num"] == 0: return self.INSERT_QUERY # 存在する場合ではUpdate @@ -222,234 +232,258 @@ class ComPrefcMedBaseMapper(UltmarcTableMapper): # 情報年月日 if len(self.record.info_date) > 0: - set_clauses.append('info_date = :info_date') - if self.record.info_date == '@': - self.query_parameter['info_date'] = None + set_clauses.append("info_date = :info_date") # 案内用ホームページアドレス if len(self.record.home_page) > 0: - set_clauses.append('home_page = :home_page') - if self.record.home_page == '@': - self.query_parameter['home_page'] = None + set_clauses.append("home_page = :home_page") # 院内処方フラグ if len(self.record.hppre_flg) > 0: - set_clauses.append('hppre_flg = :hppre_flg') - if self.record.hppre_flg == '@': - self.query_parameter['hppre_flg'] = None + set_clauses.append("hppre_flg = :hppre_flg") # 院外処方フラグ if len(self.record.expre_flg) > 0: - set_clauses.append('expre_flg = :expre_flg') - if self.record.expre_flg == '@': - self.query_parameter['expre_flg'] = None + set_clauses.append("expre_flg = :expre_flg") # 治験の実施 if len(self.record.trial_flg) > 0: - set_clauses.append('trial_flg = :trial_flg') - set_clauses.append('trial_contcount = :trial_cont_count') - set_clauses.append('trialwhet_from = :trial_whet_from') - set_clauses.append('trialwhet_to = :trial_whet_to') - if self.record.trial_flg == '@': - self.query_parameter['trial_flg'] = None - self.query_parameter['trial_cont_count'] = None - self.query_parameter['trial_whet_from'] = None - self.query_parameter['trial_whet_to'] = None + set_clauses.append("trial_flg = :trial_flg") + set_clauses.append("trial_contcount = :trial_cont_count") + set_clauses.append("trialwhet_from = :trial_whet_from") + set_clauses.append("trialwhet_to = :trial_whet_to") # 保有する施設設備フラグ if len(self.record.equipment_flg) > 0: - set_clauses.append('equipment_flg = :equipment_flg') - if self.record.equipment_flg == '@': - self.query_parameter['equipment_flg'] = None + set_clauses.append("equipment_flg = :equipment_flg") # 対応することができる疾患・治療の内容フラグ if len(self.record.cos_disease_flg) > 0: - set_clauses.append('cos_disease_flg = :cos_disease_flg') - if self.record.cos_disease_flg == '@': - self.query_parameter['cos_disease_flg'] = None + set_clauses.append("cos_disease_flg = :cos_disease_flg") # 対応することができる短期滞在手術フラグ if len(self.record.cos_surgery) > 0: - set_clauses.append('cos_surgery = :cos_surgery') - if self.record.cos_surgery == '@': - self.query_parameter['cos_surgery'] = None + set_clauses.append("cos_surgery = :cos_surgery") # 専門外来フラグ if len(self.record.specialclinic_flg) > 0: - set_clauses.append('specialclinic_flg = :specialclinic_flg') - if self.record.specialclinic_flg == '@': - self.query_parameter['specialclinic_flg'] = None + set_clauses.append("specialclinic_flg = :specialclinic_flg") # 地域医療連携体制_窓口設置フラグ if len(self.record.establishment_flg) > 0: - set_clauses.append('establishment_flg = :establishment_flg') - if self.record.establishment_flg == '@': - self.query_parameter['establishment_flg'] = None + set_clauses.append("establishment_flg = :establishment_flg") # 地域医療連携体制_地域連携パスフラグ if len(self.record.critical_flg) > 0: - set_clauses.append('critical_flg = :critical_flg') - if self.record.critical_flg == '@': - self.query_parameter['critical_flg'] = None + set_clauses.append("critical_flg = :critical_flg") # 入院診療計画策定時における院内の連携体制 if len(self.record.cop_system) > 0: - set_clauses.append('cop_system = :cop_system') - if self.record.cop_system == '@': - self.query_parameter['cop_system'] = None + set_clauses.append("cop_system = :cop_system") # オーダリングシステム if len(self.record.sys_exists_flg) > 0: - set_clauses.append('sys_exists_flg = :sys_exists_flg') - set_clauses.append('sys_inspection = :sys_inspection') - set_clauses.append('sys_prescription = :sys_prescription') - set_clauses.append('sys_reserv = :sys_reserv') - if self.record.sys_exists_flg == '@': - self.query_parameter['sys_exists_flg'] = None - self.query_parameter['sys_inspection'] = None - self.query_parameter['sys_prescription'] = None - self.query_parameter['sys_reserv'] = None + set_clauses.append("sys_exists_flg = :sys_exists_flg") + set_clauses.append("sys_inspection = :sys_inspection") + set_clauses.append("sys_prescription = :sys_prescription") + set_clauses.append("sys_reserv = :sys_reserv") # ICDコード利用フラグ if len(self.record.icduse_flg) > 0: - set_clauses.append('icduse_flg = :icduse_flg') - if self.record.icduse_flg == '@': - self.query_parameter['icduse_flg'] = None + set_clauses.append("icduse_flg = :icduse_flg") # 電子カルテフラク if len(self.record.echart_flg) > 0: - set_clauses.append('echart_flg = :echart_flg') - if self.record.echart_flg == '@': - self.query_parameter['echart_flg'] = None + set_clauses.append("echart_flg = :echart_flg") # 専任従事者 if len(self.record.fulltime_flg) > 0: - set_clauses.append('fulltime_flg = :fulltime_flg') - set_clauses.append('fulltime_count = :fulltime_count') - if self.record.fulltime_flg == '@': - self.query_parameter['fulltime_flg'] = None - self.query_parameter['fulltime_count'] = None + set_clauses.append("fulltime_flg = :fulltime_flg") + set_clauses.append("fulltime_count = :fulltime_count") # 病床患者数平均 if len(self.record.ge_patient_avg) > 0: - set_clauses.append('ge_patient_avg = :ge_patient_avg') - set_clauses.append('mt_patient_avg = :mt_patient_avg') - set_clauses.append('mc_patient_avg = :mc_patient_avg') - set_clauses.append('ca_patient_avg = :ca_patient_avg') - set_clauses.append('pys_patient_avg = :pys_patient_avg') - set_clauses.append('tub_patient_avg = :inf_patient_avg') - set_clauses.append('inf_patient_avg = :tub_patient_avg') - set_clauses.append('patient_avg_sum = :patient_avg_sum') - set_clauses.append('patient_avg_from = :patient_avg_from') - set_clauses.append('patient_avg_to = :patient_avg_to') - if self.record.ge_patient_avg == '@': - self.query_parameter['ge_patient_avg'] = None - self.query_parameter['mt_patient_avg'] = None - self.query_parameter['mc_patient_avg'] = None - self.query_parameter['ca_patient_avg'] = None - self.query_parameter['pys_patient_avg'] = None - self.query_parameter['inf_patient_avg'] = None - self.query_parameter['tub_patient_avg'] = None - self.query_parameter['patient_avg_sum'] = None - self.query_parameter['patient_avg_from'] = None - self.query_parameter['patient_avg_to'] = None + set_clauses.append("ge_patient_avg = :ge_patient_avg") + set_clauses.append("mt_patient_avg = :mt_patient_avg") + set_clauses.append("mc_patient_avg = :mc_patient_avg") + set_clauses.append("ca_patient_avg = :ca_patient_avg") + set_clauses.append("pys_patient_avg = :pys_patient_avg") + set_clauses.append("tub_patient_avg = :inf_patient_avg") + set_clauses.append("inf_patient_avg = :tub_patient_avg") + set_clauses.append("patient_avg_sum = :patient_avg_sum") + set_clauses.append("patient_avg_from = :patient_avg_from") + set_clauses.append("patient_avg_to = :patient_avg_to") # 患者数平均 if len(self.record.cl_patient_avg) > 0: - set_clauses.append('cl_patient_avg = :cl_patient_avg') - set_clauses.append('cl_patient_avg_from = :cl_patient_avg_from') - set_clauses.append('cl_patient_avg_to = :cl_patient_avg_to') - if self.record.cl_patient_avg == '@': - self.query_parameter['cl_patient_avg'] = None - self.query_parameter['cl_patient_avg_from'] = None - self.query_parameter['cl_patient_avg_to'] = None + set_clauses.append("cl_patient_avg = :cl_patient_avg") + set_clauses.append("cl_patient_avg_from = :cl_patient_avg_from") + set_clauses.append("cl_patient_avg_to = :cl_patient_avg_to") # 患者数平均 if len(self.record.hm_patient_avg) > 0: - set_clauses.append('hm_patient_avg = :hm_patient_avg') - set_clauses.append('hm_patient_avg_from = :hm_patient_avg_from') - set_clauses.append('hm_patient_avg_to = :hm_patient_avg_to') - if self.record.hm_patient_avg == '@': - self.query_parameter['hm_patient_avg'] = None - self.query_parameter['hm_patient_avg_from'] = None - self.query_parameter['hm_patient_avg_to'] = None + set_clauses.append("hm_patient_avg = :hm_patient_avg") + set_clauses.append("hm_patient_avg_from = :hm_patient_avg_from") + set_clauses.append("hm_patient_avg_to = :hm_patient_avg_to") # 患者数延数 if len(self.record.ge_patient_ex) > 0: - set_clauses.append('ge_patient_ex = :ge_patient_ex') - set_clauses.append('mt_patient_ex = :mt_patient_ex') - set_clauses.append('mc_patient_ex = :mc_patient_ex') - set_clauses.append('ca_patient_ex = :ca_patient_ex') - set_clauses.append('pys_patient_ex = :pys_patient_ex') - set_clauses.append('tub_patient_ex = :tub_patient_ex') - set_clauses.append('inf_patient_ex = :inf_patient_ex') - set_clauses.append('patient_ex_sum = :patient_ex_sum') - set_clauses.append('patient_ex_from = :patient_ex_from') - set_clauses.append('patient_ex_to = :patient_ex_to') - if self.record.ge_patient_ex == '@': - self.query_parameter['ge_patient_ex'] = None - self.query_parameter['mt_patient_ex'] = None - self.query_parameter['mc_patient_ex'] = None - self.query_parameter['ca_patient_ex'] = None - self.query_parameter['pys_patient_ex'] = None - self.query_parameter['tub_patient_ex'] = None - self.query_parameter['inf_patient_ex'] = None - self.query_parameter['patient_ex_sum'] = None - self.query_parameter['patient_ex_from'] = None - self.query_parameter['patient_ex_to'] = None + set_clauses.append("ge_patient_ex = :ge_patient_ex") + set_clauses.append("mt_patient_ex = :mt_patient_ex") + set_clauses.append("mc_patient_ex = :mc_patient_ex") + set_clauses.append("ca_patient_ex = :ca_patient_ex") + set_clauses.append("pys_patient_ex = :pys_patient_ex") + set_clauses.append("tub_patient_ex = :tub_patient_ex") + set_clauses.append("inf_patient_ex = :inf_patient_ex") + set_clauses.append("patient_ex_sum = :patient_ex_sum") + set_clauses.append("patient_ex_from = :patient_ex_from") + set_clauses.append("patient_ex_to = :patient_ex_to") # 患者数延数 if len(self.record.cl_patient_ex) > 0: - set_clauses.append('cl_patient_ex = :cl_patient_ex') - set_clauses.append('cl_patient_ex_from = :cl_patient_ex_from') - set_clauses.append('cl_patient_ex_to = :cl_patient_ex_to') - if self.record.cl_patient_ex == '@': - self.query_parameter['cl_patient_ex'] = None - self.query_parameter['cl_patient_ex_from'] = None - self.query_parameter['cl_patient_ex_to'] = None + set_clauses.append("cl_patient_ex = :cl_patient_ex") + set_clauses.append("cl_patient_ex_from = :cl_patient_ex_from") + set_clauses.append("cl_patient_ex_to = :cl_patient_ex_to") # 患者数延数 if len(self.record.hm_patient_ex) > 0: - set_clauses.append('hm_patient_ex = :hm_patient_ex') - set_clauses.append('hm_patient_ex_from = :hm_patient_ex_from') - set_clauses.append('hm_patient_ex_to = :hm_patient_ex_to') - if self.record.hm_patient_ex == '@': - self.query_parameter['hm_patient_ex'] = None - self.query_parameter['hm_patient_ex_from'] = None - self.query_parameter['hm_patient_ex_to'] = None + set_clauses.append("hm_patient_ex = :hm_patient_ex") + set_clauses.append("hm_patient_ex_from = :hm_patient_ex_from") + set_clauses.append("hm_patient_ex_to = :hm_patient_ex_to") # 平均在院日数 if len(self.record.ge_stay_avg) > 0: - set_clauses.append('ge_stay_avg = :ge_stay_avg') - set_clauses.append('mt_stay_avg = :mt_stay_avg') - set_clauses.append('mc_stay_avg = :mc_stay_avg') - set_clauses.append('ca_stay_avg = :ca_stay_avg') - set_clauses.append('pys_stay_avg = :pys_stay_avg') - set_clauses.append('tub_stay_avg = :tub_stay_avg') - set_clauses.append('inf_stay_avg = :inf_stay_avg') - set_clauses.append('stay_avg_sum = :stay_avg_sum') - set_clauses.append('stay_avg_from = :stay_avg_from') - set_clauses.append('stay_avg_to = :stay_avg_to') - if self.record.ge_stay_avg == '@': - self.query_parameter['ge_stay_avg'] = None - self.query_parameter['mt_stay_avg'] = None - self.query_parameter['mc_stay_avg'] = None - self.query_parameter['ca_stay_avg'] = None - self.query_parameter['pys_stay_avg'] = None - self.query_parameter['tub_stay_avg'] = None - self.query_parameter['inf_stay_avg'] = None - self.query_parameter['stay_avg_sum'] = None - self.query_parameter['stay_avg_from'] = None - self.query_parameter['stay_avg_to'] = None + set_clauses.append("ge_stay_avg = :ge_stay_avg") + set_clauses.append("mt_stay_avg = :mt_stay_avg") + set_clauses.append("mc_stay_avg = :mc_stay_avg") + set_clauses.append("ca_stay_avg = :ca_stay_avg") + set_clauses.append("pys_stay_avg = :pys_stay_avg") + set_clauses.append("tub_stay_avg = :tub_stay_avg") + set_clauses.append("inf_stay_avg = :inf_stay_avg") + set_clauses.append("stay_avg_sum = :stay_avg_sum") + set_clauses.append("stay_avg_from = :stay_avg_from") + set_clauses.append("stay_avg_to = :stay_avg_to") - update_columns = ','.join(set_clauses) + update_columns = ",".join(set_clauses) # 何も更新項目が無い場合はNoneとする(更新処理は行わない) if len(update_columns) == 0: return None else: # 末尾にカンマを付けてSET句を完成させる - update_columns += ',' - update_query = self.UPDATE_QUERY.format( - update_columns=update_columns - ) + update_columns += "," + update_query = self.UPDATE_QUERY.format(update_columns=update_columns) return update_query + + def __set_clearing_item(self): + # 情報年月日 + if self.record.info_date == "@": + self.query_parameter["info_date"] = None + # 案内用ホームページアドレス + if self.record.home_page == "@": + self.query_parameter["home_page"] = None + # 院内処方フラグ + if self.record.hppre_flg == "@": + self.query_parameter["hppre_flg"] = None + # 院外処方フラグ + if self.record.expre_flg == "@": + self.query_parameter["expre_flg"] = None + # 治験の実施 + if self.record.trial_flg == "@": + self.query_parameter["trial_flg"] = None + self.query_parameter["trial_cont_count"] = None + self.query_parameter["trial_whet_from"] = None + self.query_parameter["trial_whet_to"] = None + # 保有する施設設備フラグ + if self.record.equipment_flg == "@": + self.query_parameter["equipment_flg"] = None + # 対応することができる疾患・治療の内容フラグ + if self.record.cos_disease_flg == "@": + self.query_parameter["cos_disease_flg"] = None + # 対応することができる短期滞在手術フラグ + if self.record.cos_surgery == "@": + self.query_parameter["cos_surgery"] = None + # 専門外来フラグ + if self.record.specialclinic_flg == "@": + self.query_parameter["specialclinic_flg"] = None + # 地域医療連携体制_窓口設置フラグ + if self.record.establishment_flg == "@": + self.query_parameter["establishment_flg"] = None + # 地域医療連携体制_地域連携パスフラグ + if self.record.critical_flg == "@": + self.query_parameter["critical_flg"] = None + # 入院診療計画策定時における院内の連携体制 + if self.record.cop_system == "@": + self.query_parameter["cop_system"] = None + # オーダリングシステム + if self.record.sys_exists_flg == "@": + self.query_parameter["sys_exists_flg"] = None + self.query_parameter["sys_inspection"] = None + self.query_parameter["sys_prescription"] = None + self.query_parameter["sys_reserv"] = None + # ICDコード利用フラグ + if self.record.icduse_flg == "@": + self.query_parameter["icduse_flg"] = None + # 電子カルテフラク + if self.record.echart_flg == "@": + self.query_parameter["echart_flg"] = None + # 専任従事者 + if self.record.fulltime_flg == "@": + self.query_parameter["fulltime_flg"] = None + self.query_parameter["fulltime_count"] = None + # 病床患者数平均 + if self.record.ge_patient_avg == "@": + self.query_parameter["ge_patient_avg"] = None + self.query_parameter["mt_patient_avg"] = None + self.query_parameter["mc_patient_avg"] = None + self.query_parameter["ca_patient_avg"] = None + self.query_parameter["pys_patient_avg"] = None + self.query_parameter["inf_patient_avg"] = None + self.query_parameter["tub_patient_avg"] = None + self.query_parameter["patient_avg_sum"] = None + self.query_parameter["patient_avg_from"] = None + self.query_parameter["patient_avg_to"] = None + # 患者数平均 + if self.record.cl_patient_avg == "@": + self.query_parameter["cl_patient_avg"] = None + self.query_parameter["cl_patient_avg_from"] = None + self.query_parameter["cl_patient_avg_to"] = None + # 患者数平均 + if self.record.hm_patient_avg == "@": + self.query_parameter["hm_patient_avg"] = None + self.query_parameter["hm_patient_avg_from"] = None + self.query_parameter["hm_patient_avg_to"] = None + # 患者数延数 + if self.record.ge_patient_ex == "@": + self.query_parameter["ge_patient_ex"] = None + self.query_parameter["mt_patient_ex"] = None + self.query_parameter["mc_patient_ex"] = None + self.query_parameter["ca_patient_ex"] = None + self.query_parameter["pys_patient_ex"] = None + self.query_parameter["tub_patient_ex"] = None + self.query_parameter["inf_patient_ex"] = None + self.query_parameter["patient_ex_sum"] = None + self.query_parameter["patient_ex_from"] = None + self.query_parameter["patient_ex_to"] = None + # 患者数延数 + if self.record.cl_patient_ex == "@": + self.query_parameter["cl_patient_ex"] = None + self.query_parameter["cl_patient_ex_from"] = None + self.query_parameter["cl_patient_ex_to"] = None + # 患者数延数 + if self.record.hm_patient_ex == "@": + self.query_parameter["hm_patient_ex"] = None + self.query_parameter["hm_patient_ex_from"] = None + self.query_parameter["hm_patient_ex_to"] = None + # 平均在院日数 + if self.record.ge_stay_avg == "@": + self.query_parameter["ge_stay_avg"] = None + self.query_parameter["mt_stay_avg"] = None + self.query_parameter["mc_stay_avg"] = None + self.query_parameter["ca_stay_avg"] = None + self.query_parameter["pys_stay_avg"] = None + self.query_parameter["tub_stay_avg"] = None + self.query_parameter["inf_stay_avg"] = None + self.query_parameter["stay_avg_sum"] = None + self.query_parameter["stay_avg_from"] = None + self.query_parameter["stay_avg_to"] = None + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_dis_treat_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_dis_treat_mapper.py index 0cc65001..28c072a6 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_dis_treat_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_dis_treat_mapper.py @@ -89,6 +89,10 @@ class ComPrefcMedDisTreatMapper(UltmarcTableMapper): return def __make_upsert_query(self): + # 修正のレコードだった場合はNULLに変換する + if self.record.pre_num == '@': + self.query_parameter['pre_num'] = None + # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) # 存在しない場合はInsert @@ -96,10 +100,7 @@ class ComPrefcMedDisTreatMapper(UltmarcTableMapper): return self.INSERT_QUERY # 存在する場合はUpdate - # 前年件数が空の場合は更新しない - if self.record.pre_num is not None: - if self.record.pre_num == '@': - self.query_parameter['pre_num'] = None + if self.record.is_pre_num_not_empty: return self.UPDATE_QUERY else: return None diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_equpment_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_equpment_mapper.py index 4d345900..d48059af 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_equpment_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_equpment_mapper.py @@ -89,6 +89,10 @@ class ComPrefcMedEqupmentMapper(UltmarcTableMapper): return def __make_upsert_query(self): + # 修正のレコードだった場合はNULLに変換する + if self.record.bed_num == '@': + self.query_parameter['bed_num'] = None + # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) # 存在しない場合はInsert @@ -97,9 +101,7 @@ class ComPrefcMedEqupmentMapper(UltmarcTableMapper): # 存在する場合はUpdate # 病床数が空の場合は更新しない - if self.record.bed_num is not None: - if self.record.bed_num == '@': - self.query_parameter['bed_num'] = None + if self.record.is_bed_num_not_empty: return self.UPDATE_QUERY else: return None diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_sp_outpat_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_sp_outpat_mapper.py index 149b2c76..5c5f488f 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_sp_outpat_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_prefc_med_sp_outpat_mapper.py @@ -1,6 +1,9 @@ -from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import \ - UltmarcTableMapper -from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_sp_outpat import ComPrefcMedSpOutpat +from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import ( + UltmarcTableMapper, +) +from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_sp_outpat import ( + ComPrefcMedSpOutpat, +) class ComPrefcMedSpOutpatMapper(UltmarcTableMapper): @@ -73,15 +76,18 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper): def __init__(self, record: list[str], db) -> None: super().__init__(record, db, ComPrefcMedSpOutpat) - program_name = __name__.split('.')[-1] # 当モジュール名(現行から変わっている) + program_name = __name__.split(".")[-1] # 当モジュール名(現行から変わっている) # モジュール名をクエリパラメータに設定 - self.query_parameter['program_name'] = program_name + self.query_parameter["program_name"] = program_name # 読み込んだレコード値もクエリパラメータに追加 - self.query_parameter = {**self.query_parameter, **self.record.to_sql_parameter()} + self.query_parameter = { + **self.query_parameter, + **self.record.to_sql_parameter(), + } def make_query(self): # 『修正区分がB(修正)かつ追加削除区分が1(退職)』の場合、物理削除 - if self.record.maint_flag == 'B' and self.record.adddel_div == '1': + if self.record.maint_flag == "B" and self.record.adddel_div == "1": self.queries.append(self.PHYSICAL_DELETE_QUERY) return @@ -90,10 +96,16 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper): return def __make_upsert_query(self): + # 修正のレコードだった場合はNULLに変換する + if self.record.sectsub_cd == "@": + self.query_parameter["sectsub_cd"] = None + # レコードの存在確認 - record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + record_count = self.db.execute_select( + self.RECORD_EXISTS_QUERY, self.query_parameter + ) # 存在しない場合はInsert - if record_count[0]['count_num'] == 0: + if record_count[0]["count_num"] == 0: return self.INSERT_QUERY # 存在する場合ではUpdate @@ -104,22 +116,18 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper): # ソートキー if len(self.record.sort_key) > 0: - set_clauses.append('sort_key = :sort_key') + set_clauses.append("sort_key = :sort_key") # 分類補助コード if len(self.record.sectsub_cd) > 0: - set_clauses.append('sectsub_cd = :sectsub_cd') - if self.record.sectsub_cd == '@': - self.query_parameter['sectsub_cd'] = None + set_clauses.append("sectsub_cd = :sectsub_cd") - update_columns = ','.join(set_clauses) + update_columns = ",".join(set_clauses) # 何も更新項目が無い場合はNoneとする(更新処理は行わない) if len(update_columns) == 0: return None else: # 末尾にカンマを付けてSET句を完成させる - update_columns += ',' - update_query = self.UPDATE_QUERY.format( - update_columns=update_columns - ) + update_columns += "," + update_query = self.UPDATE_QUERY.format(update_columns=update_columns) return update_query diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_sp_field_mapper.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_sp_field_mapper.py index c84dd089..3c690403 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_sp_field_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/table_mapper/concrete/com_sp_field_mapper.py @@ -104,6 +104,10 @@ class ComSpFieldMapper(UltmarcTableMapper): # レコードの存在確認 record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter) + + # 「@」による項目クリアを設定 + self.__set_clearing_item() + # 存在しない場合はInsert if record_count[0]['count_num'] == 0: return self.INSERT_QUERY @@ -115,23 +119,14 @@ class ComSpFieldMapper(UltmarcTableMapper): if len(self.record.specialist_flg) > 0: set_clauses.append('specialist_flg = :specialist_flg') set_clauses.append('specialist_publsh_ymd = :specialist_publsh_ymd') - if self.record.specialist_flg == '@': - self.query_parameter['specialist_flg'] = None - self.query_parameter['specialist_publsh_ymd'] = None if len(self.record.ackn_med_flg) > 0: set_clauses.append('ackn_med_flg = :ackn_med_flg') set_clauses.append('ackn_med_publsh_ymd = :ackn_med_publsh_ymd') - if self.record.ackn_med_flg == '@': - self.query_parameter['ackn_med_flg'] = None - self.query_parameter['ackn_med_publsh_ymd'] = None if len(self.record.guide_med_flg) > 0: set_clauses.append('guide_med_flg = :guide_med_flg') set_clauses.append('guide_med_publsh_ymd = :guide_med_publsh_ymd') - if self.record.guide_med_flg == '@': - self.query_parameter['guide_med_flg'] = None - self.query_parameter['guide_med_publsh_ymd'] = None update_columns = ','.join(set_clauses) # 何も更新項目が無い場合はNoneとする(更新処理は行わない) @@ -144,3 +139,20 @@ class ComSpFieldMapper(UltmarcTableMapper): update_columns=update_columns ) return update_query + + def __set_clearing_item(self): + + # 専門医の集合項目クリア + if self.record.specialist_flg == '@': + self.query_parameter['specialist_flg'] = None + self.query_parameter['specialist_publsh_ymd'] = None + # 認定医の集合項目クリア + if self.record.ackn_med_flg == '@': + self.query_parameter['ackn_med_flg'] = None + self.query_parameter['ackn_med_publsh_ymd'] = None + # 指導医の集合項目クリア + if self.record.guide_med_flg == '@': + self.query_parameter['guide_med_flg'] = None + self.query_parameter['guide_med_publsh_ymd'] = None + + return diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_dis_treat.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_dis_treat.py index f7bacedd..979e40a9 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_dis_treat.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_dis_treat.py @@ -23,8 +23,12 @@ class ComPrefcMedDisTreat(UltmarcTable): self.adddel_div = record[6] self.pre_num = record[9] + # Update判断フラグ。数値が空の場合は更新しない。 + self.is_pre_num_not_empty = True + # smallint型のカラム値は、空文字で渡ってきた場合はNULLに変換する self.pre_num = self.pre_num if len(self.pre_num) > 0 else None + self.is_pre_num_not_empty = self.pre_num is not None # DCFDSF施設コード self.dcfdsf_inst_code = ''.join([self.dcfhp_id, self.dcfhp_code, self.dcfhp_yobi]) diff --git a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_equpment.py b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_equpment.py index 491a0a3f..c0d90d24 100644 --- a/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_equpment.py +++ b/ecs/jskult-batch-daily/src/batch/ultmarc/utmp_tables/tables/com_prefc_med_equpment.py @@ -23,8 +23,12 @@ class ComPrefcMedEqupment(UltmarcTable): self.adddel_div = record[6] self.bed_num = record[9] + # Update判断フラグ。数値が空の場合は更新しない。 + self.is_bed_num_not_empty = True + # smallint型のカラム値は、空文字で渡ってきた場合はNULLに変換する self.bed_num = self.bed_num if len(self.bed_num) > 0 else None + self.is_bed_num_not_empty = self.bed_num is not None # DCFDSF施設コード self.dcfdsf_inst_code = ''.join([self.dcfhp_id, self.dcfhp_code, self.dcfhp_yobi]) diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/com_dr_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/com_dr_insert.csv index c137b8b9..383ecb75 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/com_dr_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/com_dr_insert.csv @@ -3,6 +3,5 @@ "501","01","995783","00","A","20141113","20141114",,,,,"船越 正信","フナコシ マサノブ","1","3","29","01","06","53","55","3","53","039","1","3","53","A01","L01","E02","C04","L03","7","00","000","000","000",,,,,"00","00","00","00","00","00","00","00",,"02","A05","20051003",,"2",,, "501","01","997682","00","A","20141113","20141114",,,,,"川崎 三紀子","カワサキ ミキコ","2","3","46","10","03","99","99","4","11","057","1","4","11","A01","A58",,,,,"13","119","047","000","173-0001","東京都板橋区本町6-3-301","トウキヨウト イタバシク ホンチヨウ 6-3-301","6-3-301","03","03","02","00","07","07","06","00","03-3579-1698",,,,,"2",,,"1" "501","01","997906","00","A","20141113","20141114",,,,,"丘 守正","オカ モリマサ","1","3","20","03","11","99","31","3","45","799","1",,,"A01","L01","A31","A21","A11",,"08","221","095","000","312-0021","茨城県ひたちなか市大字三反田3892-4","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","3892-4","03","06","05","00","08","07","11","00","029-274-7110",,,,,"1","4","03", -"501","01","999613","00","A","20141113","20141114","5","01","481065","00","藤田 茜","フジタ アカネ","2",,,,,"99","99",,,"799","1","4","23",,,,,,"6","00","000","000","000",,,,,"00","00","00","00","00","00","00","00",,,,,,"9",,, "501","01","997907","00","A","20141113","20141114",,,,,"丘 守正","オカ モリマサ","1",,,"03","11","99","31","3","45","799","1",,,"","","","","",,"08","221","095","000","312-0021","茨城県ひたちなか市大字三反田3892-4","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","3892-4","03","06","05","00","08","07","11","00","029-274-7110",,,,,"1","4","03", -"501","01","997908","00","A","20141113","20141114",,,,,"丘 守正","オカ モリマサ","1","3","20",,,"99","31","3","45","799","1",,,"","","","","",,"08","221","095","000","312-0021","茨城県ひたちなか市大字三反田3892-4","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","3892-4","03","06","05","00","08","07","11","00","029-274-7110",,,,,"1","4","03", +"501","01","997908","00","A","20141113","20141114","@","@","481065","00","藤堂 尚也","トウドウ ナオヤ","1","@","20","10","03","99","31","@","45","799","1","@","23","@","L01","E02","C04","L03","@","08","221","095","000","312-0021","茨城県ひたちなか市大字三反田3892-4","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","3892-4","03","06","05","00","08","07","11","00","@","@","@","@","@","1","@","03","1" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/expect_com_dr_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/expect_com_dr_insert.csv index 48987f8f..3d251803 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/expect_com_dr_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr/expect_com_dr_insert.csv @@ -5,5 +5,4 @@ "0199768200","カワサキ ミキコ","川崎 三紀子","3","46","10","03","19711003","99",,,,"03-3579-1698","トウキヨウト イタバシク ホンチヨウ 6-3-301","東京都板橋区本町6-3-301","173-0001","13119047000","13","119","6-3-301","07070600","03030200","99","2","2",,,"057","1","4","11","1999","1",,"1",,,,,"4","11","1999","NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" "0199790600","オカ モリマサ","丘 守正","3","20","03","11","19450311","99","4","03","1991","029-274-7110","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","茨城県ひたちなか市大字三反田3892-4","312-0021","08221095000","08","221","3892-4","08071100","03060500","31","1","1",,,"799","1","3","45","1970",,,"1",,,,,,,,"NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" "0199790700","オカ モリマサ","丘 守正",,,"03","11"," 0311","99","4","03","1991","029-274-7110","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","茨城県ひたちなか市大字三反田3892-4","312-0021","08221095000","08","221","3892-4","08071100","03060500","31","1","1",,,"799","1","3","45","1970",,,"1",,,,,,,,"NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" -"0199790800","オカ モリマサ","丘 守正","3","20",,,"","99","4","03","1991","029-274-7110","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","茨城県ひたちなか市大字三反田3892-4","312-0021","08221095000","08","221","3892-4","08071100","03060500","31","1","1",,,"799","1","3","45","1970",,,"1",,,,,,,,"NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" -"0199961300","フジタ アカネ","藤田 茜",,,,,,"99",,,,,,,,"00000000000","00","000",,"00000000","00000000","99","9","2","5","6","799","1",,,,,"0148106500","1",,,,,"4","23","2011","NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" +"0199790800","トウドウ ナオヤ","藤堂 尚也","NULL","NULL","NULL","NULL","NULL","99","NULL","NULL","NULL","NULL","イバラキケン ヒタチナカシ オオアザミタンダ 3892-4","茨城県ひたちなか市大字三反田3892-4","312-0021","08221095000","08","221","3892-4","08071100","03060500","31","1","1","NULL","NULL","799","1","NULL","NULL","NULL","1","NULL","1","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2017/10/08 16:16:43","com_dr_mapper","2017/10/08 16:16:43","com_dr_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/com_dr_wrkplace_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/com_dr_wrkplace_insert.csv index c0abf3ce..80592c3a 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/com_dr_wrkplace_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/com_dr_wrkplace_insert.csv @@ -8,3 +8,4 @@ "502","01","997906","","A","00","5504428","","2","20141113","20141114","","144","7212","","","" "502","01","997906","","A","00","5507600","","2","20141113","20141114","","144","9114","","","" "502","01","999613","","A","00","5504428","","2","20141113","20141114","","144","5140","","","" +"502","01","995784","","B","00","5507600","","2","20170907","20170910","@","@","@","@","@","@" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/expect_com_dr_wrkplace_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/expect_com_dr_wrkplace_insert.csv index 3f8923af..ee6de463 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/expect_com_dr_wrkplace_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_dr_wrkplace/expect_com_dr_wrkplace_insert.csv @@ -9,3 +9,4 @@ "005504428","01997906","7212",,"144","2020-02-22","ユケツ.サイボウチリヨウガク","輸血・細胞治療学",,"2022-02-02","NULL","NULL","NULL","NULL","NULL","2022-02-02 10:45:17","com_dr_wrkplace_mapper","2022-02-02 14:54:00","com_dr_wrkplace_mapper" "005507600","01997906","9114",,"144","2020-02-22","サイボウイシヨクブモン","細胞移植部門",,"2022-02-02","NULL","NULL","NULL","NULL","NULL","2022-02-02 10:45:17","com_dr_wrkplace_mapper","2022-02-02 14:54:00","com_dr_wrkplace_mapper" "005504428","01999613","5140",,"144","2020-02-22","ヤクリガク","薬理学",,"2022-02-02","NULL","NULL","NULL","NULL","NULL","2022-02-02 10:45:17","com_dr_wrkplace_mapper","2022-02-02 14:54:00","com_dr_wrkplace_mapper" +"005507600","01995784","9999",,,"2020-02-22","NULL","NULL","NULL","2022-02-02","NULL","NULL","NULL","NULL","NULL","2022-02-02 10:45:17","com_dr_wrkplace_mapper","2022-02-02 14:54:00","com_dr_wrkplace_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/com_inst_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/com_inst_insert.csv index f597e06a..432c8f24 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/com_inst_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/com_inst_insert.csv @@ -5,3 +5,4 @@ "101","00","9901679","","A","20141113","20141114","","","","","","鹿児島市医師会臨床検査センター","カゴシマシイシカイリンシヨウケンサセンタ-","鹿児島市医師会臨床検査センター","カゴシマシイシカイリンシヨウケンサセンタ-","","46","201","017","000","892-0846","鹿児島県鹿児島市加治屋町3-10","カゴシマケン カゴシマシ カジヤチヨウ 3-10","3-10","04","04","04","00","08","07","08","00","","099-226-8827","470","60","01","148013","","海江田 健","カイエダ タケル","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","9","9","","","","","0","","","","","","","","","1","1","1","1","1","1","1","","","" "101","00","9904439","","A","20141113","20141114","","","","","","川崎市立井田病院","カワサキシリツイダビヨウイン","井田病院 市立","イダビヨウイン シリツ","","14","133","001","002","211-0035","神奈川県川崎市中原区井田2-27-1","カナガワケン カワサキシ ナカハラク イダ 2-27-1","2-27-1","04","06","02","02","08","12","04","02","","044-766-2188","221","01","","","","","","","","","","A01","A34","A22","M01","D02","A12","A81","C01","N03","K01","J01","P02","O01","B01","C04","E02","F01","I01","C05","B31","H02","A41","A03","A58","A61","A65","F08","A56","B11","B22","B04","P03","G06","A57","","","","","","","","","","","","","","","","","","","","","","","","","","","1","3","","","","","370","20140811","370","0","27","0","343","343","0","","","","","","","","","","" "101","00","9929798","","A","20141113","20141114","","","","","","パーソナルヘルス学びのクリニック","パ-ソナルヘルスマナビノクリニツク","パーソナルヘルス学びのCL","パ-ソナルヘルスマナビノクリニツク","","13","103","025","002","107-0062","東京都港区南青山2-2-15 ウイン青山405","トウキヨウト ミナトク ミナミアオヤマ 2-2-1 ウインアオヤマ 405","2-2-15-405","03","02","03","02","07","05","08","02","1","","472","10","01","331831","","白澤 博満","シラサワ ヒロミツ","","","","","A01","I01","A57","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","7","6","","","","","0","20130415","0","0","0","0","0","0","0","","","","","","","","","","" +"101","99","99999","99","A","20230606","200230607","@","@","@","11","12","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこあいうえお","アイウエオカクキケコアイウエオカクキケコ","@","18","19","20","21","123-4522","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","25","26","27","28","29","30","31","32","33","@","@","36","37","@","39","40","@","@","@","202304","@","202306","@","48","49","50","51","52","53","54","55","56","57","58","59","60","61","62","63","64","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","91","92","93","94","95","96","97","98","99","100","101","102","103","104","105","106","7","8","@","10","11","@","@","@","@","6","7","8","9","0","1","@","3","4","5","6","7","8","@","333333","11" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/expect_com_inst_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/expect_com_inst_insert.csv index 97617e35..e79b6d77 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/expect_com_inst_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/expect_com_inst_insert.csv @@ -6,3 +6,4 @@ "009904439","01","","カワサキシリツイダビヨウイン","イダビヨウイン シリツ","川崎市立井田病院","井田病院 市立","","370","","","","","","","","","","","044-766-2188","カナガワケン カワサキシ ナカハラク イダ 2-27-1","神奈川県川崎市中原区井田2-27-1","211-0035","14133001002","14","133","2-27-1","08120402","04060202","221","","1","","","","","","","","","3","343","0","27","0","370","343","0","20140811","1","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2022-01-31 11:38:27","com_inst_mapper","2022-01-31 11:38:27","com_inst_mapper" "009929798","10","","パ-ソナルヘルスマナビノクリニツク","パ-ソナルヘルスマナビノクリニツク","パーソナルヘルス学びのクリニック","パーソナルヘルス学びのCL","","0","","","","","","01331831","シラサワ ヒロミツ","白澤 博満","1","","","トウキヨウト ミナトク ミナミアオヤマ 2-2-1 ウインアオヤマ 405","東京都港区南青山2-2-15 ウイン青山405","107-0062","13103025002","13","103","2-2-15-405","07050802","03020302","472","","7","","","","","","","","","6","0","0","0","0","0","0","0","20130415","1","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2022-01-31 11:38:28","com_inst_mapper","2022-01-31 11:38:28","com_inst_mapper" "223333344","37","7","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","アイウエオカクキケコアイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","あいうえおかきくけこあいうえおかきくけこあいうえお","81011","113","5","3","202306","202304","2","383940","アイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこ","4","8","35","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","123-4522","18192021","18","19","25","30313233","26272829","36","9","7","101112","2","3","4","5","6","7","8","8","9","6","7","8","115","0","1","20230114","1","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_inst_mapper","2023/04/12 00:00:00","com_inst_mapper" +"999999999","37","NULL","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","アイウエオカクキケコアイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","あいうえおかきくけこあいうえおかきくけこあいうえお","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","アイウエオカクキケコアイウエオカクキケコアイウエオカクキケコ","あいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこあいうえおかきくけこ","123-4522","18192021","18","19","25","30313233","26272829","36","NULL","7","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","8","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","1","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_inst_mapper","2023/04/12 00:00:00","com_inst_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/test_com_inst_mapper.py b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/test_com_inst_mapper.py index f408fcca..a3554692 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/test_com_inst_mapper.py +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst/test_com_inst_mapper.py @@ -134,6 +134,8 @@ class TestComInstMapper: # 期待値ファイルを読み込む(特養医務室データ) expect_data_list = create_db_data_from_csv(path.join(self.test_file_path, 'expect_com_spcare_insert.csv')) + actual_record_count = self.db.execute_select('SELECT COUNT(*) AS count_num FROM src05.com_spcare_med_office_dat')[0]['count_num'] + assert actual_record_count == len(expect_data_list), 'DBのレコード件数が期待値の件数と一致すること' primary_keys = [f"'{primary_key['dcf_chld_inst_cd']}'" for primary_key in expect_data_list] actual_select_sql = f"SELECT * FROM src05.com_spcare_med_office_dat WHERE dcf_chld_inst_cd IN ({','.join(primary_keys)})" actual_data_list = self.db.execute_select(actual_select_sql) diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/com_inst_att_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/com_inst_att_insert.csv index 57045790..7dd0af30 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/com_inst_att_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/com_inst_att_insert.csv @@ -18,3 +18,4 @@ "111","00","9908576","","A","2","20141113","20141114","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","20100401","","","","","1","20080401","","","","","","","","","","","","","","","","","","20070831","","","20070831","","","","2","9","1","I001","33","20130401","","","","","","33","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","200704" "111","00","9910624","","A","2","20141113","20141114","1","20030401","","","","","1","20120401","","1","19940201","","","","","","1","20120401","","","","","","","","1","20121201","","1","20090701","","1","20061101","","","","","","","","1","99","","","","","","","","","","","","","","","","","","","","1","20100401","","1","20140401","","1","20140401","","1","01","02","03","04","","","","","","","1","20140401","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","08","20100402","","","","20060331","1","20041001","","1","20040331","","1","1","1","","","1","2","20070702","","","","","1","1","1","002","1","006","1","051","4","004","1","100","2","165","1","035","1","168","1","118","1","101","1","182","","202","1","214","5","149","","197","1","198","","177","1","183","1","213","5","217","5","212","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","11","31","34","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","192202" "111","00","9929798","","A","2","20141113","20141114","1","20080701","","","","","","","","","","","","","","","","","","","","","1","20100401","","1","20090301","","1","20100401","","","","20080531","","","","1","19971201","","","","","","","","","","","","","","","","","","","","","","","1","20100401","","","","","1","20080401","","1","01","02","03","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","13","20140106","","","","","","","","1","20040331","","","1","1","","","","","","","","","","1","1","1","168","1","197","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","195305" +"111","00","9929799",,"A","2","20141113","20141114","@","20080701","20080701","@","2008","20080701","@","20080701","20080701","@","20080701","20080701","@","10.1","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","20080701","20080701","@","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","15","17","18","19","20","@","20100401","20100401","@","20100401","20100401","@","20100401","20100401","@","01","02","03","04","05","06","07","08","09","10","@","20140401","20140401","@","20140401","20140401","@","20140401","20140401","@","20140401","20140401","@","@","@","I001","33","20130401","20130401","4101","116","20090501","20090501","33","@","B999","450","@","M999","40","@","K999","4","@","9","9","@","9","@","21","20130901","20130901","@","13","20140106","20140106","@","20030401","20040229","1","20041001","20041001","1","20040331","20040331","@","@","1","1","@","@","2","20070702","20070702","@","20070702","20070702","@","@","@","168","1","197","1","051","4","004","1","100","2","165","1","035","1","168","1","118","1","101","1","182",,"202","1","214","5","149","1","197","1","198","1","177","1","183","1","213","5","217","5","212","1","202","3","204","5","206","7","208","9","210","1","212","3","214","5","216","7","218","9","220","1","222","3","224","5","226","7","228","9","230","1","232","3","234","5","236","7","238","9","@","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","@","62","3","64","5","66","7","68","9","70","1","72","3","74","5","76","7","78","9","80","1","82","3","84","5","86","7","88","9","90","1","92","3","94","5","96","7","98","9","00","1","@","00","8106522","00","@" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/expect_com_inst_att_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/expect_com_inst_att_insert.csv index 264abcbe..fa54041d 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/expect_com_inst_att_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_inst_att/expect_com_inst_att_insert.csv @@ -18,4 +18,4 @@ "009908576","","","","","","","","","","","","","","NULL","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","20100401","","","","","1","20080401","","","","","","","","","","","","","","","","","","20070831","","","20070831","","","","2","9","1","I001","33","20130401","","","NULL","","","33","","","NULL","","","NULL","","","NULL","","","","","NULL","","NULL","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","200704","20171008","20230509","NULL","NULL","NULL","NULL","2017/10/08 20:57:12","com_inst_att_mapper","2017/10/08 20:57:12","com_inst_att_mapper" "009910624","1","20030401","","","","","1","20120401","","1","19940201","","","NULL","","","1","20120401","","","","","","","","1","20121201","","1","20090701","","1","20061101","","","","","","","","1","99","","","","","","","","","","","","","","","","","","","","1","20100401","","1","20140401","","1","20140401","","1","01","02","03","04","","","","","","","1","20140401","","","","","","","","","","","","","","","NULL","","","","NULL","","","NULL","","","NULL","","","NULL","","","NULL","","","","","NULL","","NULL","","","1","08","20100402","","","","20060331","1","20041001","","1","20040331","","1","1","1","","","1","2","20070702","","","","","1","1","1","002","1","006","1","051","4","004","1","100","2","165","1","035","1","168","1","118","1","101","1","182","","202","1","214","5","149","","197","1","198","","177","1","183","1","213","5","217","5","212","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","1","11","31","34","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","192202","20171008","20230509","NULL","NULL","NULL","NULL","2017/10/08 20:57:12","com_inst_att_mapper","2017/10/08 20:57:12","com_inst_att_mapper" "009929798","1","20080701","","","","","","","","","","","","NULL","","","","","","","","","1","20100401","","1","20090301","","1","20100401","","","","20080531","","","","1","19971201","","","","","","","","","","","","","","","","","","","","","","","1","20100401","","","","","1","20080401","","1","01","02","03","","","","","","","","","","","","","","","","","","","","","","","","NULL","","","","NULL","","","NULL","","","NULL","","","NULL","","","NULL","","","","","NULL","","NULL","","","1","13","20140106","","","","","","","","1","20040331","","","1","1","","","","","","","","","","1","1","1","168","1","197","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","195305","20171008","20230509","NULL","NULL","NULL","NULL","2017/10/08 20:57:12","com_inst_att_mapper","2017/10/08 20:57:12","com_inst_att_mapper" -"12345678999","9","20230510","20230511","2","2023","20230514","5","20230516","20230517","8","20230519","20230520","1","22.1","20230523","20230524","5","20230526","20230527","8","20230529","20230530","1","20230502","20230503","4","20230505","20230506","7","20230508","20230509","0","20230501","20230402","3","20230404","20230405","6","20230407","20230408","9","50","51","52","53","54","55","56","57","58","59","60","61","62","63","64","65","66","67","68","69","0","20230701","20230702","3","20230704","20230705","6","20230707","20230708","9","80","81","82","83","84","85","86","87","88","89","0","20230901","20230902","3","20230904","20230905","6","20230907","20230908","9","20231001","20231011","2","3","4","105","106","20231007","20231008","109","110","20231101","20231102","113","4","0115","116","7","0118","119","0","0121","122","3","4","5","6","127","8","129","20230130","20230131","2","33","20230104","20230105","6","20230107","20230108","9","20230104","20230101","2","20230103","20230104","5","6","7","8","9","0","1","20230102","20230403","4","20230105","20230106","7","8","9","160","1","162","3","164","5","166","7","168","9","170","1","172","3","174","5","176","7","178","9","180","1","182","3","184","5","186","7","188","9","190","1","192","3","194","5","196","7","198","9","200","1","202","3","204","5","206","7","208","9","210","1","212","3","214","5","216","7","218","9","220","1","222","3","224","5","226","7","228","9","230","1","232","3","234","5","236","7","238","9","0","41","42","43","44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59","60","1","62","3","64","5","66","7","68","9","70","1","72","3","74","5","76","7","78","9","80","1","82","3","84","5","86","7","88","9","90","1","92","3","94","5","96","7","98","9","00","1","2","3","0000304","05","202303","20230509","20230509","NULL","NULL","NULL","NULL","2023/05/09 10:10:10","com_inst_att_mapper","2023/05/09 10:10:10","com_inst_att_mapper" +"009929799","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","20171008","20230509","NULL","NULL","NULL","NULL","2017/10/08 20:57:12","com_inst_att_mapper","2017/10/08 20:57:12","com_inst_att_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_insert.csv index cd75c6c1..0f6a5751 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_insert.csv @@ -117,3 +117,4 @@ "102","03","3673870",,"A","20121127","20121128",,,,,,"薮藪篭籠","セイシキテンポメイモジ70","薮藪篭籠","リヤクシキモジ70",,"13","102","24","2","103-0007","東京都中央区日本橋浜町2-45-1 薮藪篭籠","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ70","2-45-1-70","3","3","5","2","7","7","12","2",,"03-3249-8231","471","85","薮藪篭籠 太郎","ダイヒヨウシヤメイモジ70 タロウ",,,,,"薮藪篭籠 太郎","カンリヤクザイシメイモジ70 タロウ",,, "102","03","3673871",,"A","20121127","20121128",,,,,,"尭堯槙槇遥遙瑶瑤凜熙","セイシキテンポメイモジ71","尭堯槙槇遥遙瑶瑤凜熙","リヤクシキモジ71",,"13","102","24","2","103-0007","東京都中央区日本橋浜町2-45-1 尭堯槙槇遥遙瑶瑤凜熙","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ71","2-45-1-71","3","3","5","2","7","7","12","2",,"03-3249-8231","471","85","尭堯槙槇遥遙瑶瑤凜熙 太郎","ダイヒヨウシヤメイモジ71 タロウ",,,,,"尭堯槙槇遥遙瑶瑤凜熙 太郎","カンリヤクザイシメイモジ71 タロウ",,, "102","03","3673872",,"A","20121127","20121128",,,,,,"ツッー-一医院薬鈴田","セイシキテンポメイモジ72","ツッー-一医院薬鈴田","リヤクシキモジ72",,"13","102","24","2","103-0007","東京都中央区日本橋浜町2-45-1 ツッー-一医院薬鈴田","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ72","2-45-1-72","3","3","5","2","7","7","12","2",,"03-3249-8231","471","85","ツッー-一医院薬鈴田 太郎","ダイヒヨウシヤメイモジ72 タロウ",,,,,"ツッー-一医院薬鈴田 太郎","カンリヤクザイシメイモジ72 タロウ",,, +"102","03","3673873",,"A","20121127","20121128","@","@","@","3673873","00","正漢字","セイカナ","略漢字","リヤクカナ","@","61","62","63","64","001-6234","住所漢字","ジユウシヨカナ","@","1","2","3","4","5","6","7","8","@","@","471","66","@","@","@","201212","@","201210","@","@","@","3673056","00" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_update.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_update.csv index 1c7e33c2..8d55aa75 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_update.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/com_pharm_update.csv @@ -1,7 +1,7 @@ "102","1","2","3","B",,,"6",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, "102","9","9","9","B",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, "102","4","5","6","B",200501,200601,"6",7,55,56,57,正漢字,正カナ,略漢字,略カナ,0,61,62,63,64,001-6234,住所漢字,住所カナ,11,1,2,3,4,5,6,7,8,0,119991234,11,66,代漢,代カナ,4,204411,8,204812,薬剤師漢字,薬剤師カナ,99,88,77, -"102","7","8","9","B",200501,200601,"6",@,@,,,正漢字,正カナ,略漢字,略カナ,@,61,62,63,64,001-6234,住所漢字,住所カナ,@,1,2,3,4,5,6,7,8,@,@,@,66,@,@,@,,@,,@,@,@,,, +"102","7","8","9","B",200501,200601,"6",@,@,,,正漢字,正カナ,略漢字,略カナ,@,61,62,63,64,001-6234,住所漢字,住所カナ,@,1,2,3,4,5,6,7,8,@,@,471,66,@,@,@,,@,,@,@,@,,, "102","03","3673002",,"B",20121128,20121129,,5,03,3673003,,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, "102","03","3673011",,"B",20121128,20121129,"@",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, "102","03","3673012",,"B",20121128,20121129,,1,,,,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_insert.csv index 7baed1d0..e4d10126 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_insert.csv @@ -117,3 +117,4 @@ "033673870","85",,"セイシキテンポメイモジ70","リヤクシキモジ70","薮藪篭籠","薮藪篭籠",,,,,"ダイヒヨウシヤメイモジ70 タロウ","薮藪篭籠 太郎",,,"03-3249-8231","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ70","東京都中央区日本橋浜町2-45-1 薮藪篭籠","103-0007","13102242","13","102","2-45-1-70","07071202","03030502","471",,,"薮藪篭籠 太郎","カンリヤクザイシメイモジ70 タロウ",,"2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_pharm_mapper","2023/04/12 00:00:00","com_pharm_mapper" "033673871","85",,"セイシキテンポメイモジ71","リヤクシキモジ71","尭堯槙槇遥遙瑶瑤凜熙","尭堯槙槇遥遙瑶瑤凜熙",,,,,"ダイヒヨウシヤメイモジ71 タロウ","尭堯槙槇遥遙瑶瑤凜熙 太郎",,,"03-3249-8231","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ71","東京都中央区日本橋浜町2-45-1 尭堯槙槇遥遙瑶瑤凜熙","103-0007","13102242","13","102","2-45-1-71","07071202","03030502","471",,,"尭堯槙槇遥遙瑶瑤凜熙 太郎","カンリヤクザイシメイモジ71 タロウ",,"2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_pharm_mapper","2023/04/12 00:00:00","com_pharm_mapper" "033673872","85",,"セイシキテンポメイモジ72","リヤクシキモジ72","ツッー-一医院薬鈴田","ツッー-一医院薬鈴田",,,,,"ダイヒヨウシヤメイモジ72 タロウ","ツッー-一医院薬鈴田 太郎",,,"03-3249-8231","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 モジ72","東京都中央区日本橋浜町2-45-1 ツッー-一医院薬鈴田","103-0007","13102242","13","102","2-45-1-72","07071202","03030502","471",,,"ツッー-一医院薬鈴田 太郎","カンリヤクザイシメイモジ72 タロウ",,"2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_pharm_mapper","2023/04/12 00:00:00","com_pharm_mapper" +"033673873","66","NULL","セイカナ","リヤクカナ","正漢字","略漢字","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","ジユウシヨカナ","住所漢字","001-6234","61626364","61","62","NULL","05060708","01020304","471","NULL","NULL","NULL","NULL","NULL","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/12 00:00:00","com_pharm_mapper","2023/04/12 00:00:00","com_pharm_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_update.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_update.csv index a6133434..c9dc8e9e 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_update.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_pharm/expect_com_pharm_update.csv @@ -33,5 +33,5 @@ "033673061","85",,"セイシキテンポメイ03B13B","リヤクシキ03B13B","正式店舗名03B13b","略式03B13b",,,,,,,,,"03-3249-8231","トウキヨウト チユウオウク ニホンバシハマチヨウ 2-45-1 03B13B","東京都中央区日本橋浜町2-45-1 03B13b","103-0007","13102242","13","102","2-45-1-03B13B","07071202","03030502","471",,,,,"033673060","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/19 00:00:00","com_pharm_mapper","2023/04/19 00:00:00","com_pharm_mapper" "123","2","6","13","15","12","14","1","9","204201","204001","38","37","3","6","34","23","22","221-000","17181920","17","18","24","29303132","25262728","35","8","91011","43","44","454647","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/18 10:27:33","com_pharm_mapper","2023/04/19 08:27:33","com_pharm_mapper" "456","66","0","正カナ","略カナ","正漢字","略漢字","8","4","204812","204411","代カナ","代漢","0","6","119991234","住所カナ","住所漢字","001-6234","61626364","61","62","11","05060708","01020304","11","7","555657","薬剤師漢字","薬剤師カナ","998877","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/4/18 10:27:00","com_pharm_mapper","2023/4/19 08:27:00","com_pharm_mapper" -"789","66","NULL","正カナ","略カナ","正漢字","略漢字","NULL","NULL","NULL","NULL","NULL","NULL","NULL","6","NULL","住所カナ","住所漢字","001-6234","61626364","61","62","NULL","05060708","01020304","NULL","NULL","NULL","NULL","NULL","NULL","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/4/18 10:27:00","com_pharm_mapper","2023/4/19 08:27:00","com_pharm_mapper" +"789","66","NULL","正カナ","略カナ","正漢字","略漢字","NULL","NULL","NULL","NULL","NULL","NULL","NULL","6","NULL","住所カナ","住所漢字","001-6234","61626364","61","62","NULL","05060708","01020304","471","NULL","NULL","NULL","NULL","NULL","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/4/18 10:27:00","com_pharm_mapper","2023/4/19 08:27:00","com_pharm_mapper" "999","2","6","13","15","12","14","1","9","204201","204001","38","37","3","7","34","23","22","221-000","17181920","17","18","24","29303132","25262728","35","8","91011","43","44","454647","2","NULL","0","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","2023/04/18 10:27:33","com_pharm_mapper","2023/04/18 10:27:33","com_pharm_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/com_prefc_med_base_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/com_prefc_med_base_insert.csv index 81dd90b1..de5f5b03 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/com_prefc_med_base_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/com_prefc_med_base_insert.csv @@ -1,6 +1,8 @@ -"132","00","9900146","","A","2","20141113","20141114","20140624","","1","","","","","","1","1","","","","","","","","","","","","","","18.8","","","","","","","","20130401","20140331","49.8","20130401","20140331","","","","","","","","","","","","","","","","","","","","39.3","","","","","","","","20130401","20140331" -"132","00","9900194","","A","2","20141113","20141114","20121101","http://www.hospital.misawa.aomori.jp/","1","1","1","0","20100401","20110331","1","1","1","1","1","1","1","1","1","1","1","1","1","1","3","205.4","","","","","","","","20100401","20110331","468.1","20100401","20110331","8.3","20100401","20110331","","","","","","","","","","","","","","","","","18.7","","","","","","0.0","","20100401","20110331" -"132","00","9901649","","A","2","20141113","20141114","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" -"132","00","9901679","","A","2","20141113","20141114","20140627","http://www.kai-sei-kai.com/","1","","","","","","1","1","1","1","1","","1","","","","","1","","1","2","58.5","229.2","102.3","131.3","","","","","20130401","20140331","96.0","20130401","20140331","","","","","","","","","","","","","","","","","","","","20.4","641.3","533.2","749.2","","","","","20130401","20140331" -"132","00","9929798","","A","2","20141113","20141114","20130611","http://www.urakawa.jrc.or.jp/","1","","","","","","1","1","1","1","1","","1","","","","","","","1","1","114.6","46.6","","","39.9","0.0","0.0","","20120401","20130331","481.6","20120401","20130331","16.2","20120401","20130331","","","","","","","","","","","","","","","","","15.6","555.3","","","169.4","0.0","0.0","","20120401","20130331" -"132","99","9999999","99","A","2","20141113","20141114","20130611","aaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbz","1","2","3","4444","20150101","20160101","1","1","1","1","1","1","1","1","1","1","1","1","1","1","123","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","20120401","20130331","12345.6","20120401","20130331","12345.6","20120401","20130331","123467","123467","123467","123467","123467","123467","123467","123467","20200202","20200202","123467","20200202","20200202","123467","20200202","20200202","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","20120401","20130331" +"132","00","9900146",,"A","2","20141113","20141114","20140624",,"1",,,,,,"1","1",,,,,,,,,,,,,,"18.8",,,,,,,,"20130401","20140331","49.8","20130401","20140331",,,,,,,,,,,,,,,,,,,,"39.3",,,,,,,,"20130401","20140331" +"132","00","9900194",,"A","2","20141113","20141114","20121101",http://www.hospital.misawa.aomori.jp/,"1",1,1,0,20100401,20110331,"1","1",1,1,1,1,1,1,1,1,1,1,1,1,3,"205.4",,,,,,,,"20100401","20110331","468.1","20100401","20110331",8.3,20100401,20110331,,,,,,,,,,,,,,,,,"18.7",,,,,,0.0,,"20100401","20110331" +"132","00","9901649",,"A","2","20141113","20141114",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, +"132","00","9901679",,"A","2","20141113","20141114","20140627",http://www.kai-sei-kai.com/,"1",,,,,,"1","1",1,1,1,,1,,,,,1,,1,2,"58.5",229.2,102.3,131.3,,,,,"20130401","20140331","96.0","20130401","20140331",,,,,,,,,,,,,,,,,,,,"20.4",641.3,533.2,749.2,,,,,"20130401","20140331" +"132","00","9929798",,"A","2","20141113","20141114","20130611",http://www.urakawa.jrc.or.jp/,"1",,,,,,"1","1",1,1,1,,1,,,,,,,1,1,"114.6",46.6,,,39.9,0.0,0.0,,"20120401","20130331","481.6","20120401","20130331",16.2,20120401,20130331,,,,,,,,,,,,,,,,,"15.6",555.3,,,169.4,0.0,0.0,,"20120401","20130331" +"132","99","9999999",88,"A","2","20141113","20141114","@",@,"@",@,@,@,@,@,"@","@",@,@,@,@,@,@,@,@,@,@,@,@,@,"@",@,@,@,@,@,@,@,"@","@","@","@","@",@,@,@,@,@,@,@,@,@,@,@,@,@,@,@,@,@,@,@,"@",@,@,@,@,@,@,@,"@","@" +"132","99","9999999",89,"A","2","20141113","20141114","@",@,"@",@,@,4444,20100401,20110331,"@","@",@,@,@,@,@,@,1,1,1,@,@,@,12345,"@",146.6,114.5,39.2,679.4,753.1,951.3,0.0,"20120401","20130331","@","20220430","20220517",@,20230623,20230707,@,147258,369147,258369,987654,321789,753159,842862,20200202,20200220,@,20220222,20230330,@,20060606,20070707,"@",159.3,25.6,154.1,35.1,397.8,65.7,62.5,"19980430","19990501" +"132","99","9999999",99,"A","2","20141113","20141114","20130611",aaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbz,"1",2,3,4444,20150101,20160101,"1","1",1,1,1,1,1,1,1,1,1,1,1,1,123,"12345.6",12345.6,12345.6,12345.6,12345.6,12345.6,12345.6,12345.6,"20120401","20130331","12345.6","20120401","20130331",12345.6,20120401,20130331,123467,123467,123467,123467,123467,123467,123467,123467,20200202,20200202,123467,20200202,20200202,123467,20200202,20200202,"12345.6",12345.6,12345.6,12345.6,12345.6,12345.6,12345.6,12345.6,"20120401","20130331" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/expect_com_prefc_med_base_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/expect_com_prefc_med_base_insert.csv index 306d8b30..f9da8a45 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/expect_com_prefc_med_base_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_base/expect_com_prefc_med_base_insert.csv @@ -1,7 +1,9 @@ "dcf_dsf_inst_cd","info_date","home_page","hppre_flg","expre_flg","trial_flg","trial_contcount","trialwhet_from","trialwhet_to","equipment_flg","cos_disease_flg","cos_surgery","specialclinic_flg","establishment_flg","critical_flg","cop_system","sys_exists_flg","sys_inspection","sys_prescription","sys_reserv","icduse_flg","echart_flg","fulltime_flg","fulltime_count","ge_patient_avg","mt_patient_avg","mc_patient_avg","ca_patient_avg","pys_patient_avg","tub_patient_avg","inf_patient_avg","patient_avg_sum","patient_avg_from","patient_avg_to","cl_patient_avg","cl_patient_avg_from","cl_patient_avg_to","hm_patient_avg","hm_patient_avg_from","hm_patient_avg_to","ge_patient_ex","mt_patient_ex","mc_patient_ex","ca_patient_ex","pys_patient_ex","tub_patient_ex","inf_patient_ex","patient_ex_sum","patient_ex_from","patient_ex_to","cl_patient_ex","cl_patient_ex_from","cl_patient_ex_to","hm_patient_ex","hm_patient_ex_from","hm_patient_ex_to","ge_stay_avg","mt_stay_avg","mc_stay_avg","ca_stay_avg","pys_stay_avg","tub_stay_avg","inf_stay_avg","stay_avg_sum","stay_avg_from","stay_avg_to","regist_ymd","update_ymd","regist_date","create_user","update_date","update_user","sys_regist_date","regist_prgm_id","sys_update_date","update_prgm_id" -"009900146","20140624","","1","","","","","","1","1","","","","","","","","","","","","","","18.8","","","","","","","","20130401","20140331","49.8","20130401","20140331","","","","","","","","","","","","","","","","","","","","39.3","","","","","","","","20130401","20140331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" -"009900194","20121101","http://www.hospital.misawa.aomori.jp/","1","1","1","0","20100401","20110331","1","1","1","1","1","1","1","1","1","1","1","1","1","1","3","205.4","","","","","","","","20100401","20110331","468.1","20100401","20110331","8.3","20100401","20110331","","","","","","","","","","","","","","","","","18.7","","","","","","0.0","","20100401","20110331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" -"009901649","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" -"009901679","20140627","http://www.kai-sei-kai.com/","1","","","","","","1","1","1","1","1","","1","","","","","1","","1","2","58.5","229.2","102.3","131.3","","","","","20130401","20140331","96.0","20130401","20140331","","","","","","","","","","","","","","","","","","","","20.4","641.3","533.2","749.2","","","","","20130401","20140331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" -"009929798","20130611","http://www.urakawa.jrc.or.jp/","1","","","","","","1","1","1","1","1","","1","","","","","","","1","1","114.6","46.6","","","39.9","0.0","0.0","","20120401","20130331","481.6","20120401","20130331","16.2","20120401","20130331","","","","","","","","","","","","","","","","","15.6","555.3","","","169.4","0.0","0.0","","20120401","20130331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"009900146","20140624",,"1",,,,,,"1","1",,,,,,,,,,,,,,"18.8",,,,,,,,"20130401","20140331","49.8","20130401","20140331",,,,,,,,,,,,,,,,,,,,"39.3",,,,,,,,"20130401","20140331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"009900194","20121101","http://www.hospital.misawa.aomori.jp/","1","1","1","0","20100401","20110331","1","1","1","1","1","1","1","1","1","1","1","1","1","1","3","205.4",,,,,,,,"20100401","20110331","468.1","20100401","20110331","8.3","20100401","20110331",,,,,,,,,,,,,,,,,"18.7",,,,,,"0.0",,"20100401","20110331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"009901649",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"009901679","20140627","http://www.kai-sei-kai.com/","1",,,,,,"1","1","1","1","1",,"1",,,,,"1",,"1","2","58.5","229.2","102.3","131.3",,,,,"20130401","20140331","96.0","20130401","20140331",,,,,,,,,,,,,,,,,,,,"20.4","641.3","533.2","749.2",,,,,"20130401","20140331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"009929798","20130611","http://www.urakawa.jrc.or.jp/","1",,,,,,"1","1","1","1","1",,"1",,,,,,,"1","1","114.6","46.6",,,"39.9","0.0","0.0",,"20120401","20130331","481.6","20120401","20130331","16.2","20120401","20130331",,,,,,,,,,,,,,,,,"15.6","555.3",,,"169.4","0.0","0.0",,"20120401","20130331","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" +"99999999988","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","20130331","NULL","NULL","NULL","NULL","NULL","2000/05/09 20:39:15","com_prefc_med_base_mapper","2000/05/09 20:39:15","com_prefc_med_base_mapper" +"99999999989","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","NULL","20130331","NULL","NULL","NULL","NULL","NULL","2000/05/09 20:39:15","com_prefc_med_base_mapper","2000/05/09 20:39:15","com_prefc_med_base_mapper" "99999999999","20130611","aaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbbaaaaaaaaaabbbbbbbbbz","1","2","3","4444","20150101","20160101","1","1","1","1","1","1","1","1","1","1","1","1","1","1","123","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","20120401","20130331","12345.6","20120401","20130331","12345.6","20120401","20130331","123467","123467","123467","123467","123467","123467","123467","123467","20200202","20200202","123467","20200202","20200202","123467","20200202","20200202","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","12345.6","20120401","20130331","20130331","NULL","NULL","NULL","NULL","NULL","2023/05/09 20:39:15","com_prefc_med_base_mapper","2023/05/09 20:39:15","com_prefc_med_base_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/com_prefc_med_dis_treat_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/com_prefc_med_dis_treat_insert.csv index 037c46c2..8091022c 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/com_prefc_med_dis_treat_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/com_prefc_med_dis_treat_insert.csv @@ -6,3 +6,4 @@ "134","00","9929798","","A","0902","2","20141113","20141114","" "134","00","9929798","","A","0915","2","20141113","20141114","" "134","99","9999999","99","A","1234","2","20141113","20141114","123456" +"134","99","9999999","99","A","1235","2","20141113","20141114","@" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/expect_com_prefc_med_dis_treat_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/expect_com_prefc_med_dis_treat_insert.csv index 819aa6dc..4e56268a 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/expect_com_prefc_med_dis_treat_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_dis_treat/expect_com_prefc_med_dis_treat_insert.csv @@ -8,3 +8,4 @@ "009929798","0915","NULL","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper" "009929798","0915","NULL","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper" "99999999999","1234","123456","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper" +"99999999999","1235","NULL","20230510","NULL","NULL","NULL","NULL","NULL","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper","2023/05/10 20:57:12","com_prefc_med_dis_treat_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_equpment/com_prefc_med_equpment_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_equpment/com_prefc_med_equpment_insert.csv index b5882b97..83362ab7 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_equpment/com_prefc_med_equpment_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_equpment/com_prefc_med_equpment_insert.csv @@ -3,4 +3,4 @@ "133","00","9901649","","A","009","2","20141113","20141114","3" "133","00","9901679","","A","015","2","20141113","20141114","" "133","00","9904439","","A","006","2","20141113","20141114","" -"133","00","9929798","","A","010","2","20141113","20141114","" +"133","00","9929798","","A","010","2","20141113","20141114","@" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/com_prefc_med_sp_outpat_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/com_prefc_med_sp_outpat_insert.csv index ae233f9b..49cdc733 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/com_prefc_med_sp_outpat_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/com_prefc_med_sp_outpat_insert.csv @@ -1,3 +1,4 @@ +"136","99","9999999","88","A","あいうえお","2","20141113","20141114","123","@" "136","00","9901649","","A","テスト 小児 内分泌・腎臓外来","2","20141113","20141114","5","030" "136","00","9904439","","A","テスト アルコール症専門外来","2","20141113","20141114","1","019" "136","00","9904439","","A","テスト メンタルヘルス専門外来","2","20141113","20141114","7","019" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/expect_com_prefc_med_sp_outpat_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/expect_com_prefc_med_sp_outpat_insert.csv index 26abd18a..86c95e0f 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/expect_com_prefc_med_sp_outpat_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_prefc_med_sp_outpat/expect_com_prefc_med_sp_outpat_insert.csv @@ -1,4 +1,5 @@ "dcf_dsf_inst_cd","specialclinic_name","sort_key","sectsub_cd","regist_ymd","update_ymd","regist_date","create_user","update_date","update_user","sys_regist_date","regist_prgm_id","sys_update_date","update_prgm_id" +"99999999988","あいうえお","123","NULL","20171008","NULL","NULL","NULL","NULL","NULL","2017/10/08 20:57:12","com_prefc_med_sp_outpat_mapper","2017/10/08 20:57:12","com_prefc_med_sp_outpat_mapper" "009901649","テスト 小児 内分泌・腎臓外来","5","030","20230511","NULL","NULL","NULL","NULL","NULL","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper" "009904439","テスト アルコール症専門外来","1","019","20230511","NULL","NULL","NULL","NULL","NULL","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper" "009904439","テスト メンタルヘルス専門外来","7","019","20230511","NULL","NULL","NULL","NULL","NULL","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper","2023/05/11 10:57:12","com_prefc_med_sp_outpat_mapper" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/com_sp_field_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/com_sp_field_insert.csv index b6e91047..b68e46d0 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/com_sp_field_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/com_sp_field_insert.csv @@ -5,3 +5,4 @@ "511","01","999613","00","A","0056","2","20141113","20141114","1","20140706","","","1","20140706" "511","91","999999","99","B","9999","2","","","1","20220628","1","20230425","1","20230425" "511","99","999999","99","A","9999","2","","","1","20220628","1","20230425","1","20230425" +"511","01","999988","99","A","9999","2",,,"@","20220628","@","20230425","@","20230425" diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/expect_com_sp_field_insert.csv b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/expect_com_sp_field_insert.csv index b52c8c90..8b5f1ad2 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/expect_com_sp_field_insert.csv +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/com_sp_field/expect_com_sp_field_insert.csv @@ -6,3 +6,4 @@ "0199961300","0056","2","1","20140706","","","1","20140706","20230425","NULL","NULL","NULL","NULL","NULL","NULL","2023/01/08 17:05:14","com_sp_field_mapper","2023/01/08 17:05:14","com_sp_field_mapper" "9199999999","9999","2","1","20220628","1","20230425","1","20230425","20230425","NULL","NULL","NULL","NULL","NULL","NULL","2023/01/08 17:05:14","com_sp_field_mapper","2023/01/08 17:05:14","com_sp_field_mapper" "9999999999","9999","2","1","20220628","1","20230425","1","20230425","20230425","NULL","NULL","NULL","NULL","NULL","NULL","2023/01/08 17:05:14","com_sp_field_mapper","2023/01/08 17:05:14","com_sp_field_mapper" +"0199998899","9999","2","NULL","NULL","NULL","NULL","NULL","NULL","20230425","NULL","NULL","NULL","NULL","NULL","NULL","2023/01/08 17:05:14","com_sp_field_mapper","2023/01/08 17:05:14","com_sp_field_mapper" diff --git a/ecs/jskult-batch-daily/tests/testing_utility.py b/ecs/jskult-batch-daily/tests/testing_utility.py index 5a6c3a42..a59a647b 100644 --- a/ecs/jskult-batch-daily/tests/testing_utility.py +++ b/ecs/jskult-batch-daily/tests/testing_utility.py @@ -136,6 +136,8 @@ def is_valid_date_format(date_str: str, date_format): Returns: _type_: 正しい日付文字列の場合、True、それ以外はFalse """ + if date_str is None: + return False try: datetime.strptime(date_str, date_format) return True diff --git a/rds_mysql/stored_procedure/internal02/crm_history.sql b/rds_mysql/stored_procedure/internal02/crm_history.sql index 5607741d..156d61f7 100644 --- a/rds_mysql/stored_procedure/internal02/crm_history.sql +++ b/rds_mysql/stored_procedure/internal02/crm_history.sql @@ -52,7 +52,7 @@ BEGIN CREATE TEMPORARY TABLE $$target_table$$_make_history_tmp SELECT Id - , MIN($$target_column$$) AS min_start_datetime + , MIN($$target_column$$) AS min_systemmodstamp , MAX(start_datetime) AS max_start_datetime FROM $$target_table$$ @@ -74,7 +74,7 @@ BEGIN UPDATE $$target_table$$ tt INNER JOIN $$target_table$$_make_history_tmp mht ON tt.Id = mht.Id - AND tt.start_datetime = mht.min_start_datetime + AND tt.$$target_column$$ = mht.min_systemmodstamp SET end_datetime = mht.max_start_datetime - INTERVAL 1 SECOND , upd_user = CURRENT_USER() diff --git a/s3/config/crm/object_info/crm_object_list_diff.json b/s3/config/crm/object_info/crm_object_list_diff.json index 21312650..243b07db 100644 --- a/s3/config/crm/object_info/crm_object_list_diff.json +++ b/s3/config/crm/object_info/crm_object_list_diff.json @@ -678,11 +678,14 @@ "iOS_Resolution_vod__c", "approved_for_distribution_date__c", "approved_for_use_date__c", + "business_function__c", "ewizard_link__c", "expiration_date__c", "keywords__c", "trade_team__c", - "business_function__c" + "MSJ_Start_Date__c", + "MSJ_End_Date__c", + "MSJ_Strategic_Message__c" ], "is_skip": false, "is_update_last_fetch_datetime": true diff --git a/s3/data/crm/settings/CRM_Key_Message_vod__c.txt b/s3/data/crm/settings/CRM_Key_Message_vod__c.txt index 5488da44..d4feb972 100644 --- a/s3/data/crm/settings/CRM_Key_Message_vod__c.txt +++ b/s3/data/crm/settings/CRM_Key_Message_vod__c.txt @@ -4,9 +4,9 @@ utf-8 " CRLF 1 -48 -Id,OwnerId,IsDeleted,Name,RecordTypeId,CreatedDate,CreatedById,LastModifiedDate,LastModifiedById,SystemModstamp,MayEdit,IsLocked,LastViewedDate,LastReferencedDate,Description_vod__c,Product_vod__c,Product_Strategy_vod__c,Display_Order_vod__c,Active_vod__c,Category_vod__c,Vehicle_vod__c,CLM_ID_vod__c,Custom_Reaction_vod__c,Slide_Version_vod__c,Language_vod__c,Media_File_CRC_vod__c,Media_File_Name_vod__c,Media_File_Size_vod__c,Segment_vod__c,Disable_Actions_vod__c,VExternal_Id_vod__c,CDN_Path_vod__c,Status_vod__c,Vault_DNS_vod__c,Vault_Doc_Id_vod__c,Vault_External_Id_vod__c,Vault_GUID_vod__c,Vault_Last_Modified_Date_Time_vod__c,Is_Shared_Resource_vod__c,iOS_Viewer_vod__c,iOS_Resolution_vod__c,approved_for_distribution_date__c,approved_for_use_date__c,ewizard_link__c,expiration_date__c,keywords__c,trade_team__c,business_function__c -Id,OwnerId,IsDeleted,Name,RecordTypeId,CreatedDate,CreatedById,LastModifiedDate,LastModifiedById,SystemModstamp,MayEdit,IsLocked,LastViewedDate,LastReferencedDate,Description_vod__c,Product_vod__c,Product_Strategy_vod__c,Display_Order_vod__c,Active_vod__c,Category_vod__c,Vehicle_vod__c,CLM_ID_vod__c,Custom_Reaction_vod__c,Slide_Version_vod__c,Language_vod__c,Media_File_CRC_vod__c,Media_File_Name_vod__c,Media_File_Size_vod__c,Segment_vod__c,Disable_Actions_vod__c,VExternal_Id_vod__c,CDN_Path_vod__c,Status_vod__c,Vault_DNS_vod__c,Vault_Doc_Id_vod__c,Vault_External_Id_vod__c,Vault_GUID_vod__c,Vault_Last_Modified_Date_Time_vod__c,Is_Shared_Resource_vod__c,iOS_Viewer_vod__c,iOS_Resolution_vod__c,approved_for_distribution_date__c,approved_for_use_date__c,ewizard_link__c,expiration_date__c,keywords__c,trade_team__c,business_function__c +51 +Id,OwnerId,IsDeleted,Name,RecordTypeId,CreatedDate,CreatedById,LastModifiedDate,LastModifiedById,SystemModstamp,MayEdit,IsLocked,LastViewedDate,LastReferencedDate,Description_vod__c,Product_vod__c,Product_Strategy_vod__c,Display_Order_vod__c,Active_vod__c,Category_vod__c,Vehicle_vod__c,CLM_ID_vod__c,Custom_Reaction_vod__c,Slide_Version_vod__c,Language_vod__c,Media_File_CRC_vod__c,Media_File_Name_vod__c,Media_File_Size_vod__c,Segment_vod__c,Disable_Actions_vod__c,VExternal_Id_vod__c,CDN_Path_vod__c,Status_vod__c,Vault_DNS_vod__c,Vault_Doc_Id_vod__c,Vault_External_Id_vod__c,Vault_GUID_vod__c,Vault_Last_Modified_Date_Time_vod__c,Is_Shared_Resource_vod__c,iOS_Viewer_vod__c,iOS_Resolution_vod__c,approved_for_distribution_date__c,approved_for_use_date__c,business_function__c,ewizard_link__c,expiration_date__c,keywords__c,trade_team__c,MSJ_Start_Date__c,MSJ_End_Date__c,MSJ_Strategic_Message__c +Id,OwnerId,IsDeleted,Name,RecordTypeId,CreatedDate,CreatedById,LastModifiedDate,LastModifiedById,SystemModstamp,MayEdit,IsLocked,LastViewedDate,LastReferencedDate,Description_vod__c,Product_vod__c,Product_Strategy_vod__c,Display_Order_vod__c,Active_vod__c,Category_vod__c,Vehicle_vod__c,CLM_ID_vod__c,Custom_Reaction_vod__c,Slide_Version_vod__c,Language_vod__c,Media_File_CRC_vod__c,Media_File_Name_vod__c,Media_File_Size_vod__c,Segment_vod__c,Disable_Actions_vod__c,VExternal_Id_vod__c,CDN_Path_vod__c,Status_vod__c,Vault_DNS_vod__c,Vault_Doc_Id_vod__c,Vault_External_Id_vod__c,Vault_GUID_vod__c,Vault_Last_Modified_Date_Time_vod__c,Is_Shared_Resource_vod__c,iOS_Viewer_vod__c,iOS_Resolution_vod__c,approved_for_distribution_date__c,approved_for_use_date__c,business_function__c,ewizard_link__c,expiration_date__c,keywords__c,trade_team__c,MSJ_Start_Date__c,MSJ_End_Date__c,MSJ_Strategic_Message__c src02.crm_Key_Message_vod__c org02.crm_Key_Message_vod__c