import os.path as path

# 日付テーブル.バッチ処理ステータス：未処理
BATCH_STATUS_PROCESSING = '1'
# 日付テーブル.dump取得状態区分：未処理
DUMP_STATUS_UNPROCESSED = '0'

BIO_TEMPORARY_FILE_DIR_PATH = path.join(path.curdir, 'src', 'data')
BIO_EXCEL_TEMPLATE_FILE_PATH = path.join(BIO_TEMPORARY_FILE_DIR_PATH, 'BioData_template.xlsx')

BIO_EXTRACT_COLUMNS = [
    'slip_org_kbn',
    'slip_mgt_num',
    'rec_ymd',
    'rec_whs_cd',
    'rec_whs_sub_cd',
    'whs_name',
    'rec_whs_org_cd',
    'rec_urag_num',
    'rev_hsdnymd_srk',
    'rec_tran_kbn',
    'tran_kbn_name',
    'mkr_cd',
    'rec_comm_cd',
    'product_name',
    'whs_rep_comm_name',
    'nonyu_fcl_cd',
    'rec_nonyu_fcl_name',
    'whs_rep_nonyu_fcl_name',
    'rec_nonyu_fcl_addr',
    'whs_rep_nonyu_fcl_addr',
    'rec_lot_num',
    'amt_fugo',
    'expr_dt',
    'data_kbn',
    'lot_num_err_flg',
    'bef_slip_mgt_num',
    'ins_usr',
    'ins_dt',
    'inst_cd',
    'inst_name_form',
    'address',
    'tel_num',
    'v_whs_cd',
    'v_whsorg_cd',
    'whs_org_name',
    'v_tran_cd',
    'iko_flg'
]

BIO_CSV_HEADER = [
    'データ種別',
    '伝票管理NO',
    '処理日',
    '卸コード',
    '卸サブコード',
    '卸名',
    '卸組織コード',
    '伝票番号',
    '発伝年月日',
    '卸取引区分',
    '取引区分名',
    '製品コード',
    '統一商品コード',
    '商品名',
    '卸報告商品名',
    '納入先コード',
    '納入先名',
    '卸報告納入先名',
    '納入先住所',
    '卸報告納入先住所',
    'ロット番号',
    '数量',
    '有効期限',
    'データ区分',
    'エラー詳細種別',
    '訂正前伝票管理NO',
    '修正者',
    '修正日時',
    '施設コード',
    '施設名',
    '施設住所',
    '施設電話番号',
    'Veeva卸コード',
    'Veeva卸組織コード',
    '卸組織名',
    'Veeva取引区分コード',
    '移行'
]

SLIP_ORG_KBN_FULL_NAME = {
    'J': 'JD-NET',
    'N': 'NHI',
    'H': '手入力'
}
DATA_KBN_JP_NAME = {
    '0': '正常',
    '1': 'ロットエラー',
    '2': '除外',
    '3': 'ロット不明',
    '9': 'エラー（解消済）',
}
LOT_NO_ERR_FLG_JP_NAME = {
    '0': '正常',
    '1': 'ロットエラー',
    '2': '日付エラー',
    '3': 'ロットエラー（解消済）',
    '4': 'ロットエラー（調査不能）',
    '5': '日付エラー（解消済）',
    '6': '日付エラー（調査不能）',
    '7': '除外（卸都合）',
    '8': '除外（再送信）',
    'Z': '過去データ'
}

LOGOUT_REASON_DO_LOGOUT = 'do_logout'
LOGOUT_REASON_LOGIN_ERROR = 'login_error'
LOGOUT_REASON_BATCH_PROCESSING = 'batch_processing'
LOGOUT_REASON_BATCH_PROCESSING_FOR_MAINTE = 'batch_processing_ult'
LOGOUT_REASON_BACKUP_PROCESSING = 'dump_processing'
LOGOUT_REASON_NOT_LOGIN = 'not_login'
LOGOUT_REASON_DB_ERROR = 'db_error'
LOGOUT_REASON_UNEXPECTED = 'unexpected'

LOGOUT_REASON_MESSAGE_MAP = {
    LOGOUT_REASON_DO_LOGOUT: 'Logoutしました。',
    LOGOUT_REASON_LOGIN_ERROR: '存在しないユーザー、<br>またはパスワードが違います。',
    LOGOUT_REASON_BATCH_PROCESSING: '日次バッチ処理中なので、<br>生物由来データ参照は使用出来ません。',
    LOGOUT_REASON_BATCH_PROCESSING_FOR_MAINTE: '日次バッチ処理中のため、<br>マスタ－メンテは使用出来ません。',
    LOGOUT_REASON_BACKUP_PROCESSING: 'バックアップ取得を開始しました。<br>日次バッチ更新が終了するまでマスターメンテは使用できません',
    LOGOUT_REASON_NOT_LOGIN: 'Loginしてからページにアクセスしてください。',
    LOGOUT_REASON_DB_ERROR: 'DB接続に失敗しました。<br>再度Loginするか、<br>管理者にお問い合わせください。',
    LOGOUT_REASON_UNEXPECTED: '予期しないエラーが発生しました。<br>再度Loginするか、<br>管理者に問い合わせてください。'
}
