Merge pull request #497 featrue-NEWDWH2021-1876 into develop
This commit is contained in:
commit
db57fd22bc
@ -1,9 +1,6 @@
|
|||||||
import csv
|
|
||||||
import json
|
import json
|
||||||
import os.path as path
|
|
||||||
import tempfile
|
|
||||||
|
|
||||||
from src.aws.s3 import JskSendBucket, JskTransferListBucket
|
from src.aws.s3 import JskTransferListBucket
|
||||||
from src.batch.environment.mst_inst_all_environment import \
|
from src.batch.environment.mst_inst_all_environment import \
|
||||||
MstInstAllEnvironment
|
MstInstAllEnvironment
|
||||||
from src.batch.jskult_batch_entrypoint import JskultBatchEntrypoint
|
from src.batch.jskult_batch_entrypoint import JskultBatchEntrypoint
|
||||||
@ -15,7 +12,6 @@ from src.logging.get_logger import get_logger
|
|||||||
from src.manager.jskult_batch_run_manager import JskultBatchRunManager
|
from src.manager.jskult_batch_run_manager import JskultBatchRunManager
|
||||||
from src.manager.jskult_batch_status_manager import JskultBatchStatusManager
|
from src.manager.jskult_batch_status_manager import JskultBatchStatusManager
|
||||||
from src.manager.jskult_hdke_tbl_manager import JskultHdkeTblManager
|
from src.manager.jskult_hdke_tbl_manager import JskultHdkeTblManager
|
||||||
from src.system_var import environment
|
|
||||||
from src.system_var import constants
|
from src.system_var import constants
|
||||||
|
|
||||||
logger = get_logger('メルク施設マスタ作成')
|
logger = get_logger('メルク施設マスタ作成')
|
||||||
@ -58,6 +54,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
logger.exception(f'転送ファイル一覧の取得に失敗しました。 {e}')
|
logger.exception(f'転送ファイル一覧の取得に失敗しました。 {e}')
|
||||||
# バッチ実行管理テーブルをfailedで登録
|
# バッチ実行管理テーブルをfailedで登録
|
||||||
jskult_batch_run_manager.batch_failed()
|
jskult_batch_run_manager.batch_failed()
|
||||||
|
return
|
||||||
|
|
||||||
with open(transfer_list_file_path) as f:
|
with open(transfer_list_file_path) as f:
|
||||||
transfer_list = json.load(f)
|
transfer_list = json.load(f)
|
||||||
@ -67,10 +64,9 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
transfer_list['jsk_transfer_list']) + len(transfer_list['ult_transfer_list'])
|
transfer_list['jsk_transfer_list']) + len(transfer_list['ult_transfer_list'])
|
||||||
|
|
||||||
jskult_batch_status_manager = JskultBatchStatusManager(
|
jskult_batch_status_manager = JskultBatchStatusManager(
|
||||||
environment.PROCESS_NAME,
|
self.environment.PROCESS_NAME,
|
||||||
# TODO チケットNEWDWH2021-1847の実装で作成した定数に置き換え
|
constants.PROCESS_TYPE_POST_PROCESS,
|
||||||
'post_process',
|
self.environment.MAX_RUN_COUNT,
|
||||||
environment.MAX_RUN_COUNT,
|
|
||||||
receive_file_count
|
receive_file_count
|
||||||
)
|
)
|
||||||
try:
|
try:
|
||||||
@ -86,6 +82,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
|
|
||||||
# バッチ実行管理テーブルに「retry」で登録
|
# バッチ実行管理テーブルに「retry」で登録
|
||||||
jskult_batch_run_manager.batch_retry()
|
jskult_batch_run_manager.batch_retry()
|
||||||
|
logger.info('起動条件を満たしていないため、メルク施設マスタ作成処理を終了します')
|
||||||
|
|
||||||
return
|
return
|
||||||
except MaxRunCountReachedException:
|
except MaxRunCountReachedException:
|
||||||
@ -130,17 +127,6 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
return
|
return
|
||||||
|
|
||||||
def _insert_mst_inst_all_from_com_inst(self, db: Database):
|
def _insert_mst_inst_all_from_com_inst(self, db: Database):
|
||||||
# オプティマイザのderived_mergeフラグをoffにする
|
|
||||||
try:
|
|
||||||
sql = """
|
|
||||||
SET SESSION optimizer_switch = 'derived_merge=off'
|
|
||||||
"""
|
|
||||||
db.execute(sql)
|
|
||||||
logger.info("オプティマイザのderived_mergeフラグ = Off")
|
|
||||||
except Exception as e:
|
|
||||||
logger.info("オプティマイザのderived_mergeフラグの値変更に失敗")
|
|
||||||
raise e
|
|
||||||
|
|
||||||
# com_instから、mst_inst_allへInsert
|
# com_instから、mst_inst_allへInsert
|
||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
@ -188,10 +174,10 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
ci.inst_div_cd,
|
ci.inst_div_cd,
|
||||||
LEFT(cid.inst_div_name, 40),
|
LEFT(cid.inst_div_name, 40),
|
||||||
null,
|
null,
|
||||||
ci.create_user,
|
ci.regist_prgm_id,
|
||||||
ci.regist_date,
|
ci.sys_regist_date,
|
||||||
ci.update_user,
|
ci.update_prgm_id,
|
||||||
ci.update_date
|
ci.sys_update_date
|
||||||
FROM
|
FROM
|
||||||
src05.com_inst AS ci
|
src05.com_inst AS ci
|
||||||
LEFT OUTER JOIN src05.mst_prefc AS mp
|
LEFT OUTER JOIN src05.mst_prefc AS mp
|
||||||
@ -204,7 +190,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
LEFT OUTER JOIN src05.com_inst_div AS cid
|
LEFT OUTER JOIN src05.com_inst_div AS cid
|
||||||
ON ci.inst_div_cd = cid.inst_div_cd
|
ON ci.inst_div_cd = cid.inst_div_cd
|
||||||
"""
|
"""
|
||||||
res = db.execute(sql)
|
db.execute(sql)
|
||||||
logger.info("COM_施設からメルク施設マスタに登録成功")
|
logger.info("COM_施設からメルク施設マスタに登録成功")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.info("COM_施設からメルク施設マスタに登録失敗")
|
logger.info("COM_施設からメルク施設マスタに登録失敗")
|
||||||
@ -260,10 +246,10 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
cp.inst_div_cd,
|
cp.inst_div_cd,
|
||||||
LEFT(cid.inst_div_name, 40),
|
LEFT(cid.inst_div_name, 40),
|
||||||
null,
|
null,
|
||||||
cp.create_user,
|
cp.regist_prgm_id,
|
||||||
cp.regist_date,
|
cp.sys_regist_date,
|
||||||
cp.update_user,
|
cp.update_prgm_id,
|
||||||
cp.update_date
|
cp.sys_update_date
|
||||||
FROM
|
FROM
|
||||||
src05.com_pharm AS cp
|
src05.com_pharm AS cp
|
||||||
LEFT OUTER JOIN src05.mst_prefc AS mp
|
LEFT OUTER JOIN src05.mst_prefc AS mp
|
||||||
@ -276,7 +262,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
LEFT OUTER JOIN src05.com_inst_div AS cid
|
LEFT OUTER JOIN src05.com_inst_div AS cid
|
||||||
ON cp.inst_div_cd = cid.inst_div_cd
|
ON cp.inst_div_cd = cid.inst_div_cd
|
||||||
"""
|
"""
|
||||||
res = db.execute(sql)
|
db.execute(sql)
|
||||||
logger.info("COM_薬局からメルク施設マスタに登録成功")
|
logger.info("COM_薬局からメルク施設マスタに登録成功")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.info("COM_薬局からメルク施設マスタに登録失敗")
|
logger.info("COM_薬局からメルク施設マスタに登録失敗")
|
||||||
@ -284,7 +270,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
def _insert_mst_inst_all_from_mst_inst_merck(self, db:Database):
|
def _insert_mst_inst_all_from_mst_inst_merck(self, db: Database):
|
||||||
# mst_inst_merckから、mst_inst_allへInsert
|
# mst_inst_merckから、mst_inst_allへInsert
|
||||||
try:
|
try:
|
||||||
sql = """
|
sql = """
|
||||||
@ -325,7 +311,7 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
mim.jis_city_cd,
|
mim.jis_city_cd,
|
||||||
mjp.jis_pref_nm_kj,
|
mjp.jis_pref_nm_kj,
|
||||||
LEFT(mjc.jis_city_nm_kj, 40),
|
LEFT(mjc.jis_city_nm_kj, 40),
|
||||||
CONCAT(mim.addr1_nm_kj, mim.addr2_nm_kj),
|
CONCAT_WS('', mim.addr1_nm_kj, mim.addr2_nm_kj),
|
||||||
mim.postal_no,
|
mim.postal_no,
|
||||||
mim.tel_no,
|
mim.tel_no,
|
||||||
null,
|
null,
|
||||||
@ -333,15 +319,15 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
null,
|
null,
|
||||||
CASE mim.eff_end_ym
|
CASE mim.eff_end_ym
|
||||||
WHEN '999912' THEN null
|
WHEN '999912' THEN null
|
||||||
ELSE CONCAT(mim.eff_end_ym, DATE_FORMAT(LAST_DAY(STR_TO_DATE(mim.eff_end_ym, '%Y%m')), '%d'))
|
ELSE CONCAT(LAST_DAY(STR_TO_DATE(CONCAT(mim.eff_end_ym, '01'), '%Y%m%d')))
|
||||||
END,
|
END,
|
||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
mim.ins_user,
|
mim.create_id,
|
||||||
mim.ins_date,
|
mim.create_dtt,
|
||||||
mim.upd_user,
|
mim.last_upd_id,
|
||||||
mim.upd_date
|
mim.last_upd_dtt
|
||||||
FROM
|
FROM
|
||||||
src07.mst_inst_merck AS mim
|
src07.mst_inst_merck AS mim
|
||||||
INNER JOIN (
|
INNER JOIN (
|
||||||
@ -349,19 +335,19 @@ class MstInstAll(JskultBatchEntrypoint):
|
|||||||
FROM src07.mst_inst_merck AS mim
|
FROM src07.mst_inst_merck AS mim
|
||||||
GROUP BY mim.inst_cd
|
GROUP BY mim.inst_cd
|
||||||
) AS mim_max_end_ym
|
) AS mim_max_end_ym
|
||||||
ON mim.inst_cd = mim_max_end_ym.inst_cd
|
ON mim.inst_cd = mim_max_end_ym.inst_cd
|
||||||
AND mim.eff_end_ym = mim_max_end_ym.max_end_ym
|
AND mim.eff_end_ym = mim_max_end_ym.max_end_ym
|
||||||
LEFT OUTER JOIN src07.mst_jis_pref AS mjp
|
LEFT OUTER JOIN src07.mst_jis_pref AS mjp
|
||||||
ON mim.jis_pref_cd = mjp.jis_pref_cd
|
ON mim.jis_pref_cd = mjp.jis_pref_cd
|
||||||
LEFT OUTER JOIN src07.mst_jis_city AS mjc
|
LEFT OUTER JOIN src07.mst_jis_city AS mjc
|
||||||
ON mim.jis_pref_cd = mjc.jis_pref_cd
|
ON mim.jis_pref_cd = mjc.jis_pref_cd
|
||||||
AND mim.jis_city_cd = mjc.jis_city_cd;
|
AND mim.jis_city_cd = mjc.jis_city_cd;
|
||||||
|
|
||||||
"""
|
"""
|
||||||
res = db.execute(sql)
|
db.execute(sql)
|
||||||
logger.info("メルク独自施設マスタからメルク施設マスタに登録成功")
|
logger.info("メルク独自施設マスタからメルク施設マスタに登録成功")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.info("メルク独自施設マスタからメルク施設マスタに登録失敗")
|
logger.info("メルク独自施設マスタからメルク施設マスタに登録失敗")
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
# task environment file.
|
# task environment file.
|
||||||
LOG_LEVEL=INFO
|
LOG_LEVEL=INFO
|
||||||
ENTRYPOINT_MODULE_NAME=jskult-batch-mst-inst-all
|
PROCESS_NAME=jskult-batch-mst-inst-all
|
||||||
TRANSFER_RESULT_FOLDER=transfer_result
|
TRANSFER_RESULT_FOLDER=transfer_result
|
||||||
TRANSFER_RESULT_FILE_NAME=transfer_result.json
|
TRANSFER_RESULT_FILE_NAME=transfer_result.json
|
||||||
DB_CONNECTION_MAX_RETRY_ATTEMPT=4
|
DB_CONNECTION_MAX_RETRY_ATTEMPT=4
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user