From 92dcd97021bb584a0ecc4c7822830e349ddc5234 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Sat, 16 Sep 2023 15:40:50 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A3=BD=E9=80=A0=E3=83=AD=E3=83=83?= =?UTF-8?q?=E3=83=88=E7=95=AA=E5=8F=B7=E3=83=9E=E3=82=B9=E3=82=BF=E3=81=AE?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/batch/vjsk/vjsk_recv_file_mapper.py | 14 +++++++------- .../tests/batch/vjsk/vjsk_load/test_vjsk_load.py | 10 +++++----- .../testdata/lot_num_mst_202304280000.tsv | 2 ++ .../testdata/lot_num_mst_202304290000.tsv | 4 ++-- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py b/ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py index 7dcc9ade..75fcfe66 100644 --- a/ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py +++ b/ecs/jskult-batch-daily/src/batch/vjsk/vjsk_recv_file_mapper.py @@ -1469,16 +1469,16 @@ class VjskReceiveFileMapper: ,t.expr_dt ,t.frst_mov_dt ,nullif(t.ins_dt, 0) -- 受領データがブランクだった場合にゼロ日付で取得されるので明示的にNULL値に変換する - ,t.ins_usr + ,medaca_common.convert_empty_to_null(t.ins_usr) ,SYSDATE() FROM org05.lot_num_mst AS t ON DUPLICATE KEY UPDATE - ser_num=t.ser_num - ,lot_num=t.lot_num - ,expr_dt=t.expr_dt - ,frst_mov_dt=t.frst_mov_dt - ,ins_dt=nullif(t.ins_dt, 0) - ,ins_usr=t.ins_usr + ser_num=VALUES(ser_num) + ,lot_num=VALUES(lot_num) + ,expr_dt=VALUES(expr_dt) + ,frst_mov_dt=VALUES(frst_mov_dt) + ,ins_dt=VALUES(ins_dt) + ,ins_usr=VALUES(ins_usr) ,dwh_upd_dt=SYSDATE() ; """) diff --git a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py index 38998356..2e2947c6 100644 --- a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py +++ b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/test_vjsk_load.py @@ -1063,7 +1063,7 @@ class TestImportFileToDb: self.batch_context.is_vjsk_stock_import_day = True self.db.execute(f"truncate table {table_name_src}") - # assertion1 (insert 4row) + # assertion1 (insert 6row) # 処理実行 target_dict = { @@ -1079,7 +1079,7 @@ class TestImportFileToDb: # 突合から除外する項目 ignore_columns = ['dwh_upd_dt'] # orgテーブル結果が期待値通りかを突合 - assert_table_results(result_org, assert_list, ignore_columns) + assert_table_results(result_org, assert_list, ignore_columns, is_loaddata=True) # srcテーブル結果を取得 result_src = self.db.execute_select(f"select * from {table_name_src}") # 突合から除外する項目 @@ -1103,10 +1103,10 @@ class TestImportFileToDb: # 突合から除外する項目 ignore_columns = ['dwh_upd_dt'] # orgテーブル結果が期待値通りかを突合 - assert_table_results(result_org, assert_list, ignore_columns) + assert_table_results(result_org, assert_list, ignore_columns, is_loaddata=True) # srcテーブル結果(orgテーブル結果のPK値で一致するもの)を取得 result_src = self.db.execute_select( - f"select * from {table_name_src} s inner join {table_name_org} o on (s.ser_num = o.ser_num and s.lot_num = o.lot_num)") + f"select s.* from {table_name_src} s inner join {table_name_org} o on (s.ser_num = o.ser_num and s.lot_num = o.lot_num)") # 突合から除外する項目 ignore_columns = ['dwh_upd_dt'] # srcテーブル結果が期待値通りかを突合 @@ -1114,7 +1114,7 @@ class TestImportFileToDb: # srcテーブル結果のレコード件数 (insert 4row + update 2row + insert 2row = 6row) result_src_count = self.db.execute_select(f"select count(*) from {table_name_src} ") - assert result_src_count[0]['count(*)'] == 6 + assert result_src_count[0]['count(*)'] == 8 # teardown diff --git a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv index 3acfb7cc..627d7b66 100644 --- a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv +++ b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304280000.tsv @@ -3,3 +3,5 @@ "F0110601" "BAVA002" "20230331" "20210615" "23-05-08 20:40:41" "batch" "F0110601" "BAVA003" "20231031" "20210719" "23-05-08 20:40:41" "batch" "F0110601" "BAVA004" "20231031" "20210823" "23-05-08 20:40:41" "batch" +"F0110602" "BAVA001" "20231031" "20210823" "23-05-08 20:40:41" "" +"F0110602" "BAVA002" "20231031" "20210823" "23-05-08 20:40:41" "batch" diff --git a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv index c7e86b9a..bdcbd308 100644 --- a/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv +++ b/ecs/jskult-batch-daily/tests/batch/vjsk/vjsk_load/testdata/lot_num_mst_202304290000.tsv @@ -1,5 +1,5 @@ "ser_no" "lot_num" "expr_dt" "frst_mov_dt" "ins_dt" "ins_usr" -"F0110601" "BAVA003" "20231031" "20210719" "23-05-08 20:40:41" "batch" -"F0110601" "BAVA004" "20231031" "20210823" "23-05-08 20:40:41" "batch" +"F0110602" "BAVA001" "20231031" "20210719" "23-05-08 20:40:41" "batch" +"F0110602" "BAVA002" "20231031" "20210823" "23-05-08 20:40:41" "" "F0110601" "BAVA005" "20231031" "20210927" "23-05-08 20:40:41" "batch" "F0110601" "BAVA006" "20240131" "20211025" "23-05-08 20:40:41" "batch"