fix: COM_薬局 項目クリアの考慮漏れ コードの修正。テストもパス。

This commit is contained in:
shimoda.m@nds-tyo.co.jp 2023-11-29 16:04:54 +09:00
parent 20adfbb1c8
commit 1eaf2e99bb
2 changed files with 56 additions and 22 deletions

View File

@ -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,76 @@ 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')
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.mgtclass_code == '@':
self.query_parameter['mgtclass_code'] = 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 set_clauses
return

View File

@ -117,4 +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","622","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"
"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"

1 dcf_dsf_inst_cd inst_div_cd addr_unknown_reason_cd form_inst_name_kana inst_name_kana form_inst_name_kanji inst_name_kanji close_flg estab_sche_flg close_start_ym estab_sche_ym inst_repre_kana inst_repre phone_number_non_flg unconf_flg inst_phone_number inst_addr_kana inst_addr postal_number village_cd prefc_cd city_cd addr_display_number addr_cnt_kana addr_cnt manage_cd delete_sche_reason_cd dup_opp_cd supervising_pharmacist supervising_pharmacist_kana franchise_hq_cd inst_pharm_div abolish_ymd delete_flg filler_1 filler_2 filler_3 filler_4 filler_5 regist_date create_user update_date update_user sys_regist_date regist_prgm_id sys_update_date update_prgm_id
117 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
118 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
119 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
120 033673873 66 NULL セイカナ リヤクカナ 正漢字 略漢字 NULL NULL NULL NULL NULL NULL NULL NULL NULL ジユウシヨカナ 住所漢字 001-6234 61626364 61 622 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