データクラス作成

This commit is contained in:
野間 2023-04-26 13:29:38 +09:00
parent 6c96dffa00
commit b000c55b66

View File

@ -0,0 +1,142 @@
from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
class ComDr(UltmarcTable):
"""レイアウト区分501: COM_医師"""
dcfdr_id: str # 個人コードレコードID
dcfdr_code: str # 個人コード(個人コード)
dcfd_yobi: str # 個人コード(予備)
maint_flag: str # 修正区分
maint_date: str # メンテナンス年月日
trn_date: str # 予備/転送年月日
drdel_code: str # 削除予定理由
reptdr_id: str # 重複時相手先コードレコードID
reptdr_code: str # 重複時相手先コード(個人コード)
reptdr_yobi: str # 重複時相手先コード(予備)
dr_name: str # 医師名(漢字)
dr_name_kana: str # 医師名(カナ)
sexc_ode: str # 性別
birthday_era: str # 生年月日(元号)
birthday_year: str # 生年月日(年)
birthday_month: str # 生年月日(月)
birthday_day: str # 生年月日(日)
home_town_code: str # 出身都道府県コード
medassoci_code: str # 医師会コード
grad_yearera: str # 卒年_元号
grad_year: str # 卒年_年
graduniv_code: str # 出身校コード
graduniv_dept_code: str # 出身校学部識別コード
drda_yera: str # 登録年_元号
drday_year: str # 登録年_年
medsbj_code1: str # 診療科目1
medsbj_code2: str # 診療科目2
medsbj_code3: str # 診療科目3
medsbj_code4: str # 診療科目4
medsbj_code5: str # 診療科目5
dr_addr_lost_code: str # 住所不明
pref_code: str # 住所コード(県コード)
city_code: str # 住所コード(市区町村コード)
addr_code1: str # 住所コード(大字・通称コード)
addr_code2: str # 住所コード(字・丁目コード)
dr_zip_code: str # 郵便番号
dr_addr: str # 自宅住所(漢字)
dr_addr_kana: str # 自宅住所(カナ)
dr_addr_num: str # 住所表示番号
dr_addr_kanj_cnt1: str # 住所カウント_漢字
dr_addr_kanj_cnt2: str # 住所カウント_漢字市区町村
dr_addr_kanj_cnt3: str # 住所カウント_漢字大字・通称
dr_addr_kanj_cnt4: str # 住所カウント_漢字字・丁目
dr_addr_kana_cnt1: str # 住所カウント_カナ
dr_addr_kana_cnt2: str # 住所カウント_カナ市区町村
dr_addr_kana_cnt3: str # 住所カウント_カナ大字・通称
dr_addr_kana_cnt4: str # 住所カウント_カナ字・丁目
dr_tel: str # 自宅電話番号
use_stop_flag: str # 利用停止区分
use_stopc_ode: str # 利用停止理由
cre_stop_date: str # 利用停止登録年月日
release_date: str # 利用停止解除年月日
pract_class_code: str # 開勤区分
pract_yearera: str # 開業年(元号)
pract_year: str # 開業年(年)
bskregst_flag: str # 一括登録フラグ
dcf_pcf_dr_cd: str # DCFPCF医師コード
addr_village_cd: str # 住所(町字)コード
addr_cnt_kana: str # 住所カウントカナ
addr_cnt: str # 住所カウント
opp_dup_code: str # 相手先重複コード
birth_day: str # 生年月日(西暦)
estab_y: str # 開業年(西暦)
grad_y: str # 卒業年(西暦)
drday_y: str # 登録年(西暦)
def __init__(self, record: list[str]):
super().__init__(record)
self.dcfdr_id = record[1]
self.dcfdr_code = record[2]
self.dcfd_yobi = record[3].strip()
self.maint_flag = record[4]
self.maint_date = record[5]
self.trn_date = record[6]
self.drdel_code = record[7].strip()
self.reptdr_id = record[8].strip()
self.reptdr_code = record[9].strip()
self.reptdr_yobi = record[10].strip()
self.dr_name = record[11].strip()
self.dr_name_kana = record[12].strip()
self.sexc_ode = record[13].strip()
self.birthday_era = record[14].strip()
self.birthday_year = record[15].strip()
self.birthday_month = record[16].strip()
self.birthday_day = record[17].strip()
self.home_town_code = record[18].strip()
self.medassoci_code = record[19].strip()
self.grad_yearera = record[20].strip()
self.grad_year = record[21].strip()
self.graduniv_code = record[22].strip()
self.graduniv_dept_code = record[23].strip()
self.drda_yera = record[24].strip()
self.drday_year = record[25].strip()
self.medsbj_code1 = record[26].strip()
self.medsbj_code2 = record[27].strip()
self.medsbj_code3 = record[28].strip()
self.medsbj_code4 = record[29].strip()
self.medsbj_code5 = record[30].strip()
self.dr_addr_lost_code = record[31].strip()
self.pref_code = record[32].strip()
self.city_code = record[33].strip()
self.addr_code1 = record[34].strip()
self.addr_code2 = record[35].strip()
self.dr_zip_code = record[36].strip()
self.dr_addr = record[37].strip()
self.dr_addr_kana = record[38].strip()
self.dr_addr_num = record[39]
self.dr_addr_kanj_cnt1 = record[40]
self.dr_addr_kanj_cnt2 = record[41]
self.dr_addr_kanj_cnt3 = record[42]
self.dr_addr_kanj_cnt4 = record[43]
self.dr_addr_kana_cnt1 = record[44]
self.dr_addr_kana_cnt2 = record[45]
self.dr_addr_kana_cnt3 = record[46]
self.dr_addr_kana_cnt4 = record[47]
self.dr_tel = record[48].strip()
self.use_stop_flag = record[49].strip()
self.use_stopc_ode = record[50].strip()
self.cre_stop_date = record[51].strip()
self.release_date = record[52].strip()
self.pract_class_code = record[53].strip()
self.pract_yearera = record[54].strip()
self.pract_year = record[55].strip()
self.bskregst_flag = record[56].strip()
# DCFPCF医師コード
self.dcf_pcf_dr_cd = ''.join([self.dcfdr_id, self.dcfdr_code, self.dcfd_yobi])
# 住所(町字)コード
self.addr_village_cd = ''.join([self.pref_code, self.city_code, self.addr_code1, self.addr_code2])
# 住所カウントカナ
self.addr_cnt_kana = ''.join([self.dr_addr_kana_cnt1, self.dr_addr_kana_cnt2, self.dr_addr_kana_cnt3, self.dr_addr_kana_cnt4])
# 住所カウント
self.addr_cnt = ''.join([self.dr_addr_kanj_cnt1, self.dr_addr_kanj_cnt2, self.dr_addr_kanj_cnt3, self.dr_addr_kanj_cnt4])
# 相手先重複コード
self.dcf_pcf_dr_cd = ''.join([self.reptdr_id, self.reptdr_code, self.reptdr_yobi])