施設情報セット途中コミット
This commit is contained in:
parent
1b4cff1509
commit
e45bb1371b
@ -173,16 +173,8 @@ class TrnResultDataBioLot(JskultBatchEntrypoint):
|
||||
END AS cnvs_lot_sales_qty,
|
||||
bio.cnvs_inst_cd AS cnvs_inst_cd,
|
||||
bio.cls_inst_nm AS cls_inst_nm,
|
||||
CASE LEFT(bio.cnvs_inst_cd, 2)
|
||||
WHEN '00' THEN src05.com_inst.inst_addr
|
||||
WHEN '03' THEN src05.com_pharm.inst_addr
|
||||
ELSE src07.mst_inst_merck.addr2_nm_kj
|
||||
END AS inst_addr,
|
||||
CASE LEFT(bio.cnvs_inst_cd, 2)
|
||||
WHEN '00' THEN src05.com_inst.inst_phone_number
|
||||
WHEN '03' THEN src05.com_pharm.inst_phone_number
|
||||
ELSE src07.mst_inst_merck.tel_no
|
||||
END AS inst_tel AS inst_tel,
|
||||
NULL AS inst_addr,
|
||||
NULL AS inst_tel,
|
||||
bio.result_cd AS result_cd,
|
||||
bio.src_cd AS src_cd,
|
||||
-- 判定結果CDより値を設定する
|
||||
@ -206,20 +198,6 @@ class TrnResultDataBioLot(JskultBatchEntrypoint):
|
||||
src07.trn_result_data_bio bio
|
||||
-- 生物由来変換マスタ
|
||||
CROSS JOIN src07.bio_conv conv
|
||||
LEFT OUTER JOIN src07.customer_lotno_all cla
|
||||
ON bio.cnvs_prod_cd = cla.material_cd
|
||||
AND bio.cnvs_lot_no_1 = cla.lot_no_txt
|
||||
AND bio.cnvs_lot_no_2 = cla.lot_no_txt
|
||||
AND bio.cnvs_lot_no_3 = cla.lot_no_txt
|
||||
-- COM_施設
|
||||
LEFT OUTER JOIN src05.com_inst ci
|
||||
ON bio.cnvs_inst_cd = ci.dcf_dsf_inst_cd
|
||||
-- COM_薬局
|
||||
LEFT OUTER JOIN src05.com_pharm cp
|
||||
ON bio.cnvs_inst_cd = cp.dcf_dsf_inst_cd
|
||||
-- 独自施設マスタ
|
||||
LEFT OUTER JOIN src05.mst_inst_merck mim
|
||||
ON bio.cnvs_inst_cd = mim.inst_cd
|
||||
WHERE
|
||||
IFNULL(DATE(bio.upd_date), DATE(bio.ins_date)) >= src07.get_syor_date()
|
||||
"""
|
||||
@ -247,72 +225,59 @@ class TrnResultDataBioLot(JskultBatchEntrypoint):
|
||||
logger.info('生物由来ロット分解データの製造番号が空のレコードを削除に成功')
|
||||
|
||||
|
||||
def _set_inst_info_from_mdb_or_mst_inst(self, db: Database):
|
||||
logger.info('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセット開始')
|
||||
def _set_inst_info_from_com_inst_or_com_pharm_or_mst_inst_merck(self, db: Database):
|
||||
logger.info('COM_施設 or COM_薬局 or メルク独自施設マスタから施設情報を生物由来ロット分解データにセット開始')
|
||||
try:
|
||||
sql = """
|
||||
UPDATE
|
||||
src07.bio_sales_lot bio
|
||||
LEFT OUTER JOIN internal05.view_mdb_cnv_mst mdb
|
||||
ON bio.v_inst_cd = mdb.hco_vid_v
|
||||
LEFT OUTER JOIN src05.mst_inst inst
|
||||
ON bio.v_inst_cd = inst.inst_cd
|
||||
src07.trn_result_data_bio_lot lot
|
||||
SET
|
||||
-- 施設コード
|
||||
bio.inst_cd = (
|
||||
CASE
|
||||
WHEN mdb.mdb_cd IS NOT NULL THEN mdb.mdb_cd
|
||||
ELSE bio.v_inst_cd
|
||||
END
|
||||
),
|
||||
-- 正式施設名(漢字)
|
||||
bio.inst_name_form = (
|
||||
CASE
|
||||
WHEN mdb.mdb_cd IS NOT NULL THEN mdb.inst_name_form
|
||||
ELSE inst.inst_name_form
|
||||
END
|
||||
),
|
||||
-- 施設住所
|
||||
bio.address = (
|
||||
CASE
|
||||
WHEN mdb.mdb_cd IS NOT NULL THEN mdb.address
|
||||
ELSE inst.address
|
||||
END
|
||||
inst_addr = (
|
||||
SELECT
|
||||
CASE LEFT(bio.cnvs_inst_cd, 2)
|
||||
WHEN '00' THEN ci.inst_addr
|
||||
WHEN '03' THEN cp.inst_addr
|
||||
ELSE mim.addr2_nm_kj
|
||||
END AS inst_addr
|
||||
FROM src07.trn_result_data_bio bio
|
||||
-- COM_施設
|
||||
LEFT OUTER JOIN src05.com_inst ci
|
||||
ON bio.cnvs_inst_cd = ci.dcf_dsf_inst_cd
|
||||
-- COM_薬局
|
||||
LEFT OUTER JOIN src05.com_pharm cp
|
||||
ON bio.cnvs_inst_cd = cp.dcf_dsf_inst_cd
|
||||
-- 独自施設マスタ
|
||||
LEFT OUTER JOIN src07.mst_inst_merck mim
|
||||
ON bio.cnvs_inst_cd = mim.inst_cd
|
||||
|
||||
|
||||
),
|
||||
-- 施設電話番号
|
||||
bio.tel_num = (
|
||||
CASE
|
||||
WHEN mdb.mdb_cd IS NOT NULL THEN mdb.tel_num
|
||||
ELSE inst.tel_num
|
||||
END
|
||||
inst_tel = (
|
||||
SELECT
|
||||
CASE LEFT(bio.cnvs_inst_cd, 2)
|
||||
WHEN '00' THEN ci.inst_phone_number
|
||||
WHEN '03' THEN cm.inst_phone_number
|
||||
ELSE mim.tel_no
|
||||
END AS inst_tel
|
||||
FROM src07.trn_result_data_bio bio
|
||||
-- COM_施設
|
||||
LEFT OUTER JOIN src05.com_inst ci
|
||||
ON bio.cnvs_inst_cd = ci.dcf_dsf_inst_cd
|
||||
-- COM_薬局
|
||||
LEFT OUTER JOIN src05.com_pharm cp
|
||||
ON bio.cnvs_inst_cd = cp.dcf_dsf_inst_cd
|
||||
-- 独自施設マスタ
|
||||
LEFT OUTER JOIN src07.mst_inst_merck mim
|
||||
ON bio.cnvs_inst_cd = mim.inst_cd
|
||||
)
|
||||
"""
|
||||
res = db.execute(sql)
|
||||
except Exception as e:
|
||||
logger.info('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに失敗')
|
||||
logger.info('COM_施設 or COM_薬局 or メルク独自施設マスタから施設情報を生物由来ロット分解データにセット開始')
|
||||
raise e
|
||||
logger.info('MDB変換マスタビュー(生物由来ロット分解処理用)、メルク施設マスタから施設情報を生物由来ロット分解データにセットに成功')
|
||||
|
||||
|
||||
def _set_prd_info_from_v_prd_mst(self, db: Database):
|
||||
logger.info('V製品マスタから製品情報を生物由来ロット分解データにセット開始')
|
||||
try:
|
||||
sql = """
|
||||
UPDATE
|
||||
src07.bio_sales_lot bio
|
||||
LEFT OUTER JOIN src05.phm_prd_mst_v prd
|
||||
ON bio.comm_cd = prd.prd_cd
|
||||
AND STR_TO_DATE(bio.rev_hsdnymd_srk,'%Y%m%d') BETWEEN prd.start_date AND prd.end_date
|
||||
AND prd.rec_sts_kbn <> '9'
|
||||
SET
|
||||
bio.mkr_inf_1 = prd.mkr_inf_1,
|
||||
bio.mkr_cd = prd.mkr_cd
|
||||
"""
|
||||
res = db.execute(sql)
|
||||
except Exception as e:
|
||||
logger.info('V製品マスタから製品情報を生物由来ロット分解データにセットに失敗')
|
||||
raise e
|
||||
logger.info('V製品マスタから製品情報を生物由来ロット分解データにセットに成功')
|
||||
logger.info('COM_施設 or COM_薬局 or メルク独自施設マスタから施設情報を生物由来ロット分解データにセット開始')
|
||||
|
||||
|
||||
def _set_expr_dt_from_lot_num_mst(self, db: Database):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user