COM_薬局 新規

This commit is contained in:
野間 2023-04-17 16:09:10 +09:00
parent 1301aa4009
commit e39601ee40
2 changed files with 134 additions and 8 deletions

13
.vscode/launch.json vendored
View File

@ -5,21 +5,18 @@
"version": "0.2.0",
"configurations": [
{
"name": "Python: データ取り込みローカル実行",
"name": "Batch Sample",
"type": "python",
"request": "launch",
// windows\
"program": "ecs\\dataimport\\dataimport\\controller.py",
"program": "entrypoint.py",
"console": "integratedTerminal",
"justMyCode": true,
"envFile": "${workspaceFolder}/.env"
},
{
"name": "Python: Attach using Process Id",
{ "name": "Python: Current File",
"type": "python",
"request": "attach",
"processId": "${command:pickProcess}",
"justMyCode": true
"request": "test",
"console": "integratedTerminal"
}
]
}

View File

@ -0,0 +1,129 @@
from src.batch.ultmarc.utmp_tables.tables.ultmarc_table import UltmarcTable
class ComPharm(UltmarcTable):
"""レイアウト区分102: COM_薬局"""
dcfhp_id: str # DCF コード(ID)
dcfhp_code: str # DCF コード(コード)
dcfhp_yobi: str # DCF コード(予備)
maint_flag: str # 修正区分
maintdate: str # メンテナンス年月日
# 予備/転送年月日(未使用)
unconf_flg: str # 未確認フラグ
del_cd: str # 削除予定理由
duphp_id: str # 重複時相手先コード(レコードID)
duphp_cd: str # 重複時相手先コード(施設コード)
duphp_yobi: str # 重複時相手先コード(予備)
hp_name: str # 正式施設名(漢字)
hp_name_kana: str # 正式施設名(カナ)
hp_ryaku_name: str # 略式施設名(漢字)
hp_ryaku_name_kana: str # 略式施設名(カナ)
hp_addr_lost_code: str # 住所不明
prefc_cd: str # 住所コード(県コード)
city_cd: str # 住所コード(市区町村コード)
addrcode1: str # 住所コード(大字・通称コード)
addrcode2: str # 住所コード(字・丁目コード)
zip_code: str # 郵便番号
addr: str # 住所(漢字)
addr_kana: str # 住所(カナ)
addr_number: str # 住所表示番号
addrkanjcnt1: str # 住所文字カウント:漢字(県)
addrkanjcnt2: str # 住所文字カウント:漢字(市区町村)
addrkanjcnt3: str # 住所文字カウント:漢字(大字・通称)
addrkanjcnt4: str # 住所文字カウント:漢字(字・丁目)
addrkanacnt1: str # 住所文字カウント:カナ(県)
addrkanacnt2: str # 住所文字カウント:カナ(市区町村)
addrkanacnt3: str # 住所文字カウント:カナ(大字・通称)
addrkanacnt4: str # 住所文字カウント:カナ(字・丁目)
tel_nothing_flag: str # 電話番号なしフラグ
tel_number: str # 電話番号
mgtclass_code: str # 経営体
hpclass_code: str # 施設区分
president: str # 代表者(漢字)
president_Kana: str # 代表者(カナ)
open_flag: str # 開業予定(フラグ)
open_yearmonth: str # 開業予定(年月)
close_flg: str # 休院(休院フラグ)
close_yearmonth: str # 休院(開始年月)
pharmacist: str # 管理薬剤師名(漢字)
pharmacist_kana: str # 管理薬剤師名(カナ)
franchise_hq_id: str # チェーン店本部コード(レコードID)
franchise_hq_cd: str # チェーン店本部コード(施設コード)
franchise_hq_yobi: str # チェーン店本部コード(予備)
dcfdsf_inst_cd: str # 施設コード
village_code: str # 町字コード
addr_count_kana: str # 住所カウントカナ
addr_count: str # 住所カウント
dup_opp_cd: str # 重複時相手先コード
franchise_hq_cd: str # チェーン店本部コード
def __init__(self, record: list[str]):
super().__init__(record)
self.dcfhp_id = record[2] # DCF コード(ID)
self.dcfhp_cd = record[3] # DCF コード(コード)
self.dcfhp_yobi = record[4] # DCF コード(予備)
self.maint_flag = record[5] # 修正区分
self.maintdate = record[6] # メンテナンス年月日
# 予備/転送年月日(未使用)
self.unconf_flg = record[8].strip() # 未確認フラグ
self.del_cd = record[9].strip() # 削除予定理由
self.duphp_id = record[10].strip() # 重複時相手先コード(レコードID)
self.duphp_cd = record[11].strip() # 重複時相手先コード(施設コード)
self.duphp_yobi = record[12].strip() # 重複時相手先コード(予備)
self.hp_name = record[13].strip() # 正式施設名(漢字)
self.hp_name_kana = record[14].strip() # 正式施設名(カナ)
self.hp_ryaku_name = record[15].strip() # 略式施設名(漢字)
self.hp_ryaku_name_kana = record[16].strip() # 略式施設名(カナ)
self.hp_addr_lost_code = record[17].strip() # 住所不明
self.prefc_cd = record[18].strip() # 住所コード(県コード)
self.city_cd = record[19].strip() # 住所コード(市区町村コード)
self.addrcode1 = record[20].strip() # 住所コード(大字・通称コード)
self.addrcode2 = record[21].strip() # 住所コード(字・丁目コード)
self.zip_code = record[22].strip() # 郵便番号
self.addr = record[23] # 住所(漢字)
self.addr_kana = record[24] # 住所(カナ)
self.addr_number = record[25] # 住所表示番号
self.addrkanjcnt1 = record[26].strip() # 住所文字カウント:漢字(県)
self.addrkanjcnt2 = record[27].strip() # 住所文字カウント:漢字(市区町村)
self.addrkanjcnt3 = record[28].strip() # 住所文字カウント:漢字(大字・通称)
self.addrkanjcnt4 = record[29].strip() # 住所文字カウント:漢字(字・丁目)
self.addrkanacnt1 = record[30].strip() # 住所文字カウント:カナ(県)
self.addrkanacnt2 = record[31].strip() # 住所文字カウント:カナ(市区町村)
self.addrkanacnt3 = record[32].strip() # 住所文字カウント:カナ(大字・通称)
self.addrkanacnt4 = record[33].strip() # 住所文字カウント:カナ(字・丁目)
self.tel_nothing_flag = record[34].strip() # 電話番号なしフラグ
self.tel_number = record[35].strip() # 電話番号
self.mgtclass_code = record[36].strip() # 経営体
self.hpclass_code = record[37].strip() # 施設区分
self.president = record[38] .strip() # 代表者(漢字)
self.president_Kana = record[39].strip() # 代表者(カナ)
self.open_flag = record[40].strip() # 開業予定(フラグ)
self.open_yearmonth = record[41].strip() # 開業予定(年月)
self.close_flg = record[42].strip() # 休院(休院フラグ)
self.close_yearmonth = record[43].strip() # 休院(開始年月)
self.pharmacist = record[44] # 管理薬剤師名(漢字)
self.pharmacist_kana = record[45] # 管理薬剤師名(カナ)
self.franchise_hq_id = record[46] # チェーン店本部コード(レコードID)
self.franchise_hq_cd = record[47] # チェーン店本部コード(施設コード)
self.franchise_hq_yobi = record[48] # チェーン店本部コード(予備)
# 施設コード(2+3+4)
self.dcfdsf_inst_cd = ''.join([self.dcfhp_id, self.dcfhp_cd, self.dcfhp_yobi])
# 町字コード(18+19+20+21)
self.village_code = ''.join([self.prefc_cd, self.city_cd, self.addrcode1, self.addrcode2])
# 住所カウントカナ(30+31+32+33)
self.addr_count_kana = ''.join([self.addrkanacnt1, self.addrkanacnt2, self.addrkanacnt3, self.addrkanacnt4])
# 住所カウント(26+27+28+29)
self.addr_count = ''.join([self.addrkanjcnt1, self.addrkanjcnt2, self.addrkanjcnt3, self.addrkanjcnt4])
# 重複時相手先コード(10+11+12)
self.dup_opp_cd = ''.join([self.duphp_id, self.duphp_cd, self.duphp_yobi])
# チェーン店本部コード(46+47+48)
self.franchise_hq_cd = ''.join([self.franchise_hq_id, self.franchise_hq_cd, self.franchise_hq_yobi])