"com_prefc_med_sp_outpat_mapperの修正"
This commit is contained in:
parent
edbb9a46d2
commit
2d8d5c27c8
@ -1,6 +1,9 @@
|
|||||||
from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import \
|
from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import (
|
||||||
UltmarcTableMapper
|
UltmarcTableMapper,
|
||||||
from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_sp_outpat import ComPrefcMedSpOutpat
|
)
|
||||||
|
from src.batch.ultmarc.utmp_tables.tables.com_prefc_med_sp_outpat import (
|
||||||
|
ComPrefcMedSpOutpat,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class ComPrefcMedSpOutpatMapper(UltmarcTableMapper):
|
class ComPrefcMedSpOutpatMapper(UltmarcTableMapper):
|
||||||
@ -73,15 +76,18 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper):
|
|||||||
|
|
||||||
def __init__(self, record: list[str], db) -> None:
|
def __init__(self, record: list[str], db) -> None:
|
||||||
super().__init__(record, db, ComPrefcMedSpOutpat)
|
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):
|
def make_query(self):
|
||||||
# 『修正区分がB(修正)かつ追加削除区分が1(退職)』の場合、物理削除
|
# 『修正区分が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)
|
self.queries.append(self.PHYSICAL_DELETE_QUERY)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -90,10 +96,16 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper):
|
|||||||
return
|
return
|
||||||
|
|
||||||
def __make_upsert_query(self):
|
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
|
# 存在しない場合はInsert
|
||||||
if record_count[0]['count_num'] == 0:
|
if record_count[0]["count_num"] == 0:
|
||||||
return self.INSERT_QUERY
|
return self.INSERT_QUERY
|
||||||
|
|
||||||
# 存在する場合ではUpdate
|
# 存在する場合ではUpdate
|
||||||
@ -104,22 +116,20 @@ class ComPrefcMedSpOutpatMapper(UltmarcTableMapper):
|
|||||||
|
|
||||||
# ソートキー
|
# ソートキー
|
||||||
if len(self.record.sort_key) > 0:
|
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:
|
if len(self.record.sectsub_cd) > 0:
|
||||||
set_clauses.append('sectsub_cd = :sectsub_cd')
|
set_clauses.append("sectsub_cd = :sectsub_cd")
|
||||||
if self.record.sectsub_cd == '@':
|
if self.record.sectsub_cd == "@":
|
||||||
self.query_parameter['sectsub_cd'] = None
|
self.query_parameter["sectsub_cd"] = None
|
||||||
|
|
||||||
update_columns = ','.join(set_clauses)
|
update_columns = ",".join(set_clauses)
|
||||||
# 何も更新項目が無い場合はNoneとする(更新処理は行わない)
|
# 何も更新項目が無い場合はNoneとする(更新処理は行わない)
|
||||||
if len(update_columns) == 0:
|
if len(update_columns) == 0:
|
||||||
return None
|
return None
|
||||||
else:
|
else:
|
||||||
# 末尾にカンマを付けてSET句を完成させる
|
# 末尾にカンマを付けてSET句を完成させる
|
||||||
update_columns += ','
|
update_columns += ","
|
||||||
update_query = self.UPDATE_QUERY.format(
|
update_query = self.UPDATE_QUERY.format(update_columns=update_columns)
|
||||||
update_columns=update_columns
|
|
||||||
)
|
|
||||||
return update_query
|
return update_query
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
"136","99","9999999","88","A","あいうえお","2","20141113","20141114","123","@"
|
||||||
"136","00","9901649","","A","テスト 小児 内分泌・腎臓外来","2","20141113","20141114","5","030"
|
"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","1","019"
|
||||||
"136","00","9904439","","A","テスト メンタルヘルス専門外来","2","20141113","20141114","7","019"
|
"136","00","9904439","","A","テスト メンタルヘルス専門外来","2","20141113","20141114","7","019"
|
||||||
|
|||||||
|
@ -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"
|
"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"
|
"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","テスト アルコール症専門外来","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"
|
"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"
|
||||||
|
|||||||
|
Loading…
x
Reference in New Issue
Block a user