From ceaeffa02c99b45c21eeaa1708b20a4663cdaf4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E6=9C=A8=E8=A6=81?= Date: Fri, 21 Apr 2023 13:38:00 +0900 Subject: [PATCH 1/4] =?UTF-8?q?feat:=20=E6=96=BD=E8=A8=AD=E6=8B=85?= =?UTF-8?q?=E5=BD=93=E8=80=85=E3=83=9E=E3=82=B9=E3=82=BF=E6=B4=97=E6=9B=BF?= =?UTF-8?q?(=E4=BB=AE=E8=A3=BD=E9=80=A0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laundering/emp_chg_inst_laundering.py | 79 +++++++------------ 1 file changed, 27 insertions(+), 52 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py index e9d77529..aabf4e10 100644 --- a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py +++ b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py @@ -21,10 +21,10 @@ def exec(): _truncate_emp_chg_inst_lau(db) # emp_chg_inst から、`emp_chg_inst_lau`へInsert _insert_into_emp_chg_inst_lau_from_emp_chg_inst(db) - # vop_hco_merge_vから、emp_chg_inst_lauをUpdate - _update_emp_chg_inst_lau_from_vop_hco_merge_v(db, syor_date) - # dcf_inst_mergeから、emp_chg_inst_lauをUpdate - _update_dcf_inst_merge_from_emp_chg_inst_lau(db, syor_date) + # v_inst_merge_tから、emp_chg_inst_lauをUpdate + _update_emp_chg_inst_lau_from_v_inst_merge_t(db, syor_date) + # v_inst_merge_tから、emp_chg_inst_lauをUpdate + _update_v_inst_merge_t_from_emp_chg_inst_lau(db, syor_date) logger.debug('##########################') logger.debug('End All Processing PGM.') except Exception as e: @@ -81,8 +81,8 @@ def _insert_into_emp_chg_inst_lau_from_emp_chg_inst(db: Database): return -def _update_emp_chg_inst_lau_from_vop_hco_merge_v(db: Database, syor_date: str): - # vop_hco_merge_vはデータが作られないため、この洗い替え処理は基本空振りする +def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database, syor_date: str): + # v_inst_merge_tはデータが作られないため、この洗い替え処理は基本空振りする logger.debug("##########################") try: select_result = db.execute_select( @@ -90,35 +90,29 @@ def _update_emp_chg_inst_lau_from_vop_hco_merge_v(db: Database, syor_date: str): SELECT COUNT(v_inst_cd) AS row_count FROM - src05.vop_hco_merge_v - WHERE - STR_TO_DATE(apply_dt, '%Y-%m-%d') <= :syor_date - """, - {'syor_date': syor_date} + internal05.v_inst_merge_t + """ ) except Exception as e: - logger.debug("Error! `vop_hco_merge_v` Table count error!") + logger.debug("Error! `v_inst_merge_t` Table count error!") raise e count = [row for row in select_result][0]['row_count'] if count == 0: - logger.info('vop_hco_merge_v Table Data is not exists!') + logger.info('v_inst_merge_t Table Data is not exists!') return - logger.info('vop_hco_merge_v Table Data is exists!') - # vop_hco_merge_v から、emp_chg_inst_lauをUpdateします + logger.info('v_inst_merge_t Table Data is exists!') + # v_inst_merge_t から、emp_chg_inst_lauをUpdateします result = db.execute_select( """ SELECT v_inst_cd, v_inst_cd_merg FROM - src05.vop_hco_merge_v - WHERE - STR_TO_DATE(apply_dt, '%Y-%m-%d') <= :syor_date + internal05.v_inst_merge_t ORDER BY STR_TO_DATE(apply_dt, '%Y-%m-%d') ASC - """, - {'syor_date': syor_date} + """ ) for row in result: v_inst_cd = row['v_inst_cd'] @@ -147,9 +141,9 @@ def _update_emp_chg_inst_lau_from_vop_hco_merge_v(db: Database, syor_date: str): return -def _update_dcf_inst_merge_from_emp_chg_inst_lau(db: Database, syor_date: str): - # dcf_inst_mergeから、emp_chg_inst_lauをUpdate - # Get count from DCF_INST_MERGE +def _update_v_inst_merge_t_from_emp_chg_inst_lau(db: Database, syor_date: str): + # inst_merge_tから、emp_chg_inst_lauをUpdate + # Get count from INST_MERGE_T logger.debug("##########################") try: select_result = db.execute_select( @@ -157,26 +151,20 @@ def _update_dcf_inst_merge_from_emp_chg_inst_lau(db: Database, syor_date: str): SELECT COUNT(dcf_inst_cd) AS row_count FROM - src05.dcf_inst_merge - WHERE - muko_flg = '0' - AND dcf_inst_cd_new IS NOT NULL - AND enabled_flg = 'Y' - AND STR_TO_DATE(CONCAT(tekiyo_month, '01'), '%Y%m%d') <= :syor_date - """, - {'syor_date': syor_date} + internal05.inst_merge_t + """ ) except Exception as e: - logger.debug("Error! Getting Count of dcf_inst_merge was failed!") + logger.debug("Error! Getting Count of internal05.inst_merge_t was failed!") raise e count = [row for row in select_result][0]['row_count'] if count == 0: - logger.info('dcf_inst_merge Table Data is not exists!') + logger.info('inst_merge_t Table Data is not exists!') return - logger.debug('dcf_inst_merge Table Data is exists!') - # dcf_inst_mergeから、emp_chg_inst_lauをUpdate + logger.debug('inst_merge_t Table Data is exists!') + # inst_merge_tから、emp_chg_inst_lauをUpdate logger.debug("##########################") logger.debug("#### UPDATE DATA #########") logger.debug("##########################") @@ -184,28 +172,15 @@ def _update_dcf_inst_merge_from_emp_chg_inst_lau(db: Database, syor_date: str): elapsed_time = ElapsedTime() update_sql = """ UPDATE - src05.emp_chg_inst_lau el, - ( - SELECT - dcf_inst_cd, - dcf_inst_cd_new - FROM - src05.dcf_inst_merge - WHERE - muko_flg = '0' - AND dcf_inst_cd_new IS NOT NULL - AND enabled_flg = 'Y' - AND STR_TO_DATE(CONCAT(tekiyo_month, '01'), '%Y%m%d') <= :syor_date - ) dm + src05.emp_chg_inst_lau el, internal05.inst_merge_t imt SET - el.inst_cd = dm.dcf_inst_cd_new, + el.inst_cd = imt.dcf_inst_cd_new, el.lua_ope_dt = SYSDATE() WHERE - el.inst_cd = dm.dcf_inst_cd + el.inst_cd = imt.dcf_inst_cd """ res = db.execute( - update_sql, - {'syor_date': syor_date} + update_sql ) logging_sql(logger, update_sql) logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') From 0142c2658ea8851196db278733ca9b38ab1ff5cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E6=9C=A8=E8=A6=81?= Date: Fri, 21 Apr 2023 15:34:11 +0900 Subject: [PATCH 2/4] =?UTF-8?q?feat:=20=E3=83=AC=E3=83=93=E3=83=A5?= =?UTF-8?q?=E3=83=BC=E6=8C=87=E6=91=98=E5=AF=BE=E5=BF=9C=E3=80=81=E3=82=AB?= =?UTF-8?q?=E3=83=A9=E3=83=A0=E5=90=8D=E5=A4=89=E6=9B=B4=E3=81=AA=E3=81=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laundering/emp_chg_inst_laundering.py | 34 ++++++++----------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py index aabf4e10..dc596f60 100644 --- a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py +++ b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py @@ -15,16 +15,14 @@ def exec(): db.connect() logger.debug('##########################') logger.debug('START Changing Employee in charge of institution PGM.') - # 業務日付を取得 - syor_date = batch_context.syor_date # `emp_chg_inst_lau`をTruncate _truncate_emp_chg_inst_lau(db) # emp_chg_inst から、`emp_chg_inst_lau`へInsert _insert_into_emp_chg_inst_lau_from_emp_chg_inst(db) # v_inst_merge_tから、emp_chg_inst_lauをUpdate - _update_emp_chg_inst_lau_from_v_inst_merge_t(db, syor_date) - # v_inst_merge_tから、emp_chg_inst_lauをUpdate - _update_v_inst_merge_t_from_emp_chg_inst_lau(db, syor_date) + _update_emp_chg_inst_lau_from_v_inst_merge_t(db) + # inst_merge_tから、emp_chg_inst_lauをUpdate + _update_emp_chg_inst_lau_from_inst_merge_t(db) logger.debug('##########################') logger.debug('End All Processing PGM.') except Exception as e: @@ -81,8 +79,8 @@ def _insert_into_emp_chg_inst_lau_from_emp_chg_inst(db: Database): return -def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database, syor_date: str): - # v_inst_merge_tはデータが作られないため、この洗い替え処理は基本空振りする +def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database): + # v_inst_merge_tの元となるvop_hco_merge_vはデータが作られないため、この洗い替え処理は基本空振りする logger.debug("##########################") try: select_result = db.execute_select( @@ -107,30 +105,28 @@ def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database, syor_date: str): """ SELECT v_inst_cd, - v_inst_cd_merg + v_inst_cd_merge FROM internal05.v_inst_merge_t - ORDER BY - STR_TO_DATE(apply_dt, '%Y-%m-%d') ASC """ ) for row in result: v_inst_cd = row['v_inst_cd'] - v_inst_cd_merge = row['v_inst_cd_merg'] + v_inst_cd_merge = row['v_inst_cd_merge'] try: elapsed_time = ElapsedTime() update_sql = """ UPDATE emp_chg_inst_lau SET - inst_cd = :v_inst_merge, + inst_cd = :v_inst_cd_merge, lua_ope_dt = SYSDATE() WHERE inst_cd = :v_inst_cd; """ update_result = db.execute( update_sql, - {'v_inst_cd': v_inst_cd, 'v_inst_cd_merg': v_inst_cd_merge} + {'v_inst_cd': v_inst_cd, 'v_inst_cd_merge': v_inst_cd_merge} ) logging_sql(logger, update_sql) logger.info(f'Query OK, {update_result.rowcount} rows affected ({elapsed_time.of})') @@ -141,7 +137,7 @@ def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database, syor_date: str): return -def _update_v_inst_merge_t_from_emp_chg_inst_lau(db: Database, syor_date: str): +def _update_emp_chg_inst_lau_from_inst_merge_t(db: Database): # inst_merge_tから、emp_chg_inst_lauをUpdate # Get count from INST_MERGE_T logger.debug("##########################") @@ -149,7 +145,7 @@ def _update_v_inst_merge_t_from_emp_chg_inst_lau(db: Database, syor_date: str): select_result = db.execute_select( """ SELECT - COUNT(dcf_inst_cd) AS row_count + COUNT(dcf_dsf_inst_cd) AS row_count FROM internal05.inst_merge_t """ @@ -174,14 +170,12 @@ def _update_v_inst_merge_t_from_emp_chg_inst_lau(db: Database, syor_date: str): UPDATE src05.emp_chg_inst_lau el, internal05.inst_merge_t imt SET - el.inst_cd = imt.dcf_inst_cd_new, + el.inst_cd = imt.dup_opp_cd, el.lua_ope_dt = SYSDATE() WHERE - el.inst_cd = imt.dcf_inst_cd + el.inst_cd = imt.dcf_dsf_inst_cd """ - res = db.execute( - update_sql - ) + res = db.execute(update_sql) logging_sql(logger, update_sql) logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') except Exception as e: From 4fc6639eea45b3f482b0cd0ff2e712e3832e876e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E6=9C=A8=E8=A6=81?= Date: Mon, 24 Apr 2023 15:55:30 +0900 Subject: [PATCH 3/4] =?UTF-8?q?feat:=20=E5=8D=98=E4=BD=93=E8=A9=A6?= =?UTF-8?q?=E9=A8=93=E4=B8=8D=E5=85=B7=E5=90=88=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/laundering/emp_chg_inst_laundering.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py index dc596f60..a9d5f1f3 100644 --- a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py +++ b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py @@ -117,7 +117,7 @@ def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database): elapsed_time = ElapsedTime() update_sql = """ UPDATE - emp_chg_inst_lau + src05.emp_chg_inst_lau SET inst_cd = :v_inst_cd_merge, lua_ope_dt = SYSDATE() @@ -131,10 +131,10 @@ def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database): logging_sql(logger, update_sql) logger.info(f'Query OK, {update_result.rowcount} rows affected ({elapsed_time.of})') except Exception as e: - logger.debug(f"emp_chg_inst_lau v_inst_cd could not set from {v_inst_cd_merge} to {v_inst_cd_merge}!") + logger.debug(f"emp_chg_inst_lau v_inst_cd could not set from {v_inst_cd} to {v_inst_cd_merge}!") raise e logger.debug(f"Success! emp_chg_inst_lau v_inst_cd was set from {v_inst_cd} to {v_inst_cd_merge}!") - return + return def _update_emp_chg_inst_lau_from_inst_merge_t(db: Database): From d34b3bee7581901bb9eb00a3c99c433c77f97a89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E6=9C=A8=E8=A6=81?= Date: Mon, 24 Apr 2023 17:02:39 +0900 Subject: [PATCH 4/4] =?UTF-8?q?feat:=20V=E6=96=BD=E8=A8=AD=E7=B5=B1?= =?UTF-8?q?=E5=90=88=E3=83=9E=E3=82=B9=E3=82=BF=EF=BC=88=E6=B4=97=E6=9B=BF?= =?UTF-8?q?=E5=87=A6=E7=90=86=E4=B8=80=E6=99=82=E3=83=86=E3=83=BC=E3=83=96?= =?UTF-8?q?=E3=83=AB=EF=BC=89=E3=81=8B=E3=82=89=E3=81=AE=E6=B4=97=E6=9B=BF?= =?UTF-8?q?=E5=87=A6=E7=90=86(=E3=83=AD=E3=82=B8=E3=83=83=E3=82=AF)?= =?UTF-8?q?=E3=82=92=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../laundering/emp_chg_inst_laundering.py | 54 ++++++++----------- 1 file changed, 22 insertions(+), 32 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py index a9d5f1f3..f78ece9b 100644 --- a/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py +++ b/ecs/jskult-batch-daily/src/batch/laundering/emp_chg_inst_laundering.py @@ -101,39 +101,29 @@ def _update_emp_chg_inst_lau_from_v_inst_merge_t(db: Database): logger.info('v_inst_merge_t Table Data is exists!') # v_inst_merge_t から、emp_chg_inst_lauをUpdateします - result = db.execute_select( + logger.debug("##########################") + logger.debug("#### UPDATE DATA #########") + logger.debug("##########################") + try: + elapsed_time = ElapsedTime() + update_sql = """ + UPDATE + src05.emp_chg_inst_lau el, internal05.v_inst_merge_t vimt + SET + el.inst_cd = vimt.v_inst_cd_merge, + el.lua_ope_dt = SYSDATE() + WHERE + el.inst_cd = vimt.v_inst_cd """ - SELECT - v_inst_cd, - v_inst_cd_merge - FROM - internal05.v_inst_merge_t - """ - ) - for row in result: - v_inst_cd = row['v_inst_cd'] - v_inst_cd_merge = row['v_inst_cd_merge'] - try: - elapsed_time = ElapsedTime() - update_sql = """ - UPDATE - src05.emp_chg_inst_lau - SET - inst_cd = :v_inst_cd_merge, - lua_ope_dt = SYSDATE() - WHERE - inst_cd = :v_inst_cd; - """ - update_result = db.execute( - update_sql, - {'v_inst_cd': v_inst_cd, 'v_inst_cd_merge': v_inst_cd_merge} - ) - logging_sql(logger, update_sql) - logger.info(f'Query OK, {update_result.rowcount} rows affected ({elapsed_time.of})') - except Exception as e: - logger.debug(f"emp_chg_inst_lau v_inst_cd could not set from {v_inst_cd} to {v_inst_cd_merge}!") - raise e - logger.debug(f"Success! emp_chg_inst_lau v_inst_cd was set from {v_inst_cd} to {v_inst_cd_merge}!") + res = db.execute(update_sql) + logging_sql(logger, update_sql) + logger.info(f'Query OK, {res.rowcount} rows affected ({elapsed_time.of})') + except Exception as e: + logger.debug("emp_chg_inst_lau.v_inst_cd could not set!") + raise e + + logger.debug("emp_chg_inst_lau.v_inst_cd was set!") + return