Merge pull request #500 featrue-NEWDWH2021-1866 into develop

This commit is contained in:
下田雅人 2025-06-13 12:17:26 +09:00
commit 6cb8024b8e
4 changed files with 21 additions and 14 deletions

View File

@ -2,6 +2,7 @@ import os.path as path
import tempfile import tempfile
import boto3 import boto3
from src.system_var import environment from src.system_var import environment
@ -63,7 +64,7 @@ class ConfigBucket(S3Bucket):
jsk_archive_run_day_list_key = f'{environment.JSKULT_CONFIG_CALENDAR_FOLDER}/{environment.JSKULT_CONFIG_CALENDAR_RUN_ARCHIVE_DAY_FILE_NAME}' jsk_archive_run_day_list_key = f'{environment.JSKULT_CONFIG_CALENDAR_FOLDER}/{environment.JSKULT_CONFIG_CALENDAR_RUN_ARCHIVE_DAY_FILE_NAME}'
with open(temporary_file_path, mode='wb') as f: with open(temporary_file_path, mode='wb') as f:
self._s3_client.download_file( self._s3_client.download_file(
self._bucket_name, jsk_archive_run_day_list_key, f) self._bucket_name, jsk_archive_run_day_list_key, f)
f.seek(0) f.seek(0)
return temporary_file_path return temporary_file_path
@ -79,7 +80,6 @@ class ConfigBucket(S3Bucket):
return temporary_file_path return temporary_file_path
class JskUltBackupBucket(S3Bucket): class JskUltBackupBucket(S3Bucket):
_bucket_name = environment.JSKULT_BACKUP_BUCKET _bucket_name = environment.JSKULT_BACKUP_BUCKET

View File

@ -1,4 +1,5 @@
import json import json
import re
from datetime import datetime from datetime import datetime
import boto3 import boto3
@ -64,14 +65,15 @@ class UpdateBusinessDay(JskultBatchEntrypoint):
return return
try: try:
if not jskult_batch_status_manager.can_run_post_process(): if not jskult_batch_status_manager.can_run_business_day_update():
# 後続処理の起動条件を満たしていない場合 # 日付更新処理の起動条件を満たしていない場合
# 処理ステータスを「処理待」に設定 # 処理ステータスを「処理待」に設定
jskult_batch_status_manager.set_process_status( jskult_batch_status_manager.set_process_status(
constants.PROCESS_STATUS_WAITING) constants.PROCESS_STATUS_WAITING)
# バッチ実行管理テーブルに「retry」で登録 # バッチ実行管理テーブルに「retry」で登録
jskult_batch_run_manager.batch_retry() jskult_batch_run_manager.batch_retry()
logger.info('起動条件を満たしていないため、日付テーブル更新処理を終了します。')
return return
@ -82,6 +84,9 @@ class UpdateBusinessDay(JskultBatchEntrypoint):
jskult_batch_status_manager.set_process_status( jskult_batch_status_manager.set_process_status(
constants.PROCESS_STATUS_ERROR) constants.PROCESS_STATUS_ERROR)
return return
jskult_batch_status_manager.set_process_status(
constants.PROCESS_STATUS_DOING)
try: try:
# 日付テーブルの処理年月日を取得する # 日付テーブルの処理年月日を取得する
_, _, syor_date = jskult_hdke_tbl_manager.get_batch_statuses() _, _, syor_date = jskult_hdke_tbl_manager.get_batch_statuses()
@ -184,15 +189,14 @@ class UpdateBusinessDay(JskultBatchEntrypoint):
"""jsk_transfer_data_listと比較し、結果不足ファイルがあった場合ログ出力 """jsk_transfer_data_listと比較し、結果不足ファイルがあった場合ログ出力
""" """
missing_files = [ missing_files = [
jsk_transfer_expected_data expected
for jsk_transfer_expected_data in jsk_transfer_expected_data_list for expected in jsk_transfer_expected_data_list
if not any( if not any(
jsk_transfer_data.startswith( re.match(f"{re.escape(expected)}_\\d{{14}}", jsk_transfer_data)
jsk_transfer_expected_data)
for jsk_transfer_data in jsk_transfer_data_list for jsk_transfer_data in jsk_transfer_data_list
) )
] ]
if missing_files != 0: if len(missing_files) != 0:
logger.info( logger.info(
f'I-5 [NOTICE]日次連携受領ファイルに不足がありました。ファイル名:{missing_files}') f'I-5 [NOTICE]日次連携受領ファイルに不足がありました。ファイル名:{missing_files}')
@ -203,9 +207,9 @@ class UpdateBusinessDay(JskultBatchEntrypoint):
jsk_transfer_data jsk_transfer_data
for jsk_transfer_data in jsk_transfer_data_list for jsk_transfer_data in jsk_transfer_data_list
if not any( if not any(
jsk_transfer_data.startswith( re.match(f"{re.escape(expected)}_\\d{{14}}",
jsk_transfer_expected_data) jsk_transfer_data)
for jsk_transfer_expected_data in jsk_transfer_expected_data_list for expected in jsk_transfer_expected_data_list
) )
] ]
if len(unexpected_data) != 0: if len(unexpected_data) != 0:

View File

@ -34,6 +34,7 @@ JSKULT_CONFIG_EXPECTED_DATA_LIST_FILE_NAME = os.environ.get(
) )
JSK_IO_BUCKET = os.environ.get('JSK_IO_BUCKET', None) JSK_IO_BUCKET = os.environ.get('JSK_IO_BUCKET', None)
JSK_DATA_SEND_FOLDER = os.environ.get('JSK_DATA_SEND_FOLDER', None) JSK_DATA_SEND_FOLDER = os.environ.get('JSK_DATA_SEND_FOLDER', None)
JSK_BACKUP_FOLDER = os.environ.get('JSK_BACKUP_FOLDER', None)
# 初期値がある環境変数 # 初期値がある環境変数

View File

@ -1,6 +1,8 @@
# task environment file. # task environment file.
LOG_LEVEL=INFO LOG_LEVEL=INFO
PROCESS_NAME=jskult-batch-update-business-day PROCESS_NAME=jskult-batch-update-business-day
TRANSFER_RESULT_FOLDER=transfer_result
TRANSFER_RESULT_FILE_NAME=transfer_result.json
JSKULT_CONFIG_CALENDAR_FOLDER=jskult/calendar JSKULT_CONFIG_CALENDAR_FOLDER=jskult/calendar
JSKULT_CONFIG_CALENDAR_RUN_ARCHIVE_DAY_FILE_NAME=jsk_archive_run_day.txt JSKULT_CONFIG_CALENDAR_RUN_ARCHIVE_DAY_FILE_NAME=jsk_archive_run_day.txt
JSKULT_CONFIG_EXPECTED_DATA_LIST_FOLDER=jskult/expected_data_list JSKULT_CONFIG_EXPECTED_DATA_LIST_FOLDER=jskult/expected_data_list