feat: 医師勤務先ファイルの取り込み追加(動作確認中)
This commit is contained in:
parent
66760c398f
commit
7f7d829e3d
10
ecs/jskult-batch-daily/src/batch/common/batch_config.py
Normal file
10
ecs/jskult-batch-daily/src/batch/common/batch_config.py
Normal file
@ -0,0 +1,10 @@
|
||||
class BatchConfig:
|
||||
# 処理日(yyyy/mm/dd形式)
|
||||
syor_date: str
|
||||
__instance = None
|
||||
|
||||
@classmethod
|
||||
def get_instance(cls):
|
||||
if cls.__instance == None:
|
||||
cls.__instance = cls()
|
||||
return cls.__instance
|
||||
@ -1,18 +1,20 @@
|
||||
from src.batch.batch_functions import get_syor_date_as_date_format, logging_sql
|
||||
from src.batch.common.batch_config import BatchConfig
|
||||
from src.db.database import Database
|
||||
from src.error.exceptions import BatchOperationException
|
||||
from src.logging.get_logger import get_logger
|
||||
from src.time.elapsed_time import ElapsedTime
|
||||
|
||||
logger = get_logger('48-施設担当者マスタ洗替')
|
||||
batch_config = BatchConfig.get_instance()
|
||||
|
||||
def batch_process():
|
||||
db = Database.get_instance()
|
||||
db.connect()
|
||||
logger.info('##########################')
|
||||
logger.info('START Changing Employee in charge of institution PGM.')
|
||||
# 日付テーブルを取得
|
||||
syor_date = get_syor_date_as_date_format(db)
|
||||
# 業務日付を取得
|
||||
syor_date = batch_config.syor_date
|
||||
# `emp_chg_inst_lau`をTruncate
|
||||
truncate_emp_chg_inst_lau(db)
|
||||
# emp_chg_inst から、`emp_chg_inst_lau`へInsert
|
||||
@ -153,7 +155,7 @@ def update_dcf_inst_merge_from_emp_chg_inst_lau(db: Database, syor_date: str):
|
||||
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 -- TODO: tekiyo_monthはいっぴにする
|
||||
AND STR_TO_DATE(CONCAT(tekiyo_month, '01'), '%Y%m%d') <= :syor_date
|
||||
""",
|
||||
{'syor_date': syor_date}
|
||||
)
|
||||
|
||||
@ -13,7 +13,7 @@ class ComAlmaMapper(UltmarcTableMapper):
|
||||
WHERE
|
||||
alma_cd = :alma_cd
|
||||
"""
|
||||
# データ登録・更新用のSQL
|
||||
# データ登録用SQL
|
||||
INSERT_QUERY = """\
|
||||
INSERT INTO src05.com_alma
|
||||
(
|
||||
@ -65,9 +65,9 @@ class ComAlmaMapper(UltmarcTableMapper):
|
||||
super().__init__(record, db, ComAlma)
|
||||
program_name = __name__.split('.')[-1] # 当モジュール名(現行から変わっている)
|
||||
# モジュール名をクエリパラメータに設定
|
||||
self.query_parameters[0]['program_name'] = program_name
|
||||
self.query_parameter['program_name'] = program_name
|
||||
# 読み込んだレコード値もクエリパラメータに追加
|
||||
self.query_parameters[0] = {**self.query_parameters[0], **self.record.to_sql_parameter()}
|
||||
self.query_parameter = {**self.query_parameter, **self.record.to_sql_parameter()}
|
||||
|
||||
def make_query(self):
|
||||
# 修正区分がC(削除)の場合、論理削除
|
||||
@ -81,7 +81,7 @@ class ComAlmaMapper(UltmarcTableMapper):
|
||||
|
||||
def __make_upsert_query(self):
|
||||
# レコードの存在確認
|
||||
record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameters[0])
|
||||
record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter)
|
||||
# 存在しない場合はInsert
|
||||
if record_count[0]['count_num'] == 0:
|
||||
return self.INSERT_QUERY
|
||||
|
||||
@ -0,0 +1,241 @@
|
||||
from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import \
|
||||
UltmarcTableMapper
|
||||
from src.batch.ultmarc.utmp_tables.tables.com_dr_wrkplace import ComDrWrkplace
|
||||
|
||||
|
||||
class ComDrWrkplaceMapper(UltmarcTableMapper):
|
||||
# レコード存在確認SQL
|
||||
RECORD_EXISTS_QUERY = """\
|
||||
SELECT
|
||||
COUNT(*) AS count_num
|
||||
FROM
|
||||
src05.com_dr_wrkplace
|
||||
WHERE
|
||||
dcf_pcf_dr_cd = :full_dcfdr_code
|
||||
AND dcf_dsf_inst_cd = :full_hp_code
|
||||
"""
|
||||
# COM_所属部課から所属部科カナと所属部科名を取得するSQL
|
||||
GET_NAME_FROM_COM_BLNG_SEC_QUERY = """\
|
||||
SELECT
|
||||
blng_sec_kana,
|
||||
blng_sec_name
|
||||
FROM
|
||||
src05.com_blng_sec
|
||||
WHERE
|
||||
blng_sec_cd = :sectcode
|
||||
"""
|
||||
# データ登録用SQL
|
||||
INSERT_QUERY = """\
|
||||
INSERT INTO src05.com_dr_wrkplace (
|
||||
dcf_dsf_inst_cd,
|
||||
dcf_pcf_dr_cd,
|
||||
blng_sec_cd,
|
||||
post_cd,
|
||||
identity_cd,
|
||||
aply_start_ymd,
|
||||
blng_sec_name_kana,
|
||||
blng_sec_name,
|
||||
notdm_flg,
|
||||
regist_ymd,
|
||||
sys_regist_date,
|
||||
regist_prgm_id,
|
||||
sys_update_date,
|
||||
update_prgm_id
|
||||
)
|
||||
VALUES (
|
||||
:full_hp_code,
|
||||
:full_dcfdr_code,
|
||||
:sectcode,
|
||||
:postcode,
|
||||
:identitycode,
|
||||
:syor_date,
|
||||
:sectname_kana,
|
||||
:sectname,
|
||||
:notdm_flg,
|
||||
:execute_date_str_ymd,
|
||||
:execute_datetime,
|
||||
:program_name,
|
||||
:execute_datetime,
|
||||
:program_name
|
||||
)
|
||||
"""
|
||||
|
||||
# 更新用SQL
|
||||
UPDATE_QUERY = """\
|
||||
UPDATE src05.com_dr_wrkplace
|
||||
SET
|
||||
{update_columns}
|
||||
update_ymd = :execute_date_str_ymd,
|
||||
sys_update_date = :execute_datetime,
|
||||
update_prgm_id = :program_name
|
||||
WHERE
|
||||
DCF_PCF_DR_CD= :full_dcfdr_code
|
||||
AND DCF_DSF_INST_CD = :full_hp_code
|
||||
"""
|
||||
|
||||
# 更新・削除の場合に該当のデータを履歴テーブルに退避するSQL
|
||||
TO_HISTORY_QUERY = """\
|
||||
INSERT INTO src05.com_dr_wrkplace_his (
|
||||
dcf_dsf_inst_cd,
|
||||
dcf_pcf_dr_cd,
|
||||
blng_sec_cd,
|
||||
post_cd,
|
||||
identity_cd,
|
||||
aply_start_ymd,
|
||||
blng_sec_name_kana,
|
||||
blng_sec_name,
|
||||
notdm_flg,
|
||||
aply_end_ymd,
|
||||
regist_ymd,
|
||||
sys_regist_date,
|
||||
regist_prgm_id,
|
||||
sys_update_date,
|
||||
update_prgm_id
|
||||
)
|
||||
SELECT
|
||||
dcf_dsf_inst_cd,
|
||||
dcf_pcf_dr_cd,
|
||||
(
|
||||
CASE
|
||||
WHEN blng_sec_cd = '' THEN '9999'
|
||||
ELSE blng_sec_cd
|
||||
END
|
||||
) AS blng_sec_cd,
|
||||
(
|
||||
CASE
|
||||
WHEN post_cd = '' THEN '999'
|
||||
ELSE post_cd
|
||||
END
|
||||
) AS post_cd,
|
||||
(
|
||||
CASE
|
||||
WHEN identity_cd = '' THEN '999'
|
||||
ELSE identity_cd
|
||||
END
|
||||
) AS identity_cd,
|
||||
DATE_FORMAT(aply_start_ymd, '%Y%m%d'),
|
||||
blng_sec_name_kana,
|
||||
blng_sec_name,
|
||||
notdm_flg,
|
||||
(
|
||||
CASE
|
||||
WHEN DATE_FORMAT(aply_start_ymd, '%Y%m%d') > DATE_FORMAT(STR_TO_DATE(:syor_date, '%Y%m%d'), '%Y%m%d') -1 THEN DATE_FORMAT(aply_start_ymd, '%Y%m%d')
|
||||
ELSE DATE_FORMAT(STR_TO_DATE(:syor_date, '%Y%m%d'), '%Y%m%d') -1
|
||||
END
|
||||
) AS aply_end_ymd,
|
||||
:execute_date_str_ymd,
|
||||
:execute_datetime,
|
||||
:program_name,
|
||||
:execute_datetime,
|
||||
:program_name
|
||||
FROM
|
||||
src05.com_dr_wrkplace
|
||||
WHERE
|
||||
dcf_pcf_dr_cd = :full_dcfdr_code
|
||||
AND dcf_dsf_inst_cd = :full_hp_code
|
||||
AND aply_start_ymd < :syor_date
|
||||
"""
|
||||
|
||||
# 退職レコードの場合、物理削除するSQL
|
||||
PHYSICAL_DELETE_FOR_RETIREMENT_QUERY = """\
|
||||
DELETE FROM src05.com_dr_wrkplace
|
||||
WHERE
|
||||
dcf_pcf_dr_cd = :full_dcfdr_code
|
||||
AND dcf_dsf_inst_cd = :full_hp_code
|
||||
"""
|
||||
|
||||
record: ComDrWrkplace
|
||||
|
||||
def __init__(self, record: list[str], db) -> None:
|
||||
super().__init__(record, db, ComDrWrkplace)
|
||||
program_name = __name__.split('.')[-1] # 当モジュール名(現行から変わっている)
|
||||
# モジュール名をクエリパラメータに設定
|
||||
self.query_parameter['program_name'] = program_name
|
||||
# 読み込んだレコード値もクエリパラメータに追加
|
||||
self.query_parameter = {**self.query_parameter, **self.record.to_sql_parameter()}
|
||||
|
||||
def make_query(self):
|
||||
# 所属部科を取得し、所属部科カナと所属部科名を設定する
|
||||
self.__set_sect_name_and_sect_name_kana()
|
||||
# 追加/更新クエリを生成
|
||||
# 履歴へのレコード登録もあるため、リストで返る
|
||||
self.queries = self.__make_queries()
|
||||
return
|
||||
|
||||
def __set_sect_name_and_sect_name_kana(self):
|
||||
# 所属部科を取得し、所属部科カナと所属部科名を設定する
|
||||
com_blng_sec_records = self.db.execute_select(self.GET_NAME_FROM_COM_BLNG_SEC_QUERY, self.query_parameter)
|
||||
if len(com_blng_sec_records) == 0:
|
||||
return
|
||||
# 必ず1件
|
||||
com_blng_sec_record = com_blng_sec_records[0]
|
||||
if com_blng_sec_record['blig_sec_kane'] != '' and com_blng_sec_record['blig_sec_kane'] is not None:
|
||||
self.record.sectname_kana = com_blng_sec_record['blig_sec_kane']
|
||||
|
||||
if com_blng_sec_record['blig_sec_name'] != '' and com_blng_sec_record['blig_sec_name'] is not None:
|
||||
self.record.sectname = com_blng_sec_record['blig_sec_name']
|
||||
|
||||
def __make_queries(self):
|
||||
# レコードの存在確認
|
||||
record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter)
|
||||
# 存在しない場合はInsert
|
||||
if record_count[0]['count_num'] == 0:
|
||||
return [self.INSERT_QUERY]
|
||||
|
||||
# 存在する場合はUpdate
|
||||
# 予備/退職異動区分が1(削除:退職)の場合、退職済みのレコードとして処理
|
||||
if self.record.drretflag == '1':
|
||||
# 履歴への移動と、退職レコードの物理削除
|
||||
return [self.TO_HISTORY_QUERY, self.PHYSICAL_DELETE_FOR_RETIREMENT_QUERY]
|
||||
|
||||
# 履歴への移動+更新クエリ生成
|
||||
return self.__make_update_query()
|
||||
|
||||
def __make_update_query(self):
|
||||
make_history_query = None
|
||||
# 履歴レコード作成判断となる、UPDATE SET句を作成
|
||||
set_clauses = self.__make_update_columns_with_historical()
|
||||
# 何かしら更新がある場合、履歴作成クエリを作成
|
||||
if len(set_clauses) != 0:
|
||||
# DM不可フラグの値をセット
|
||||
# 履歴レコード作成判断とならないため、後から設定
|
||||
if self.record.notdm_flg != '':
|
||||
set_clauses.append('notdm_flg = :notdm_flg')
|
||||
self.query_parameter['notdm_flg'] = self.record.sectname if self.record.sectcode != '@' else 'NULL'
|
||||
|
||||
make_history_query = self.TO_HISTORY_QUERY
|
||||
|
||||
update_query = self.UPDATE_QUERY.format(
|
||||
update_columns=','.join(set_clauses)
|
||||
)
|
||||
|
||||
return [make_history_query, update_query]
|
||||
|
||||
def __make_update_columns_with_historical(self):
|
||||
# 履歴レコードの作成有無を判断するカラムの更新設定
|
||||
# DM不可フラグは、履歴レコードの作成判断に使わないため、この関数の外で判定する
|
||||
set_clauses = []
|
||||
# 役職コード
|
||||
if self.record.postcode != '':
|
||||
set_clauses.append('post_cd = :postcode')
|
||||
self.query_parameter['postcode'] = self.record.postcode if self.record.postcode != '@' else ''
|
||||
# 大学順位
|
||||
if self.record.identitycode != '':
|
||||
set_clauses.append('identity_cd = :identitycode')
|
||||
self.query_parameter['identitycode'] = self.record.identitycode if self.record.identitycode != '@' else ''
|
||||
# 所属部科(集合項目)
|
||||
if self.record.sectcode != '':
|
||||
set_clauses.append('blng_sec_cd = :sectcode')
|
||||
set_clauses.append('blng_sec_name_kana = :sectname_kana')
|
||||
set_clauses.append('blng_sec_name = :sectname')
|
||||
self.query_parameter['sectcode'] = self.record.sectcode if self.record.sectcode != '@' else '9999'
|
||||
self.query_parameter['sectname_kana'] = self.record.sectname_kana if self.record.sectcode != '@' else 'NULL'
|
||||
# 全角文字なので、全角@が連携されるパターンがある
|
||||
self.query_parameter['sectname'] = self.record.sectname if self.record.sectcode != '@' else 'NULL'
|
||||
|
||||
# 何かしら更新がある場合、適用開始日をセットする
|
||||
if len(set_clauses) != 0:
|
||||
# 処理日はパラメータに設定済み
|
||||
set_clauses.append("aply_start_ymd = DATE_FORMAT(:syor_date, '%Y%m%d')")
|
||||
|
||||
return set_clauses
|
||||
@ -13,7 +13,7 @@ class ComHamtecMapper(UltmarcTableMapper):
|
||||
WHERE
|
||||
hamtec_cd = :hamtec_cd
|
||||
"""
|
||||
# データ登録・更新用のSQL
|
||||
# データ登録用SQL
|
||||
INSERT_QUERY = """\
|
||||
INSERT INTO src05.com_hamtec
|
||||
(
|
||||
@ -68,9 +68,9 @@ class ComHamtecMapper(UltmarcTableMapper):
|
||||
super().__init__(record, db, ComHamtec)
|
||||
program_name = __name__.split('.')[-1] # 当モジュール名(現行から変わっている)
|
||||
# モジュール名をクエリパラメータに設定
|
||||
self.query_parameters[0]['program_name'] = program_name
|
||||
self.query_parameter['program_name'] = program_name
|
||||
# 読み込んだレコード値もクエリパラメータに追加
|
||||
self.query_parameters[0] = {**self.query_parameters[0], **self.record.to_sql_parameter()}
|
||||
self.query_parameter = {**self.query_parameter, **self.record.to_sql_parameter()}
|
||||
|
||||
def make_query(self):
|
||||
# 修正区分がC(削除)の場合、論理削除
|
||||
@ -84,7 +84,7 @@ class ComHamtecMapper(UltmarcTableMapper):
|
||||
|
||||
def __make_upsert_query(self):
|
||||
# レコードの存在確認
|
||||
record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameters[0])
|
||||
record_count = self.db.execute_select(self.RECORD_EXISTS_QUERY, self.query_parameter)
|
||||
# 存在しない場合はInsert
|
||||
if record_count[0]['count_num'] == 0:
|
||||
return self.INSERT_QUERY
|
||||
|
||||
@ -1,15 +1,18 @@
|
||||
from abc import ABCMeta, abstractmethod
|
||||
from datetime import datetime
|
||||
|
||||
from src.batch.common.batch_config import BatchConfig
|
||||
from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
|
||||
from src.db.database import Database
|
||||
|
||||
# 処理日を使用するために、configを使用
|
||||
batch_config = BatchConfig.get_instance()
|
||||
|
||||
class UltmarcTableMapper(metaclass=ABCMeta):
|
||||
record: UltmarcTable
|
||||
db: Database
|
||||
queries: list[str]
|
||||
query_parameters: list[dict]
|
||||
query_parameter: dict
|
||||
|
||||
def __init__(self, record: list[str], db: Database, table_class: type[UltmarcTable]) -> None:
|
||||
self.record = table_class(record)
|
||||
@ -22,10 +25,12 @@ class UltmarcTableMapper(metaclass=ABCMeta):
|
||||
# クエリリストを初期化
|
||||
self.queries = []
|
||||
# 共通クエリパラメータを設定
|
||||
self.query_parameters = [{
|
||||
self.query_parameter = {
|
||||
'execute_date_str_ymd': execute_date_str_ymd,
|
||||
'execute_datetime': execute_datetime
|
||||
}]
|
||||
'execute_datetime': execute_datetime,
|
||||
# バッチ共通設定から処理日を取得
|
||||
'syor_date': batch_config.syor_date
|
||||
}
|
||||
|
||||
@abstractmethod
|
||||
def make_query(self):
|
||||
@ -35,8 +40,8 @@ class UltmarcTableMapper(metaclass=ABCMeta):
|
||||
if len(self.queries) == 0:
|
||||
raise Exception('make_queryを呼び出してから実行してください')
|
||||
|
||||
for i, query in enumerate(self.queries):
|
||||
for query in self.queries:
|
||||
if query is None:
|
||||
continue
|
||||
|
||||
self.db.execute(query, self.query_parameters[i])
|
||||
self.db.execute(query, self.query_parameter)
|
||||
|
||||
@ -2,7 +2,7 @@ from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
|
||||
|
||||
|
||||
class ComAlma(UltmarcTable):
|
||||
|
||||
"""COM_出身校"""
|
||||
maint_flag: str # 修正区分
|
||||
alma_cd: str # 出身校コード
|
||||
alma: str # 出身校
|
||||
@ -10,5 +10,5 @@ class ComAlma(UltmarcTable):
|
||||
def __init__(self, record: list[str]):
|
||||
super().__init__(record)
|
||||
self.maint_flag = record[2]
|
||||
self.alma_cd = record[1]
|
||||
self.alma = record[5]
|
||||
self.alma_cd = record[1]
|
||||
self.alma = record[5]
|
||||
|
||||
@ -0,0 +1,49 @@
|
||||
from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
|
||||
|
||||
|
||||
class ComDrWrkplace(UltmarcTable):
|
||||
"""COM_医師勤務先"""
|
||||
maint_flag: str # 修正区分
|
||||
dcfdr_id: str # 個人コード(ID)
|
||||
dcfdr_code: str # 個人コード(個人コード)
|
||||
dcfdr_yobi: str # 個人コード(予備)
|
||||
hp_id: str # 施設コード(ID)
|
||||
hp_code: str # 施設コード(施設コード)
|
||||
hp_yobi: str # 施設コード(予備)
|
||||
drretflag: str # 予備/退職異動区分
|
||||
maintdate: str # メンテナンス年月日
|
||||
trndate: str # 予備/転送年月日
|
||||
postcode: str # 役職コード
|
||||
identitycode: str # 大学職位
|
||||
sectcode: str # 所属部科コード
|
||||
sectname: str # 所属部科(漢字)
|
||||
sectname_kana: str # 所属部科(カナ)
|
||||
notdm_flg: str # DM不可フラグ
|
||||
full_dcfdr_code: str # 個人ID+個人コード+個人コード予備
|
||||
full_hp_code: str # 施設ID+施設コード+施設コード予備
|
||||
|
||||
def __init__(self, record: list[str]):
|
||||
super().__init__(record)
|
||||
self.maintflag = record[4]
|
||||
self.dcfdr_id = record[1]
|
||||
self.dcfdr_code = record[2]
|
||||
self.dcfdr_yobi = record[3].strip()
|
||||
self.hp_id = record[5]
|
||||
self.hp_code = record[6]
|
||||
self.hp_yobi = record[7].strip()
|
||||
self.drretflag = record[8]
|
||||
self.maintdate = record[9]
|
||||
self.trndate = record[10]
|
||||
self.postcode = record[11].strip()
|
||||
self.identitycode = record[12].strip()
|
||||
|
||||
# 所属部科の集合項目
|
||||
self.sectcode = record[13].strip()
|
||||
self.sectname = record[14].strip()
|
||||
self.sectname_kana = record[15].strip()
|
||||
|
||||
self.notdm_flg = record[16].strip()
|
||||
|
||||
# ID、コード、予備を結合してフル桁コードに変換
|
||||
self.full_dcfdr_code = ''.join([self.dcfdr_id, self.dcfdr_code, self.dcfdr_yobi])
|
||||
self.full_hp_code = ''.join([self.hp_id, self.hp_code, self.hp_yobi])
|
||||
@ -2,7 +2,7 @@ from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
|
||||
|
||||
|
||||
class ComHamtec(UltmarcTable):
|
||||
|
||||
"""COM_高度先進医療"""
|
||||
maint_flag: str # 修正区分
|
||||
hamtec_cd: str # 高度先進医療コード
|
||||
hamtec_div: str # 高度先進医療区分
|
||||
@ -10,7 +10,7 @@ class ComHamtec(UltmarcTable):
|
||||
|
||||
def __init__(self, record: list[str]):
|
||||
super().__init__(record)
|
||||
self.maint_flag = record[3]
|
||||
self.hamtec_cd = record[1]
|
||||
self.hamtec_div = record[2]
|
||||
self.maint_flag = record[3]
|
||||
self.hamtec_cd = record[1]
|
||||
self.hamtec_div = record[2]
|
||||
self.hamtec_name = record[6]
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
from src.batch.ultmarc.utmp_tables.table_mapper.concrete import (
|
||||
com_alma_mapper, com_hamtec_mapper, com_inst_mapper, null_mapper)
|
||||
com_alma_mapper, com_dr_wrkplace_mapper, com_hamtec_mapper,
|
||||
com_inst_mapper, null_mapper)
|
||||
from src.batch.ultmarc.utmp_tables.table_mapper.ultmarc_table_mapper import \
|
||||
UltmarcTableMapper
|
||||
from src.db.database import Database
|
||||
@ -20,7 +21,7 @@ COM_TABLE_LIST = {
|
||||
# COM_薬局
|
||||
"102": {"03": null_mapper.NullMapper},
|
||||
# COM_医師勤務先
|
||||
"502": {"01": null_mapper.NullMapper},
|
||||
"502": {"01": com_dr_wrkplace_mapper.ComDrWrkplaceMapper},
|
||||
# COM_専門分野
|
||||
"511": {"01": null_mapper.NullMapper},
|
||||
# COM_都道府県医療機能情報(基本)
|
||||
|
||||
@ -1,10 +1,15 @@
|
||||
from src.batch import jissekiaraigae
|
||||
from src.batch.batch_functions import get_syor_date
|
||||
from src.batch.batch_functions import get_syor_date_as_date_format
|
||||
from src.batch.common.batch_config import BatchConfig
|
||||
from src.batch.ultmarc.dat_insert import dat_insert_control
|
||||
from src.error.exceptions import BatchOperationException
|
||||
from src.logging.get_logger import get_logger
|
||||
|
||||
logger = get_logger('日次処理コントロール') # ここを処理IDとかにするといいかもしれない
|
||||
|
||||
# バッチ共通設定を取得
|
||||
batch_config = BatchConfig.get_instance()
|
||||
|
||||
def batch_process():
|
||||
try:
|
||||
logger.info('日次ジョブ:開始')
|
||||
@ -15,10 +20,14 @@ def batch_process():
|
||||
# logger.error('データベース接続エラー(異常終了)') # 検査例外を捕まえて、共通的に出せばいいと思う
|
||||
try:
|
||||
logger.info('処理日取得')
|
||||
syor_date = get_syor_date()
|
||||
syor_date = get_syor_date_as_date_format()
|
||||
except BatchOperationException as e:
|
||||
logger.error(f'処理日取得エラー(異常終了){e}')
|
||||
logger.info(f'処理日={syor_date}')
|
||||
# バッチ共通設定に処理日を追加
|
||||
batch_config.syor_date = syor_date
|
||||
# TODO: 本来のアルトマーク取り込み実施場所に移動させること
|
||||
dat_insert_control()
|
||||
# 休日判定ファイルを読み込み
|
||||
logger.info('休日判定処理')
|
||||
if True: # 休日判定
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user