From af2d86899c0dcec3dd95f74cbdeecc383b0d1923 Mon Sep 17 00:00:00 2001 From: yono Date: Tue, 27 May 2025 18:02:49 +0900 Subject: [PATCH 1/8] =?UTF-8?q?feat:=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=9E?= =?UTF-8?q?=E3=82=B9=E3=82=BF=E5=AE=9A=E7=BE=A9=E5=A4=89=E6=9B=B4=E5=AF=BE?= =?UTF-8?q?=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/controller/login.py | 12 ++++++------ ecs/jskult-webapp/src/model/db/user_master.py | 8 ++++---- ecs/jskult-webapp/src/model/view/user_view_model.py | 8 ++++---- .../src/repositories/user_master_repository.py | 6 +++--- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/ecs/jskult-webapp/src/controller/login.py b/ecs/jskult-webapp/src/controller/login.py index 9b2c808e..caad063b 100644 --- a/ecs/jskult-webapp/src/controller/login.py +++ b/ecs/jskult-webapp/src/controller/login.py @@ -111,9 +111,9 @@ def login( id_token=verified_token.id_token, refresh_token=verified_token.refresh_token, csrf_token=csrf_token, - bio_flg=user_record.auth_flg1, - doc_flg=user_record.auth_flg2, - inst_flg=user_record.auth_flg3, + bio_flg=user_record.bio_sales_inq_auth_flg, + doc_flg=user_record.ult_doctor_inq_auth_flg, + inst_flg=user_record.ult_inst_inq_auth_flg, master_mainte_flg=user_record.auth_flg4, user_flg=user_record.mntuser_flg ) @@ -170,9 +170,9 @@ def sso_authorize( id_token=verified_token.id_token, refresh_token=verified_token.refresh_token, csrf_token=csrf_token, - bio_flg=user_record.auth_flg1, - doc_flg=user_record.auth_flg2, - inst_flg=user_record.auth_flg3, + bio_flg=user_record.bio_sales_inq_auth_flg, + doc_flg=user_record.ult_doctor_inq_auth_flg, + inst_flg=user_record.ult_inst_inq_auth_flg, master_mainte_flg=user_record.auth_flg4, user_flg=user_record.mntuser_flg ) diff --git a/ecs/jskult-webapp/src/model/db/user_master.py b/ecs/jskult-webapp/src/model/db/user_master.py index d86253ae..04d06d11 100644 --- a/ecs/jskult-webapp/src/model/db/user_master.py +++ b/ecs/jskult-webapp/src/model/db/user_master.py @@ -8,16 +8,16 @@ class UserMasterModel(BaseDBModel): user_id: Optional[str] mail_adr: Optional[str] user_name: Optional[str] - auth_flg1: Optional[int] - auth_flg2: Optional[int] - auth_flg3: Optional[int] + bio_sales_inq_auth_flg: Optional[int] + ult_doctor_inq_auth_flg: Optional[int] + ult_inst_inq_auth_flg: Optional[int] auth_flg4: Optional[int] auth_flg5: Optional[int] auth_flg6: Optional[int] auth_flg7: Optional[int] auth_flg8: Optional[int] auth_flg9: Optional[int] - auth_flg10: Optional[int] + bio_sales_inq_auth_flg0: Optional[int] pwd: Optional[str] enabled_flg: Optional[str] creater: Optional[str] diff --git a/ecs/jskult-webapp/src/model/view/user_view_model.py b/ecs/jskult-webapp/src/model/view/user_view_model.py index bae3af73..332deb22 100644 --- a/ecs/jskult-webapp/src/model/view/user_view_model.py +++ b/ecs/jskult-webapp/src/model/view/user_view_model.py @@ -6,10 +6,10 @@ from src.system_var import constants class UserViewModel(BaseModel): - bio_flg: Optional[int] # AUTH_FLG1 - doc_flg: Optional[int] # AUTH_FLG2 - inst_flg: Optional[int] # AUTH_FLG3 - master_mainte_flg: Optional[int] # AUTH_FLG4 + bio_flg: Optional[int] # bio_sales_inq_auth_flg + doc_flg: Optional[int] # ult_doctor_inq_auth_flg + inst_flg: Optional[int] # ult_inst_inq_auth_flg + # TODO: 削除予定 master_mainte_flg: Optional[int] # AUTH_FLG4 def has_ult_doctor_permission(self): return self.doc_flg == constants.PERMISSION_ENABLED diff --git a/ecs/jskult-webapp/src/repositories/user_master_repository.py b/ecs/jskult-webapp/src/repositories/user_master_repository.py index 3acbc105..b295c2fd 100644 --- a/ecs/jskult-webapp/src/repositories/user_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/user_master_repository.py @@ -23,7 +23,7 @@ class UserMasterRepository(BaseRepository): SELECT * FROM - src05.user_mst + src07.user_mst WHERE user_id = :user_id\ """ @@ -44,7 +44,7 @@ class UserMasterRepository(BaseRepository): try: query = """\ UPDATE - src05.user_mst + src07.user_mst SET mntuser_login_failed_cnt = CASE @@ -70,7 +70,7 @@ class UserMasterRepository(BaseRepository): try: query = """\ UPDATE - src05.user_mst + src07.user_mst SET enabled_flg = 'N' WHERE From d6d0d2ff0db8a5eaff297c48e7c0e123d80afa3f Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 09:39:38 +0900 Subject: [PATCH 2/8] =?UTF-8?q?feat:=E3=83=87=E3=83=BC=E3=82=BF=E5=AE=9A?= =?UTF-8?q?=E7=BE=A9=E3=81=AB=E5=90=88=E3=82=8F=E3=81=9B=E3=81=A6=E5=A4=89?= =?UTF-8?q?=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/controller/bio_api.py | 10 +++++----- .../{bio_sales_lot.py => trn_result_data_bio_lot.py} | 0 ecs/jskult-webapp/src/model/db/user_master.py | 2 +- ecs/jskult-webapp/src/model/view/bio_disp_model.py | 2 +- .../src/repositories/hdke_tbl_repository.py | 2 +- .../src/repositories/prefc_master_repository.py | 6 +++--- ...sitory.py => trn_result_data_bio_lot_repository.py} | 6 +++--- .../src/repositories/ultmarc_doctor_repository.py | 4 ++-- .../src/repositories/ultmarc_inst_repository.py | 4 ++-- .../src/repositories/wholesaler_master_repository.py | 2 +- ecs/jskult-webapp/src/services/bio_view_service.py | 6 +++--- 11 files changed, 22 insertions(+), 22 deletions(-) rename ecs/jskult-webapp/src/model/db/{bio_sales_lot.py => trn_result_data_bio_lot.py} (100%) rename ecs/jskult-webapp/src/repositories/{bio_sales_lot_repository.py => trn_result_data_bio_lot_repository.py} (97%) diff --git a/ecs/jskult-webapp/src/controller/bio_api.py b/ecs/jskult-webapp/src/controller/bio_api.py index 4989a50d..a9ea8f14 100644 --- a/ecs/jskult-webapp/src/controller/bio_api.py +++ b/ecs/jskult-webapp/src/controller/bio_api.py @@ -43,8 +43,8 @@ def search_bio_data( return JSONResponse(content={'status': 'batch_processing'}, status_code=status.HTTP_403_FORBIDDEN) # 生物由来データと件数を取得 - bio_sales_lot_data = bio_service.search_bio_data(bio_form) - bio_sales_lot_count = bio_service.count_bio_data(bio_form, session) + trn_result_data_bio_lot_data = bio_service.search_bio_data(bio_form) + trn_result_data_bio_lot_count = bio_service.count_bio_data(bio_form, session) # レスポンスデータを加工 # 日付型のデータのエンコードエラーを解消するための措置 @@ -58,7 +58,7 @@ def search_bio_data( return encoded_obj data = jsonable_encoder( - bio_sales_lot_data, + trn_result_data_bio_lot_data, custom_encoder={ BioDisplayModel: custom_encode } @@ -71,13 +71,13 @@ def search_bio_data( UserSession.record_expiration_time.set(UserSession.new_record_expiration_time()), # 検索結果をキャッシュする UserSession.bio_search_condition.set(bio_form.model_dump()), - UserSession.bio_search_count.set(bio_sales_lot_count), + UserSession.bio_search_count.set(trn_result_data_bio_lot_count), ] ) set_session(session) json_response = JSONResponse(content={ 'data': data, - 'count': bio_sales_lot_count + 'count': trn_result_data_bio_lot_count }) # クッキーも書き換え diff --git a/ecs/jskult-webapp/src/model/db/bio_sales_lot.py b/ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py similarity index 100% rename from ecs/jskult-webapp/src/model/db/bio_sales_lot.py rename to ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py diff --git a/ecs/jskult-webapp/src/model/db/user_master.py b/ecs/jskult-webapp/src/model/db/user_master.py index 04d06d11..bf38f61e 100644 --- a/ecs/jskult-webapp/src/model/db/user_master.py +++ b/ecs/jskult-webapp/src/model/db/user_master.py @@ -17,7 +17,7 @@ class UserMasterModel(BaseDBModel): auth_flg7: Optional[int] auth_flg8: Optional[int] auth_flg9: Optional[int] - bio_sales_inq_auth_flg0: Optional[int] + auth_flg10: Optional[int] pwd: Optional[str] enabled_flg: Optional[str] creater: Optional[str] diff --git a/ecs/jskult-webapp/src/model/view/bio_disp_model.py b/ecs/jskult-webapp/src/model/view/bio_disp_model.py index aafa7864..2a2d0518 100644 --- a/ecs/jskult-webapp/src/model/view/bio_disp_model.py +++ b/ecs/jskult-webapp/src/model/view/bio_disp_model.py @@ -1,4 +1,4 @@ -from src.model.db.bio_sales_lot import BioSalesLotDBModel +from src.model.db.trn_result_data_bio_lot import BioSalesLotDBModel from src.util.sanitize import sanitize diff --git a/ecs/jskult-webapp/src/repositories/hdke_tbl_repository.py b/ecs/jskult-webapp/src/repositories/hdke_tbl_repository.py index b99485e9..b0a99aa3 100644 --- a/ecs/jskult-webapp/src/repositories/hdke_tbl_repository.py +++ b/ecs/jskult-webapp/src/repositories/hdke_tbl_repository.py @@ -6,7 +6,7 @@ logger = get_logger('日付テーブル取得') class HdkeTblRepository(BaseRepository): - FETCH_SQL = "SELECT bch_actf, dump_sts_kbn FROM src05.hdke_tbl" + FETCH_SQL = "SELECT bch_actf, dump_sts_kbn FROM src07.hdke_tbl" def fetch_all(self) -> list[HdkeTblModel]: try: diff --git a/ecs/jskult-webapp/src/repositories/prefc_master_repository.py b/ecs/jskult-webapp/src/repositories/prefc_master_repository.py index b9a7f795..0edb9fec 100644 --- a/ecs/jskult-webapp/src/repositories/prefc_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/prefc_master_repository.py @@ -10,12 +10,12 @@ class PrefcMasterRepository(BaseRepository): FETCH_SQL = """\ SELECT DISTINCT com_inst.prefc_cd AS prefc_cd, - mst_prefc.prefc_name AS prefc_name + mst_jis_pref.jis_pref_nm_kj AS prefc_name FROM src05.com_inst - JOIN src05.mst_prefc ON com_inst.prefc_cd = mst_prefc.prefc_cd + JOIN src07.mst_jis_pref ON com_inst.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) ORDER BY - mst_prefc.prefc_cd + prefc_cd """ def fetch_all(self) -> list[PrefcMasterModel]: diff --git a/ecs/jskult-webapp/src/repositories/bio_sales_lot_repository.py b/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py similarity index 97% rename from ecs/jskult-webapp/src/repositories/bio_sales_lot_repository.py rename to ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py index 50296a3f..b2e999e9 100644 --- a/ecs/jskult-webapp/src/repositories/bio_sales_lot_repository.py +++ b/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py @@ -1,7 +1,7 @@ from src.db import sql_condition as condition from src.db.sql_condition import SQLCondition from src.logging.get_logger import get_logger -from src.model.db.bio_sales_lot import (BioSalesLotCountDBModel, +from src.model.db.trn_result_data_bio_lot import (BioSalesLotCountDBModel, BioSalesLotDBModel) from src.model.request.bio import BioModel from src.repositories.base_repository import BaseRepository @@ -53,7 +53,7 @@ class BioSalesLotRepository(BaseRepository): CAST(v_tran_cd AS CHAR) AS v_tran_cd, iko_flg FROM - src05.bio_sales_lot + src07.trn_result_data_bio_lot WHERE {where_clause} ORDER BY @@ -100,7 +100,7 @@ class BioSalesLotRepository(BaseRepository): FROM ( SELECT 1 - FROM src05.bio_sales_lot + FROM src07.trn_result_data_bio_lot WHERE {where_clause} LIMIT {limit} diff --git a/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py b/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py index ceca822d..342b268d 100644 --- a/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py +++ b/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py @@ -27,11 +27,11 @@ class UltmarcDoctorRepository(BaseRepository): com_alma.alma, com_dr.grad_y, com_dr.use_stop_div, - mst_prefc.prefc_name, + mst_jis_pref.jis_pref_nm_kj AS prefc_name, com_dr_wrkplace.blng_sec_cd FROM src05.com_dr - LEFT JOIN src05.mst_prefc ON com_dr.prefc_cd = mst_prefc.prefc_cd + LEFT JOIN src07.mst_jis_pref ON com_dr.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) LEFT JOIN src05.com_dr_wrkplace ON com_dr.dcf_pcf_dr_cd = com_dr_wrkplace.dcf_pcf_dr_cd LEFT JOIN src05.com_inst ON com_dr_wrkplace.dcf_dsf_inst_cd = com_inst.dcf_dsf_inst_cd LEFT JOIN src05.com_blng_sec ON com_dr_wrkplace.blng_sec_cd = com_blng_sec.blng_sec_cd diff --git a/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py b/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py index 6a86c9df..9a8203e5 100644 --- a/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py +++ b/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py @@ -26,9 +26,9 @@ class UltmarcInstRepository(BaseRepository): inst_phone_number, inst_div_name, hp_assrt_name, - prefc_name + jis_pref_nm_kj AS prefc_name FROM src05.com_inst - LEFT JOIN src05.mst_prefc ON com_inst.prefc_cd = mst_prefc.prefc_cd + LEFT JOIN src07.mst_jis_pref ON com_inst.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) LEFT JOIN src05.com_inst_div ON com_inst.inst_div_cd = com_inst_div.inst_div_cd LEFT JOIN src05.com_hp_assrt ON com_inst.hp_assrt_cd = com_hp_assrt.hp_assrt_cd WHERE {where_clause} diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index 0ed59753..2f731087 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -22,7 +22,7 @@ class WholesalerMasterRepository(BaseRepository): v_whs_cd, rec_sts_kbn FROM src05.whs_mst_v - WHERE src05.get_syor_date() BETWEEN start_date AND end_date + WHERE src07.get_syor_date() BETWEEN start_date AND end_date ) v2 ON b.v_whs_cd = v2.v_whs_cd AND v2.rec_sts_kbn <> '9' diff --git a/ecs/jskult-webapp/src/services/bio_view_service.py b/ecs/jskult-webapp/src/services/bio_view_service.py index bbf01bcb..d2d9e5db 100644 --- a/ecs/jskult-webapp/src/services/bio_view_service.py +++ b/ecs/jskult-webapp/src/services/bio_view_service.py @@ -14,7 +14,7 @@ from src.model.request.bio import BioModel from src.model.view.bio_disp_model import BioDisplayModel from src.model.view.bio_view_model import BioViewModel from src.repositories.base_repository import BaseRepository -from src.repositories.bio_sales_lot_repository import BioSalesLotRepository +from src.repositories.trn_result_data_bio_lot_repository import BioSalesLotRepository from src.repositories.pharmacy_product_master_repository import \ PharmacyProductMasterRepository from src.repositories.wholesaler_master_repository import \ @@ -65,9 +65,9 @@ class BioViewService(BaseService): def search_bio_data(self, search_params: BioModel): # 生物由来データを検索 - bio_sales_lot_data = self.bio_sales_repository.fetch_many(parameter=search_params) + trn_result_data_bio_lot_data = self.bio_sales_repository.fetch_many(parameter=search_params) # 画面表示用に加工 - display_bio_data: list[BioDisplayModel] = [BioDisplayModel(data) for data in bio_sales_lot_data] + display_bio_data: list[BioDisplayModel] = [BioDisplayModel(data) for data in trn_result_data_bio_lot_data] return display_bio_data From 23f5093b321c38eb97009b70f236b3fec3a4ccca Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 13:14:15 +0900 Subject: [PATCH 3/8] =?UTF-8?q?feat:=E9=83=BD=E9=81=93=E5=BA=9C=E7=9C=8C?= =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BF=E3=81=AB=E9=96=A2=E3=81=99=E3=82=8B?= =?UTF-8?q?=E5=A4=89=E6=9B=B4=E3=81=AE=E5=8F=96=E3=82=8A=E6=B6=88=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/repositories/prefc_master_repository.py | 6 +++--- .../src/repositories/ultmarc_doctor_repository.py | 4 ++-- .../src/repositories/ultmarc_inst_repository.py | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ecs/jskult-webapp/src/repositories/prefc_master_repository.py b/ecs/jskult-webapp/src/repositories/prefc_master_repository.py index 0edb9fec..b9a7f795 100644 --- a/ecs/jskult-webapp/src/repositories/prefc_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/prefc_master_repository.py @@ -10,12 +10,12 @@ class PrefcMasterRepository(BaseRepository): FETCH_SQL = """\ SELECT DISTINCT com_inst.prefc_cd AS prefc_cd, - mst_jis_pref.jis_pref_nm_kj AS prefc_name + mst_prefc.prefc_name AS prefc_name FROM src05.com_inst - JOIN src07.mst_jis_pref ON com_inst.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) + JOIN src05.mst_prefc ON com_inst.prefc_cd = mst_prefc.prefc_cd ORDER BY - prefc_cd + mst_prefc.prefc_cd """ def fetch_all(self) -> list[PrefcMasterModel]: diff --git a/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py b/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py index 342b268d..ceca822d 100644 --- a/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py +++ b/ecs/jskult-webapp/src/repositories/ultmarc_doctor_repository.py @@ -27,11 +27,11 @@ class UltmarcDoctorRepository(BaseRepository): com_alma.alma, com_dr.grad_y, com_dr.use_stop_div, - mst_jis_pref.jis_pref_nm_kj AS prefc_name, + mst_prefc.prefc_name, com_dr_wrkplace.blng_sec_cd FROM src05.com_dr - LEFT JOIN src07.mst_jis_pref ON com_dr.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) + LEFT JOIN src05.mst_prefc ON com_dr.prefc_cd = mst_prefc.prefc_cd LEFT JOIN src05.com_dr_wrkplace ON com_dr.dcf_pcf_dr_cd = com_dr_wrkplace.dcf_pcf_dr_cd LEFT JOIN src05.com_inst ON com_dr_wrkplace.dcf_dsf_inst_cd = com_inst.dcf_dsf_inst_cd LEFT JOIN src05.com_blng_sec ON com_dr_wrkplace.blng_sec_cd = com_blng_sec.blng_sec_cd diff --git a/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py b/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py index 9a8203e5..6a86c9df 100644 --- a/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py +++ b/ecs/jskult-webapp/src/repositories/ultmarc_inst_repository.py @@ -26,9 +26,9 @@ class UltmarcInstRepository(BaseRepository): inst_phone_number, inst_div_name, hp_assrt_name, - jis_pref_nm_kj AS prefc_name + prefc_name FROM src05.com_inst - LEFT JOIN src07.mst_jis_pref ON com_inst.prefc_cd = mst_jis_pref.jis_pref_cd and (select str_to_date(syor_date,'%Y%m%d') from src07.hdke_tbl) between STR_TO_DATE(CONCAT(eff_start_ym, '01'), '%Y%m%d') and LAST_DAY(STR_TO_DATE(CONCAT(eff_end_ym, '01'), '%Y%m%d')) + LEFT JOIN src05.mst_prefc ON com_inst.prefc_cd = mst_prefc.prefc_cd LEFT JOIN src05.com_inst_div ON com_inst.inst_div_cd = com_inst_div.inst_div_cd LEFT JOIN src05.com_hp_assrt ON com_inst.hp_assrt_cd = com_hp_assrt.hp_assrt_cd WHERE {where_clause} From 1ee92b8d1e24eac10311e76afcbe2c9b52c026b5 Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 13:30:37 +0900 Subject: [PATCH 4/8] =?UTF-8?q?feat:=20src05.whs=5Fmst=5Fv=E2=86=92src07.m?= =?UTF-8?q?st=5Fwhlslr?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/repositories/wholesaler_master_repository.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index 2f731087..a89c6c44 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -13,7 +13,7 @@ class WholesalerMasterRepository(BaseRepository): b.rec_whs_sub_cd, v2.name, b.whs_name - FROM src05.bio_sales b + FROM src07.trn_result_data_bio b LEFT OUTER JOIN ( SELECT @@ -21,7 +21,7 @@ class WholesalerMasterRepository(BaseRepository): name, v_whs_cd, rec_sts_kbn - FROM src05.whs_mst_v + FROM src07.mst_whlslr WHERE src07.get_syor_date() BETWEEN start_date AND end_date ) v2 ON b.v_whs_cd = v2.v_whs_cd From 31db8567c91499bff17f95f500d949ef7375fe92 Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 13:53:55 +0900 Subject: [PATCH 5/8] =?UTF-8?q?feat:=20src05.whs=5Fmst=5Fv=E2=86=92src07.m?= =?UTF-8?q?st=5Fwhlslr=E4=BF=AE=E6=AD=A3=E6=BC=8F=E3=82=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/repositories/wholesaler_master_repository.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index a89c6c44..6747db07 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -11,21 +11,18 @@ class WholesalerMasterRepository(BaseRepository): SELECT DISTINCT b.rec_whs_cd, b.rec_whs_sub_cd, - v2.name, + v2.ws_nm_kj, b.whs_name FROM src07.trn_result_data_bio b LEFT OUTER JOIN ( SELECT - sub_num, - name, - v_whs_cd, - rec_sts_kbn + ws_cd, + ws_nm_kj FROM src07.mst_whlslr WHERE src07.get_syor_date() BETWEEN start_date AND end_date ) v2 - ON b.v_whs_cd = v2.v_whs_cd - AND v2.rec_sts_kbn <> '9' + ON b.ws_cd = v2.ws_cd ORDER BY b.rec_whs_cd, b.rec_whs_sub_cd , b.whs_name DESC """ From 019591b38ae3705c729b4eec9659242628ee0514 Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 13:56:05 +0900 Subject: [PATCH 6/8] =?UTF-8?q?feat:=20src05.whs=5Fmst=5Fv=E2=86=92src07.m?= =?UTF-8?q?st=5Fwhlslr=E4=BF=AE=E6=AD=A3=E6=BC=8F=E3=82=8C2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/repositories/wholesaler_master_repository.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index 6747db07..2d6dd9f5 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -11,7 +11,7 @@ class WholesalerMasterRepository(BaseRepository): SELECT DISTINCT b.rec_whs_cd, b.rec_whs_sub_cd, - v2.ws_nm_kj, + v2.ws_nm_kj as name, b.whs_name FROM src07.trn_result_data_bio b LEFT OUTER JOIN From 13ac61c682db704b44fb778f1913dd5fdf7babf2 Mon Sep 17 00:00:00 2001 From: yono Date: Wed, 28 May 2025 14:10:30 +0900 Subject: [PATCH 7/8] =?UTF-8?q?feat:src05.bio=5Fsales=E2=86=92src07.trn=5F?= =?UTF-8?q?result=5Fdata=5FbioSELECT=E9=A0=85=E7=9B=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/repositories/wholesaler_master_repository.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index 2d6dd9f5..287c0357 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -9,10 +9,10 @@ class WholesalerMasterRepository(BaseRepository): FETCH_SQL = """\ SELECT DISTINCT - b.rec_whs_cd, - b.rec_whs_sub_cd, + b.orig_whlslr_cd as rec_whs_cd, + b.orig_whlslr_sub_cd as rec_whs_sub_cd, v2.ws_nm_kj as name, - b.whs_name + b.cls_whlslr_nm as whs_name FROM src07.trn_result_data_bio b LEFT OUTER JOIN ( From dee3a3b1cb64093aeade42889eef0216a4c63480 Mon Sep 17 00:00:00 2001 From: yono Date: Thu, 29 May 2025 15:40:46 +0900 Subject: [PATCH 8/8] =?UTF-8?q?feat:=E7=94=9F=E7=89=A9=E7=94=B1=E6=9D=A5?= =?UTF-8?q?=E3=83=87=E3=83=BC=E3=82=BF=E5=8F=82=E7=85=A7=E7=B3=BB=E3=81=AE?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/model/db/pharmacy_product_master.py | 4 +- .../src/model/db/trn_result_data_bio_lot.py | 66 ++++----- ecs/jskult-webapp/src/model/request/bio.py | 135 +++++++++--------- .../src/model/view/bio_disp_model.py | 6 +- .../src/model/view/bio_view_model.py | 17 +-- .../pharmacy_product_master_repository.py | 30 ++-- .../trn_result_data_bio_lot_repository.py | 133 ++++++++--------- .../wholesaler_master_repository.py | 6 +- .../src/templates/bioSearchList.html | 126 +++++++--------- 9 files changed, 239 insertions(+), 284 deletions(-) diff --git a/ecs/jskult-webapp/src/model/db/pharmacy_product_master.py b/ecs/jskult-webapp/src/model/db/pharmacy_product_master.py index 35181012..eadaf44c 100644 --- a/ecs/jskult-webapp/src/model/db/pharmacy_product_master.py +++ b/ecs/jskult-webapp/src/model/db/pharmacy_product_master.py @@ -4,5 +4,5 @@ from src.model.db.base_db_model import BaseDBModel class PharmacyProductMasterModel(BaseDBModel): - mkr_cd: Optional[str] - mkr_cd_name: Optional[str] + prod_pkg_cd: Optional[str] + prod_pkg_cd_name: Optional[str] diff --git a/ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py b/ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py index f3e36951..2c96429f 100644 --- a/ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py +++ b/ecs/jskult-webapp/src/model/db/trn_result_data_bio_lot.py @@ -4,45 +4,37 @@ from typing import Optional from src.model.db.base_db_model import BaseDBModel -class BioSalesLotDBModel(BaseDBModel): - slip_mgt_num: Optional[str] - rec_whs_cd: Optional[str] - rec_whs_sub_cd: Optional[str] - rec_whs_org_cd: Optional[str] - rec_comm_cd: Optional[str] - rec_tran_kbn: Optional[str] - rev_hsdnymd_srk: Optional[str] - rec_urag_num: Optional[str] - rec_nonyu_fcl_name: Optional[str] - rec_nonyu_fcl_addr: Optional[str] - rec_lot_num: Optional[str] - rec_ymd: Optional[str] - v_tran_cd: Optional[int] - tran_kbn_name: Optional[str] - v_whsorg_cd: Optional[int] - whs_org_name: Optional[str] - v_whs_cd: Optional[int] - whs_name: Optional[str] - nonyu_fcl_cd: Optional[str] - product_name: Optional[str] - whs_rep_comm_name: Optional[str] - whs_rep_nonyu_fcl_name: Optional[str] - whs_rep_nonyu_fcl_addr: Optional[str] - mkr_cd: Optional[str] - qty: Optional[int] - bef_slip_mgt_num: Optional[str] - iko_flg: Optional[str] - ins_dt: Optional[datetime] - ins_usr: Optional[str] - inst_cd: Optional[str] - inst_name_form: Optional[str] +class TrnResultDataBioLotDBModel(BaseDBModel): + if_kind: Optional[str] + account_ym: Optional[str] + seq_no: Optional[int] + load_dt: Optional[datetime] + orig_whlslr_cd: Optional[str] + orig_whlslr_sub_cd: Optional[str] + cls_whlslr_nm: Optional[str] + edit_whlslr_org_cd: Optional[str] + orig_slip_no: Optional[str] + cnvs_sales_dt: Optional[datetime] + edit_deal_div_cd: Optional[str] + cls_deal_div_nm: Optional[str] + cnvs_prod_cd: Optional[str] + orig_univ_product_cd: Optional[str] + cls_prod_nm: Optional[str] + edit_endusr_cd: Optional[str] + orig_endusr_nm: Optional[str] + orig_jd45_addr_txt: Optional[str] + cnvs_lot_no: Optional[str] + cnvs_lot_sales_qty: Optional[int] + expr_dt: Optional[date] + data_kbn: Optional[str] + cnvs_inst_cd: Optional[str] + cls_inst_nm: Optional[str] address: Optional[str] tel_num: Optional[str] - data_kbn: Optional[str] - data_kind: Optional[str] - err_dtl_kind: Optional[str] - expr_dt: Optional[date] - + cnvs_whlslr_cd: Optional[str] + cnvs_depo_cd: Optional[str] + cls_depo_nm: Optional[str] + cnvs_deal_div_cd: Optional[str] class BioSalesLotCountDBModel(BaseDBModel): count: Optional[int] diff --git a/ecs/jskult-webapp/src/model/request/bio.py b/ecs/jskult-webapp/src/model/request/bio.py index 3120f4ed..c79ac2b0 100644 --- a/ecs/jskult-webapp/src/model/request/bio.py +++ b/ecs/jskult-webapp/src/model/request/bio.py @@ -9,18 +9,17 @@ from src.util.string_util import is_not_empty @sanitize class BioModel(BaseModel): - rec_whs_cd: Optional[str] - rec_whs_sub_cd: Optional[str] - whs_name: Optional[str] - slip_org_kbn: Optional[str] - rec_ymd_from: Optional[str] - rec_ymd_to: Optional[str] - rec_lot_num: Optional[str] - data_kbn: Optional[str] - mkr_cd: Optional[str] - rev_hsdnymd_srk_from: Optional[str] - rev_hsdnymd_srk_to: Optional[str] - iko_flg: Optional[str] + orig_whlslr_cd: Optional[str] + orig_whlslr_sub_cd: Optional[str] + cls_whlslr_nm: Optional[str] + if_kind: Optional[str] + load_dt_from: Optional[str] + load_dt_to: Optional[str] + cnvs_lot_no: Optional[str] + result_cd: Optional[str] + cnvs_prod_cd: Optional[str] + cnvs_sales_dt_from: Optional[str] + cnvs_sales_dt_to: Optional[str] pageNumber: Optional[int] pageSize: Optional[int] @@ -29,14 +28,13 @@ class BioModel(BaseModel): cls, ctrl_wholesaler: str = Form(None), ctrl_org_kbn: str = Form(None), - ctrl_rec_ymd_from: str = Form(None), - ctrl_rec_ymd_to: str = Form(None), - ctrl_rec_lot_num: str = Form(None), - ctrl_data_kbn: str = Form(None), + ctrl_load_dt_from: str = Form(None), + ctrl_load_dt_to: str = Form(None), + ctrl_cnvs_lot_no: str = Form(None), + ctrl_result_cd: str = Form(None), ctrl_maker_cd: str = Form(None), - ctrl_rev_hsdnymd_srk_from: str = Form(None), - ctrl_rev_hsdnymd_srk_to: str = Form(None), - ikoFlg: str = Form(None), + ctrl_cnvs_sales_dt_from: str = Form(None), + ctrl_cnvs_sales_dt_to: str = Form(None), pageNumber: int = Form(None), pageSize: int = Form(None) ): @@ -45,14 +43,13 @@ class BioModel(BaseModel): cls, ctrl_wholesaler, ctrl_org_kbn, - ctrl_rec_ymd_from, - ctrl_rec_ymd_to, - ctrl_rec_lot_num, - ctrl_data_kbn, + ctrl_load_dt_from, + ctrl_load_dt_to, + ctrl_cnvs_lot_no, + ctrl_result_cd, ctrl_maker_cd, - ctrl_rev_hsdnymd_srk_from, - ctrl_rev_hsdnymd_srk_to, - ikoFlg, + ctrl_cnvs_sales_dt_from, + ctrl_cnvs_sales_dt_to, pageNumber, pageSize ) @@ -62,42 +59,39 @@ class BioModel(BaseModel): cls, ctrl_wholesaler: str = Body(None), ctrl_org_kbn: str = Body(None), - ctrl_rec_ymd_from: str = Body(None), - ctrl_rec_ymd_to: str = Body(None), - ctrl_rec_lot_num: str = Body(None), - ctrl_data_kbn: str = Body(None), + ctrl_load_dt_from: str = Body(None), + ctrl_load_dt_to: str = Body(None), + ctrl_cnvs_lot_no: str = Body(None), + ctrl_result_cd: str = Body(None), ctrl_maker_cd: str = Body(None), - ctrl_rev_hsdnymd_srk_from: str = Body(None), - ctrl_rev_hsdnymd_srk_to: str = Body(None), - ikoFlg: str = Body(None) + ctrl_cnvs_sales_dt_from: str = Body(None), + ctrl_cnvs_sales_dt_to: str = Body(None) ): return cls.__convert_request_param( cls, ctrl_wholesaler, ctrl_org_kbn, - ctrl_rec_ymd_from, - ctrl_rec_ymd_to, - ctrl_rec_lot_num, - ctrl_data_kbn, + ctrl_load_dt_from, + ctrl_load_dt_to, + ctrl_cnvs_lot_no, + ctrl_result_cd, ctrl_maker_cd, - ctrl_rev_hsdnymd_srk_from, - ctrl_rev_hsdnymd_srk_to, - ikoFlg + ctrl_cnvs_sales_dt_from, + ctrl_cnvs_sales_dt_to ) def __convert_request_param( cls, ctrl_wholesaler: str, ctrl_org_kbn: str, - ctrl_rec_ymd_from: str, - ctrl_rec_ymd_to: str, - ctrl_rec_lot_num: str, - ctrl_data_kbn: str, + ctrl_load_dt_from: str, + ctrl_load_dt_to: str, + ctrl_cnvs_lot_no: str, + ctrl_result_cd: str, ctrl_maker_cd: str, - ctrl_rev_hsdnymd_srk_from: str, - ctrl_rev_hsdnymd_srk_to: str, - ikoFlg: str, + ctrl_cnvs_sales_dt_from: str, + ctrl_cnvs_sales_dt_to: str, pageNumber: int = None, pageSize: int = None ): @@ -113,34 +107,33 @@ class BioModel(BaseModel): wholesaler_sub_code = wholesaler_without_name.split('-')[1] # 処理日 - rec_ymd_from = None - rec_ymd_to = None - if is_not_empty(ctrl_rec_ymd_from): - rec_ymd_from = ctrl_rec_ymd_from.replace('/', '') - if is_not_empty(ctrl_rec_ymd_to): - rec_ymd_to = ctrl_rec_ymd_to.replace('/', '') + load_dt_from = None + load_dt_to = None + if is_not_empty(ctrl_load_dt_from): + load_dt_from = ctrl_load_dt_from.replace('/', '') + if is_not_empty(ctrl_load_dt_to): + load_dt_to = ctrl_load_dt_to.replace('/', '') # 発伝年月日 - rev_hsdnymd_srk_from = None - rev_hsdnymd_srk_to = None - if is_not_empty(ctrl_rev_hsdnymd_srk_from): - rev_hsdnymd_srk_from = ctrl_rev_hsdnymd_srk_from.replace('/', '') - if is_not_empty(ctrl_rev_hsdnymd_srk_to): - rev_hsdnymd_srk_to = ctrl_rev_hsdnymd_srk_to.replace('/', '') + cnvs_sales_dt_from = None + cnvs_sales_dt_to = None + if is_not_empty(ctrl_cnvs_sales_dt_from): + cnvs_sales_dt_from = ctrl_cnvs_sales_dt_from.replace('/', '') + if is_not_empty(ctrl_cnvs_sales_dt_to): + cnvs_sales_dt_to = ctrl_cnvs_sales_dt_to.replace('/', '') return cls( - rec_whs_cd=wholesaler_code, - rec_whs_sub_cd=wholesaler_sub_code, - whs_name=wholesaler_name, - slip_org_kbn=ctrl_org_kbn, - rec_ymd_from=rec_ymd_from, - rec_ymd_to=rec_ymd_to, - rec_lot_num=ctrl_rec_lot_num, - data_kbn=ctrl_data_kbn, - mkr_cd=ctrl_maker_cd, - rev_hsdnymd_srk_from=rev_hsdnymd_srk_from, - rev_hsdnymd_srk_to=rev_hsdnymd_srk_to, - iko_flg=ikoFlg, + orig_whlslr_cd=wholesaler_code, + orig_whlslr_sub_cd=wholesaler_sub_code, + cls_whlslr_nm=wholesaler_name, + if_kind=ctrl_org_kbn, + load_dt_from=load_dt_from, + load_dt_to=load_dt_to, + cnvs_lot_no=ctrl_cnvs_lot_no, + result_cd=ctrl_result_cd, + cnvs_prod_cd=ctrl_maker_cd, + cnvs_sales_dt_from=cnvs_sales_dt_from, + cnvs_sales_dt_to=cnvs_sales_dt_to, pageNumber=pageNumber, pageSize=pageSize ) diff --git a/ecs/jskult-webapp/src/model/view/bio_disp_model.py b/ecs/jskult-webapp/src/model/view/bio_disp_model.py index 2a2d0518..c4bfc6ea 100644 --- a/ecs/jskult-webapp/src/model/view/bio_disp_model.py +++ b/ecs/jskult-webapp/src/model/view/bio_disp_model.py @@ -1,8 +1,8 @@ -from src.model.db.trn_result_data_bio_lot import BioSalesLotDBModel +from src.model.db.trn_result_data_bio_lot import TrnResultDataBioLotDBModel from src.util.sanitize import sanitize @sanitize -class BioDisplayModel(BioSalesLotDBModel): - def __init__(self, param: BioSalesLotDBModel) -> None: +class BioDisplayModel(TrnResultDataBioLotDBModel): + def __init__(self, param: TrnResultDataBioLotDBModel) -> None: super().__init__(**param.model_dump()) diff --git a/ecs/jskult-webapp/src/model/view/bio_view_model.py b/ecs/jskult-webapp/src/model/view/bio_view_model.py index e0aab9ad..0600cabd 100644 --- a/ecs/jskult-webapp/src/model/view/bio_view_model.py +++ b/ecs/jskult-webapp/src/model/view/bio_view_model.py @@ -26,9 +26,10 @@ class BioViewModel(BaseModel): return OrderedDict( { '': '', - 'J': 'JD-NET', - 'N': 'NHI', - 'H': '手入力' + '1':'VAN', + '2':'手入力', + '3':'VAN-Web', + 'S':'SCSK-VAN' } ) @@ -36,10 +37,10 @@ class BioViewModel(BaseModel): return OrderedDict( { '': '', - '0': '正常', - '1': 'ロットエラー', - '3': 'ロット不明', - '9': 'エラー(解消済み)', - '2': '除外' + '1':'正常', + '2':'卸間転送除外対象データ', + 'E':'エラー', + 'D':'エラー(重複)', + 'Z':'エラー(想定外)' } ) diff --git a/ecs/jskult-webapp/src/repositories/pharmacy_product_master_repository.py b/ecs/jskult-webapp/src/repositories/pharmacy_product_master_repository.py index 4b4083c8..5b238bcf 100644 --- a/ecs/jskult-webapp/src/repositories/pharmacy_product_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/pharmacy_product_master_repository.py @@ -8,24 +8,18 @@ logger = get_logger('製品取得') class PharmacyProductMasterRepository(BaseRepository): FETCH_SQL = """\ - SELECT - t1.mkr_cd, - CONCAT(IFNULL(t1.mkr_cd, ''), ' ', IFNULL(t1.mkr_inf_1, '')) AS mkr_cd_name - FROM - src05.phm_prd_mst_v t1 - INNER JOIN - ( - SELECT - prd_cd, MAX(sub_num) AS sno - FROM - src05.phm_prd_mst_v - WHERE rec_sts_kbn <> '9' - GROUP BY prd_cd - ) fmv2 - ON t1.prd_cd = fmv2.prd_cd AND t1.sub_num = fmv2.sno - WHERE - t1.mkr_cd IS NOT NULL - ORDER BY mkr_cd + SELECT + prod_pkg_cd, + CONCAT(IFNULL(prod_pkg_cd, ''), ' ', IFNULL(prod_pkg_nm_kj, '')) AS prod_pkg_cd_name + FROM ( + SELECT + *, + ROW_NUMBER() OVER (PARTITION BY prod_pkg_cd ORDER BY eff_start_ym DESC) AS rn + FROM + src07.mst_prod_pkg + ) AS ranked + WHERE + rn = 1; """ def fetch_all(self) -> list[PharmacyProductMasterModel]: diff --git a/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py b/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py index b2e999e9..9dc7c66b 100644 --- a/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py +++ b/ecs/jskult-webapp/src/repositories/trn_result_data_bio_lot_repository.py @@ -2,7 +2,7 @@ from src.db import sql_condition as condition from src.db.sql_condition import SQLCondition from src.logging.get_logger import get_logger from src.model.db.trn_result_data_bio_lot import (BioSalesLotCountDBModel, - BioSalesLotDBModel) + TrnResultDataBioLotDBModel) from src.model.request.bio import BioModel from src.repositories.base_repository import BaseRepository from src.system_var import environment @@ -14,58 +14,50 @@ logger = get_logger('生物由来参照') class BioSalesLotRepository(BaseRepository): FETCH_SQL = """\ SELECT - data_kind, - slip_mgt_num, - rec_ymd, - rec_whs_cd, - rec_whs_sub_cd, - whs_name, - rec_whs_org_cd, - rec_urag_num, - rev_hsdnymd_srk, - rec_tran_kbn, - tran_kbn_name, - mkr_cd, - rec_comm_cd, - product_name, - whs_rep_comm_name, - nonyu_fcl_cd, - rec_nonyu_fcl_name, - whs_rep_nonyu_fcl_name, - rec_nonyu_fcl_addr, - whs_rep_nonyu_fcl_addr, - rec_lot_num, - qty, + if_kind, + account_ym, + seq_no, + load_dt, + orig_whlslr_cd, + orig_whlslr_sub_cd, + cls_whlslr_nm, + edit_whlslr_org_cd, + orig_slip_no, + cnvs_sales_dt, + edit_deal_div_cd, + cls_deal_div_nm, + cnvs_prod_cd, + orig_univ_product_cd, + cls_prod_nm, + edit_endusr_cd, + orig_endusr_nm, + orig_jd45_addr_txt, + cnvs_lot_no, + cnvs_lot_sales_qty, expr_dt, data_kbn, - err_dtl_kind, - bef_slip_mgt_num, - ins_usr, - ins_dt, - inst_cd, - inst_name_form, + cnvs_inst_cd, + cls_inst_nm, address, tel_num, - -- Excel出力のため、数値型のコード値を文字列として取得(Veeva卸コード、Veeva卸組織コード、Veeva取引区分コード) - CAST(v_whs_cd AS CHAR) AS v_whs_cd, - CAST(v_whsorg_cd AS CHAR) AS v_whsorg_cd, - whs_org_name, - CAST(v_tran_cd AS CHAR) AS v_tran_cd, - iko_flg + cnvs_whlslr_cd, + cnvs_depo_cd, + cls_depo_nm, + cnvs_deal_div_cd FROM src07.trn_result_data_bio_lot WHERE {where_clause} ORDER BY - rec_whs_cd, - rec_whs_sub_cd, - rev_hsdnymd_srk, - slip_mgt_num + orig_whlslr_cd, + orig_whlslr_sub_cd, + cnvs_sales_dt, + orig_slip_no ASC LIMIT {limit}\ """ - def fetch_many(self, parameter: BioModel) -> list[BioSalesLotDBModel]: + def fetch_many(self, parameter: BioModel) -> list[TrnResultDataBioLotDBModel]: try: logger.debug('DB参照実行') where_clause = self.__build_condition(parameter) @@ -74,7 +66,7 @@ class BioSalesLotRepository(BaseRepository): query = self.FETCH_SQL.format(where_clause=where_clause, limit=limit_clause) logger.debug(f'SQL: {query}') result = self._database.execute_select(query, parameter.model_dump()) - models = [BioSalesLotDBModel(**r) for r in result] + models = [TrnResultDataBioLotDBModel(**r) for r in result] return models except Exception as e: logger.exception(f"DB Error : Exception={e.args}") @@ -107,7 +99,7 @@ class BioSalesLotRepository(BaseRepository): ) AS t\ """ - def fetch_count(self, parameter: BioModel) -> list[BioSalesLotDBModel]: + def fetch_count(self, parameter: BioModel) -> list[TrnResultDataBioLotDBModel]: try: logger.debug('DB参照実行') where_clause = self.__build_condition(parameter) @@ -130,43 +122,44 @@ class BioSalesLotRepository(BaseRepository): where_clauses.append(SQLCondition('', '', '1 = 1', literal=True)) # 卸(コード/サブコード) - if is_not_empty(parameter.rec_whs_cd) and is_not_empty(parameter.rec_whs_sub_cd): - where_clauses.append(SQLCondition('rec_whs_cd', condition.EQ, 'rec_whs_cd')) - where_clauses.append(SQLCondition('rec_whs_sub_cd', condition.EQ, 'rec_whs_sub_cd')) - # データ種別 - if is_not_empty(parameter.slip_org_kbn): - where_clauses.append(SQLCondition('slip_org_kbn', condition.EQ, 'slip_org_kbn')) + if is_not_empty(parameter.orig_whlslr_cd) and is_not_empty(parameter.orig_whlslr_sub_cd): + where_clauses.append(SQLCondition('orig_whlslr_cd', condition.EQ, 'orig_whlslr_cd')) + where_clauses.append(SQLCondition('orig_whlslr_sub_cd', condition.EQ, 'orig_whlslr_sub_cd')) + # 連携種別 + if is_not_empty(parameter.if_kind): + where_clauses.append(SQLCondition('if_kind', condition.EQ, 'if_kind')) # 処理日 開始日 - if is_not_empty(parameter.rec_ymd_from): - where_clauses.append(SQLCondition('rec_ymd', condition.GE, 'rec_ymd_from')) + if is_not_empty(parameter.load_dt_from): + where_clauses.append(SQLCondition('load_dt', condition.GE, 'load_dt_from')) # 処理日 終了日 - if is_not_empty(parameter.rec_ymd_to): - where_clauses.append(SQLCondition('rec_ymd', condition.LE, 'rec_ymd_to')) + if is_not_empty(parameter.load_dt_to): + where_clauses.append(SQLCondition('load_dt', condition.LE, 'load_dt_to')) # ロット番号 - if is_not_empty(parameter.rec_lot_num): - rec_lot_num = parameter.rec_lot_num + if is_not_empty(parameter.cnvs_lot_no): + cnvs_lot_no = parameter.cnvs_lot_no # あいまい検索文字列('%')が含まれる場合は'LIKE'、でなければ'='で検索 - rec_lot_num_comparator = condition.LIKE if '%' in rec_lot_num else condition.EQ - where_clauses.append(SQLCondition('TRIM(rec_lot_num)', rec_lot_num_comparator, 'rec_lot_num')) + cnvs_lot_no_comparator = condition.LIKE if '%' in cnvs_lot_no else condition.EQ + where_clauses.append(SQLCondition('TRIM(cnvs_lot_no)', cnvs_lot_no_comparator, 'cnvs_lot_no')) # データ区分 - if is_not_empty(parameter.data_kbn): - where_clauses.append(SQLCondition('data_kbn', condition.EQ, 'data_kbn')) + if is_not_empty(parameter.result_cd): + where_clauses.append(SQLCondition('result_cd', condition.EQ, 'result_cd')) # 製品 - if is_not_empty(parameter.mkr_cd): - where_clauses.append(SQLCondition('mkr_cd', condition.EQ, 'mkr_cd')) + if is_not_empty(parameter.cnvs_prod_cd): + where_clauses.append(SQLCondition('cnvs_prod_cd', condition.EQ, 'cnvs_prod_cd')) # 発伝年月日 開始日 - if is_not_empty(parameter.rev_hsdnymd_srk_from): - where_clauses.append(SQLCondition('rev_hsdnymd_srk', condition.GE, 'rev_hsdnymd_srk_from')) + if is_not_empty(parameter.cnvs_sales_dt_from): + where_clauses.append(SQLCondition('cnvs_sales_dt', condition.GE, 'cnvs_sales_dt_from')) # 発伝年月日 終了日 - if is_not_empty(parameter.rev_hsdnymd_srk_to): - where_clauses.append(SQLCondition('rev_hsdnymd_srk', condition.LE, 'rev_hsdnymd_srk_to')) - # 移行フラグ - # チェックが入っていない場合、移行対象(IKO_FLG = '*')を省く - if parameter.iko_flg is None: - where_clauses.append(SQLCondition('iko_flg', condition.IS, 'NULL', literal=True)) + if is_not_empty(parameter.cnvs_sales_dt_to): + where_clauses.append(SQLCondition('cnvs_sales_dt', condition.LE, 'cnvs_sales_dt_to')) + # TODO: 削除 # 移行フラグ + # # チェックが入っていない場合、移行対象(IKO_FLG = '*')を省く + # if parameter.iko_flg is None: + # where_clauses.append(SQLCondition('iko_flg', condition.IS, 'NULL', literal=True)) # 固定条件 - # Viewで返されるロット番号9件をNull以外で抽出 - where_clauses.append(SQLCondition('LENGTH(TRIM(rec_lot_num))', condition.GT, '0', literal=True)) + # ロット番号9件をNull以外で抽出 + # 現在の仕組みだと存在有り得ないので削除 + # where_clauses.append(SQLCondition('LENGTH(TRIM(cnvs_lot_no))', condition.GT, '0', literal=True)) where_clauses_str = ' AND '.join([condition.apply() for condition in where_clauses]) diff --git a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py index 287c0357..a3e31235 100644 --- a/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py +++ b/ecs/jskult-webapp/src/repositories/wholesaler_master_repository.py @@ -20,10 +20,10 @@ class WholesalerMasterRepository(BaseRepository): ws_cd, ws_nm_kj FROM src07.mst_whlslr - WHERE src07.get_syor_date() BETWEEN start_date AND end_date + WHERE src07.get_syor_date() BETWEEN str_to_date(concat(eff_start_ym, '01'), '%Y%m%d') AND str_to_date(concat(eff_end_ym, '01'), '%Y%m%d') ) v2 - ON b.ws_cd = v2.ws_cd - ORDER BY b.rec_whs_cd, b.rec_whs_sub_cd , b.whs_name DESC + ON b.orig_whlslr_cd = v2.ws_cd + ORDER BY b.orig_whlslr_cd, b.orig_whlslr_sub_cd , b.cls_whlslr_nm DESC """ def fetch_all(self) -> list[WholesalerMasterModel]: diff --git a/ecs/jskult-webapp/src/templates/bioSearchList.html b/ecs/jskult-webapp/src/templates/bioSearchList.html index 1e345ccc..65159f1e 100644 --- a/ecs/jskult-webapp/src/templates/bioSearchList.html +++ b/ecs/jskult-webapp/src/templates/bioSearchList.html @@ -43,7 +43,7 @@ {% endfor %} - データ種別: + 連携種別: ~ - @@ -69,13 +69,13 @@ ロット番号: - データ区分: - {% for data_kbn_code, data_kbn_value in bio.display_data_kbn().items() %}