独自施設マスタからのinsertの実装
This commit is contained in:
parent
a232923909
commit
75d4f85bb2
@ -103,6 +103,8 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
self._insert_mst_inst_all_from_com_inst(db)
|
self._insert_mst_inst_all_from_com_inst(db)
|
||||||
# com_pharmから、mst_inst_allへInsert
|
# com_pharmから、mst_inst_allへInsert
|
||||||
self._insert_mst_inst_all_from_com_pharm(db)
|
self._insert_mst_inst_all_from_com_pharm(db)
|
||||||
|
# mst_inst_merckから、最新レコードをmst_inst_allへInsert
|
||||||
|
self._insert_mst_inst_all_from_mst_inst_merck(db)
|
||||||
logger.info("メルク施設マスタ作成処理終了")
|
logger.info("メルク施設マスタ作成処理終了")
|
||||||
|
|
||||||
jskult_batch_run_manager.batch_success()
|
jskult_batch_run_manager.batch_success()
|
||||||
@ -281,3 +283,85 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
raise e
|
raise e
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def _insert_mst_inst_all_from_mst_inst_merck(self, db:Database):
|
||||||
|
# mst_inst_merckから、mst_inst_allへInsert
|
||||||
|
try:
|
||||||
|
sql = """
|
||||||
|
INSERT INTO
|
||||||
|
src07.mst_inst_all (
|
||||||
|
inst_cd,
|
||||||
|
inst_clas_cd,
|
||||||
|
inst_name_form,
|
||||||
|
inst_name,
|
||||||
|
pref_cd,
|
||||||
|
city_cd,
|
||||||
|
pref_name,
|
||||||
|
city_name,
|
||||||
|
address,
|
||||||
|
postal_cd,
|
||||||
|
tel_num,
|
||||||
|
bed_num,
|
||||||
|
manage_cd,
|
||||||
|
manage_name,
|
||||||
|
delete_date,
|
||||||
|
inst_div_cd,
|
||||||
|
inst_div_name,
|
||||||
|
yobi,
|
||||||
|
creater,
|
||||||
|
create_date,
|
||||||
|
updater,
|
||||||
|
update_date
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
|
mim.inst_cd,
|
||||||
|
CASE LEFT(mim.inst_cd, 2)
|
||||||
|
WHEN '59' THEN '3'
|
||||||
|
ELSE '2'
|
||||||
|
END,
|
||||||
|
mim.inst_nm_kj,
|
||||||
|
mim.inst_nm_kj_s,
|
||||||
|
mim.jis_pref_cd,
|
||||||
|
mim.jis_city_cd,
|
||||||
|
mjp.jis_pref_nm_kj,
|
||||||
|
LEFT(mjc.jis_city_nm_kj, 40),
|
||||||
|
CONCAT(mim.addr1_nm_kj, mim.addr2_nm_kj),
|
||||||
|
mim.postal_no,
|
||||||
|
mim.tel_no,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
CASE mim.eff_end_ym
|
||||||
|
WHEN '999912' THEN null
|
||||||
|
ELSE CONCAT(mim.eff_end_ym, DATE_FORMAT(LAST_DAY(STR_TO_DATE(mim.eff_end_ym, '%Y%m')), '%d'))
|
||||||
|
END,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
mim.ins_user,
|
||||||
|
mim.ins_date,
|
||||||
|
mim.upd_user,
|
||||||
|
mim.upd_date
|
||||||
|
FROM
|
||||||
|
src07.mst_inst_merck AS mim
|
||||||
|
JOIN (
|
||||||
|
SELECT mim.inst_cd, MAX(mim.eff_end_ym) AS max_end_ym
|
||||||
|
FROM src07.mst_inst_merck AS mim
|
||||||
|
GROUP BY mim.inst_cd
|
||||||
|
) AS mim_max_end_ym
|
||||||
|
ON mim.inst_cd = mim_max_end_ym.inst_cd
|
||||||
|
AND mim.eff_end_ym = mim_max_end_ym.max_end_ym
|
||||||
|
LEFT OUTER JOIN src07.mst_jis_pref AS mjp
|
||||||
|
ON mim.jis_pref_cd = mjp.jis_pref_cd
|
||||||
|
LEFT OUTER JOIN src07.mst_jis_city AS mjc
|
||||||
|
ON mim.jis_pref_cd = mjc.jis_pref_cd
|
||||||
|
AND mim.jis_city_cd = mjc.jis_city_cd;
|
||||||
|
|
||||||
|
"""
|
||||||
|
res = db.execute(sql)
|
||||||
|
logger.info("メルク独自施設マスタからメルク施設マスタに登録成功")
|
||||||
|
except Exception as e:
|
||||||
|
logger.info("メルク独自施設マスタからメルク施設マスタに登録失敗")
|
||||||
|
raise e
|
||||||
|
|
||||||
|
return
|
||||||
Loading…
x
Reference in New Issue
Block a user