From ac2c2f0f16b2b3c65bd3a05b61a9f6a69488d772 Mon Sep 17 00:00:00 2001 From: "nik.n" Date: Thu, 18 Apr 2024 17:36:53 +0900 Subject: [PATCH 1/5] =?UTF-8?q?start=5Fdate=E3=81=8C=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E3=81=97=E3=81=AA=E3=81=84=E3=81=A8=E3=81=8D=E7=A8=AE=E5=88=A5?= =?UTF-8?q?=E6=8B=85=E5=BD=93=E8=80=85=E5=88=A4=E5=AE=9A=E3=82=92=E9=99=A4?= =?UTF-8?q?=E5=A4=96=E3=81=99=E3=82=8B=E3=83=AD=E3=82=B8=E3=83=83=E3=82=AF?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/model/internal/master_mainte_csv.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py index fe4e328d..a547ee18 100644 --- a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py +++ b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py @@ -100,9 +100,13 @@ class MasterMainteCSVItem(metaclass=ABCMeta): return True if self.mst_inst_repository.fetch_count(self.inst_cd) > 0 else False def is_exist_emp_chg_type_cd(self, start_date: str) -> bool: + if start_date is None or len(start_date) == 0: + return False return True if self.generic_kbn_mst_repository.fetch_count('emp_chg_type_cd', self.emp_chg_type_cd, start_date) > 0 else False def is_exist_ta_cd(self, start_date: str) -> bool: + if start_date is None or len(start_date) == 0: + return False return True if self.generic_kbn_mst_repository.fetch_count('ta_cd', self.ta_cd, start_date) > 0 else False def is_exist_bu_cd(self) -> bool: From 35993730d6c93fb68f7f297aec828581a50eb7eb Mon Sep 17 00:00:00 2001 From: "nik.n" Date: Mon, 22 Apr 2024 10:32:55 +0900 Subject: [PATCH 2/5] =?UTF-8?q?=E9=96=8B=E5=A7=8B=E6=97=A5=E6=9C=AA?= =?UTF-8?q?=E5=85=A5=E5=8A=9B=E3=81=AB=E5=AF=BE=E3=81=97=E3=81=A6=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/model/internal/master_mainte_csv.py | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py index a547ee18..57b5c7c7 100644 --- a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py +++ b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py @@ -102,12 +102,16 @@ class MasterMainteCSVItem(metaclass=ABCMeta): def is_exist_emp_chg_type_cd(self, start_date: str) -> bool: if start_date is None or len(start_date) == 0: return False - return True if self.generic_kbn_mst_repository.fetch_count('emp_chg_type_cd', self.emp_chg_type_cd, start_date) > 0 else False + if self.generic_kbn_mst_repository.fetch_count('emp_chg_type_cd', self.emp_chg_type_cd, start_date) > 0: + return True + return False def is_exist_ta_cd(self, start_date: str) -> bool: if start_date is None or len(start_date) == 0: return False - return True if self.generic_kbn_mst_repository.fetch_count('ta_cd', self.ta_cd, start_date) > 0 else False + if self.generic_kbn_mst_repository.fetch_count('ta_cd', self.ta_cd, start_date) > 0: + return True + return False def is_exist_bu_cd(self) -> bool: return True if self.bu_master_repository.fetch_count(self.bu_cd) > 0 else False @@ -309,6 +313,9 @@ class MasterMainteNewInstEmpCSVItem(MasterMainteCSVItem): def check_emp_chg_type_cd_exists(self) -> list[str]: error_list = [] + if not self.start_date or not self.emp_chg_type_cd: + return error_list + if is_not_empty(self.emp_chg_type_cd) and super().is_exist_emp_chg_type_cd(self.start_date) is False: error_list.append(f'{self.line_num}行目の{constants.NEW_INST_EMP_CSV_LOGICAL_NAMES[constants.CSV_NEW_EMP_CHG_TYPE_CD_COL_NO]}\ は汎用区分マスタに存在しない もしくは 適用期間外のコードです。') @@ -316,6 +323,9 @@ class MasterMainteNewInstEmpCSVItem(MasterMainteCSVItem): def check_ta_cd_exists(self) -> list[str]: error_list = [] + if not self.start_date or not self.ta_cd: + return error_list + if is_not_empty(self.ta_cd) and super().is_exist_ta_cd(self.start_date) is False: error_list.append(f'{self.line_num}行目の{constants.NEW_INST_EMP_CSV_LOGICAL_NAMES[constants.CSV_NEW_TA_CD_COL_NO]}\ は汎用区分マスタに存在しない もしくは 適用期間外のコードです。') @@ -494,6 +504,9 @@ class MasterMainteChangeInstEmpCSVItem(MasterMainteCSVItem): def check_emp_chg_type_cd_exists(self) -> list[str]: error_list = [] + if not self.inst_emp_start_date or not self.emp_chg_type_cd: + return error_list + if is_not_empty(self.emp_chg_type_cd) and super().is_exist_emp_chg_type_cd(self.inst_emp_start_date) is False: error_list.append(f'{self.line_num}行目の{constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_EMP_CHG_TYPE_CD_COL_NO]}\ は汎用区分マスタに存在しない もしくは 適用期間外のコードです。') @@ -501,6 +514,10 @@ class MasterMainteChangeInstEmpCSVItem(MasterMainteCSVItem): def check_ta_cd_exists(self) -> list[str]: error_list = [] + + if not self.inst_emp_start_date or not self.ta_cd: + return error_list + if is_not_empty(self.ta_cd) and super().is_exist_ta_cd(self.inst_emp_start_date) is False: error_list.append(f'{self.line_num}行目の{constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_TA_CD_COL_NO]}\ は汎用区分マスタに存在しない もしくは 適用期間外のコードです。') From 18f215f4f6ccd9ff022cc38702b77880ce01b559 Mon Sep 17 00:00:00 2001 From: "nik.n" Date: Mon, 22 Apr 2024 15:07:07 +0900 Subject: [PATCH 3/5] =?UTF-8?q?SQL=E6=A4=9C=E7=B4=A2=E3=81=AB=E6=8B=85?= =?UTF-8?q?=E5=BD=93=E8=80=85=E7=A8=AE=E5=88=A5=E3=82=B3=E3=83=BC=E3=83=89?= =?UTF-8?q?=E6=A4=9C=E7=B4=A2=E6=9D=A1=E4=BB=B6=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/model/internal/master_mainte_csv.py | 13 ++++++++++--- .../src/repositories/emp_chg_inst_repository.py | 7 ++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py index 57b5c7c7..1ccd862b 100644 --- a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py +++ b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py @@ -87,7 +87,7 @@ class MasterMainteCSVItem(metaclass=ABCMeta): return error_list def emp_chg_inst_count(self, start_date: str): - return self.emp_chginst_repository.fetch_count(self.inst_cd, self.ta_cd, start_date, self.table_name) + return self.emp_chginst_repository.fetch_count(self.inst_cd, self.ta_cd, self.emp_chg_type_cd, start_date, self.table_name) def is_exist_emp_cd(self, start_date: str) -> bool: if start_date is None or len(start_date) == 0: @@ -454,6 +454,9 @@ class MasterMainteChangeInstEmpCSVItem(MasterMainteCSVItem): if len(self.ta_cd) == 0: error_list.append(self.make_require_error_message( self.line_num, constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_TA_CD_COL_NO])) + if len(self.emp_chg_type_cd) == 0: + error_list.append(self.make_require_error_message( + self.line_num, constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_EMP_CHG_TYPE_CD_COL_NO])) if len(self.inst_emp_start_date) == 0: error_list.append(self.make_require_error_message( self.line_num, @@ -469,6 +472,10 @@ class MasterMainteChangeInstEmpCSVItem(MasterMainteCSVItem): if len(self.ta_cd) == 0: error_list.append(self.make_require_error_message( self.line_num, constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_TA_CD_COL_NO])) + if len(self.emp_chg_type_cd) == 0: + error_list.append(self.make_require_error_message( + self.line_num, constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_EMP_CHG_TYPE_CD_COL_NO])) + if len(self.emp_cd) == 0: error_list.append(self.make_require_error_message( self.line_num, constants.CHANGE_INST_CSV_LOGICAL_NAMES[constants.CSV_CHANGE_EMP_CD_COL_NO])) @@ -572,10 +579,10 @@ class MasterMainteChangeInstEmpCSVItem(MasterMainteCSVItem): error_list = [] emp_chg_inst_count = super().emp_chg_inst_count(self.inst_emp_start_date) if self.comment == '追加' and emp_chg_inst_count > 0: - error_list.append(f'{self.line_num}行目の施設コード、領域コード、施設担当_開始日がすべて同一のデータが既に登録されています。') + error_list.append(f'{self.line_num}行目の施設コード、領域コード、担当者種別コード、施設担当_開始日がすべて同一のデータが既に登録されています。') elif (self.comment == '終了' or self.comment == '担当者修正') and emp_chg_inst_count == 0: - error_list.append(f'{self.line_num}行目の施設コード、領域コード、施設担当_開始日がすべて同一のデータが存在しないため更新できません。') + error_list.append(f'{self.line_num}行目の施設コード、領域コード、担当者種別コード、施設担当_開始日がすべて同一のデータが存在しないため更新できません。') return error_list diff --git a/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py b/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py index 6019b48c..e7359626 100644 --- a/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py +++ b/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py @@ -132,7 +132,7 @@ class EmpChgInstRepository(BaseRepository): except Exception as e: logger.exception(f'DB Error : Exception={e.args}') raise e - +# TODO FETCH_COUNT_SQL = """\ SELECT COUNT(*) AS count @@ -142,13 +142,14 @@ class EmpChgInstRepository(BaseRepository): inst_cd = :inst_cd AND ta_cd = :ta_cd AND start_date = :start_date + AND emp_chg_type_cd = :emp_chg_type_cd """ - def fetch_count(self, inst_cd, ta_cd, start_date, table_name) -> MasterMenteCountModel: + def fetch_count(self, inst_cd, ta_cd, emp_chg_type_cd, start_date, table_name) -> MasterMenteCountModel: try: query = self.FETCH_COUNT_SQL.format(table_name=table_name) result = self._database.execute_select(query, {'inst_cd': inst_cd, 'ta_cd': ta_cd, - 'start_date': start_date}) + 'emp_chg_type_cd': emp_chg_type_cd,'start_date': start_date}) models = [MasterMenteCountModel(**r) for r in result] if len(models) == 0: return 0 From cc0e1cb5763ee41558ee293e42f5f2ad67b6d692 Mon Sep 17 00:00:00 2001 From: "nik.n" Date: Tue, 23 Apr 2024 11:27:15 +0900 Subject: [PATCH 4/5] =?UTF-8?q?=E3=82=A8=E3=83=A9=E3=83=BC=E5=88=A4?= =?UTF-8?q?=E5=AE=9A=E9=A0=86=E7=95=AA=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/model/internal/master_mainte_csv.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py index 1ccd862b..70ad315a 100644 --- a/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py +++ b/ecs/jskult-webapp/src/model/internal/master_mainte_csv.py @@ -61,10 +61,10 @@ class MasterMainteCSVItem(metaclass=ABCMeta): error_list.extend(self.check_require()) # 施設コード存在チェック error_list.extend(self.check_inst_cd_exists()) - # 担当者種別コード存在チェック - error_list.extend(self.check_emp_chg_type_cd_exists()) # 領域コード存在チェック error_list.extend(self.check_ta_cd_exists()) + # 担当者種別コード存在チェック + error_list.extend(self.check_emp_chg_type_cd_exists()) # MUID存在チェック error_list.extend(self.check_emp_cd_exists()) # BuCd存在チェック From a726bb90fe175f78165f9a7c4c6cdd6bb7a21aa2 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 23 Apr 2024 13:01:47 +0900 Subject: [PATCH 5/5] =?UTF-8?q?feat:=20=E3=82=B3=E3=83=A1=E3=83=B3?= =?UTF-8?q?=E3=83=88=E5=89=8A=E9=99=A4=E3=80=81=E6=9D=A1=E4=BB=B6=E3=81=AE?= =?UTF-8?q?=E9=A0=86=E7=95=AA=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py b/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py index e7359626..6b585080 100644 --- a/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py +++ b/ecs/jskult-webapp/src/repositories/emp_chg_inst_repository.py @@ -132,7 +132,7 @@ class EmpChgInstRepository(BaseRepository): except Exception as e: logger.exception(f'DB Error : Exception={e.args}') raise e -# TODO + FETCH_COUNT_SQL = """\ SELECT COUNT(*) AS count @@ -141,8 +141,8 @@ class EmpChgInstRepository(BaseRepository): WHERE inst_cd = :inst_cd AND ta_cd = :ta_cd - AND start_date = :start_date AND emp_chg_type_cd = :emp_chg_type_cd + AND start_date = :start_date """ def fetch_count(self, inst_cd, ta_cd, emp_chg_type_cd, start_date, table_name) -> MasterMenteCountModel: