/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CH0961ETMsg
*	ソースファイル名：CH0961ETMsg.java
*	作成者			：EK967613
*	日付			：2023年10月26日
*＜機能概要＞
*	お得額表示管理スキーマクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*
********************************************************************************/

package eo.ejb.cbm.entity;

import java.util.HashMap;
import java.util.MissingResourceException;
import com.fujitsu.futurity.model.base.CAANSchemaInfo;

public class CH0961ETMsg extends CAANSchemaInfo {

    /**
     * DBテーブル名
     */
    private static final String TABLE_NAME = "CH_T_OTOKGK_DSP_KNRI";

    /**
     * DBカラム名対応表
     */
    private static final HashMap DBCOLUMN_MAP;

    /**
     * 内部スキーマ項目の配列
     */
    private static final Object[][] CONTENTS = {
        {"templateID", "String", null, null},  // サービスIF_ID
        {"eventID", "String", null, null},  // イベントＩＤ
        {"identifyCD", "String", null, null},  // 識別コード
        {"status", "int", null, null},  // ステータス
        {"operatorID", "String", null, null},  // オペレータ_ID
        {"operateDate", "String", null, null},  // 運用日付
        {"operateDatetime", "String", null, null},  // 運用日時
        {"ac_group_cd", "String", null, null},  // 権限制御用項目
        {"func_code", "String", null, null},  // 機能コード
        {"SEIKY_NO", "String", "SEIKY_NO", null},  // 請求番号
        {"SEIKY_KEI_NO", "String", "SEIKY_KEI_NO", PRIMARYKEY},  // 請求契約番号
        {"SEIKY_YM", "String", "SEIKY_YM", PRIMARYKEY},  // 請求年月
        {"OTOKGK_DATA_SBT", "String", "OTOKGK_DATA_SBT", PRIMARYKEY},  // お得額データ種別
        {"SEIRI_NO", "String", "SEIRI_NO", null},  // 整理番号
        {"OTOKGK_SVC_SBT", "String", "OTOKGK_SVC_SBT", null},  // お得額サービス種別
        {"SVC_KEI_NO", "String", "SVC_KEI_NO", PRIMARYKEY},  // サービス契約番号
        {"PRC_GRP_CD", "String", "PRC_GRP_CD", PRIMARYKEY},  // 料金グループコード
        {"PCRS_CD", "String", "PCRS_CD", PRIMARYKEY},  // 料金コースコード
        {"PRC_SVC_CD", "String", "PRC_SVC_CD", PRIMARYKEY},  // 料金サービスコード
        {"PRC_KMK_CD", "String", "PRC_KMK_CD", PRIMARYKEY},  // 料金項目コード
        {"SVC_DTL_SKBT_NO", "String", "SVC_DTL_SKBT_NO", PRIMARYKEY},  // サービス詳細識別番号
        {"SEIKY_UCWK_NO", "String", "SEIKY_UCWK_NO", PRIMARYKEY},  // 請求内訳番号
        {"GSAN_SEIKY_YM", "String", "GSAN_SEIKY_YM", PRIMARYKEY},  // 合算請求年月
        {"USE_STAYMD", "String", "USE_STAYMD", null},  // 利用開始年月日
        {"USE_ENDYMD", "String", "USE_ENDYMD", null},  // 利用終了年月日
        {"AMNT", "String", "AMNT", null},  // 金額
        {"SEIKY_NO_err", "String", null, null},  // 請求番号エラー
        {"SEIKY_KEI_NO_err", "String", null, null},  // 請求契約番号エラー
        {"SEIKY_YM_err", "String", null, null},  // 請求年月エラー
        {"OTOKGK_DATA_SBT_err", "String", null, null},  // お得額データ種別エラー
        {"SEIRI_NO_err", "String", null, null},  // 整理番号エラー
        {"OTOKGK_SVC_SBT_err", "String", null, null},  // お得額サービス種別エラー
        {"SVC_KEI_NO_err", "String", null, null},  // サービス契約番号エラー
        {"PRC_GRP_CD_err", "String", null, null},  // 料金グループコードエラー
        {"PCRS_CD_err", "String", null, null},  // 料金コースコードエラー
        {"PRC_SVC_CD_err", "String", null, null},  // 料金サービスコードエラー
        {"PRC_KMK_CD_err", "String", null, null},  // 料金項目コードエラー
        {"SVC_DTL_SKBT_NO_err", "String", null, null},  // サービス詳細識別番号エラー
        {"SEIKY_UCWK_NO_err", "String", null, null},  // 請求内訳番号エラー
        {"GSAN_SEIKY_YM_err", "String", null, null},  // 合算請求年月エラー
        {"USE_STAYMD_err", "String", null, null},  // 利用開始年月日エラー
        {"USE_ENDYMD_err", "String", null, null},  // 利用終了年月日エラー
        {"AMNT_err", "String", null, null}  // 金額エラー
    };

    /**
     * サービスIF_ID
     */
    public static final String TEMPLATEID;

    /**
     * イベントＩＤ
     */
    public static final String EVENTID;

    /**
     * 識別コード
     */
    public static final String IDENTIFYCD;

    /**
     * ステータス
     */
    public static final String STATUS;

    /**
     * オペレータ_ID
     */
    public static final String OPERATORID;

    /**
     * 運用日付
     */
    public static final String OPERATEDATE;

    /**
     * 運用日時
     */
    public static final String OPERATEDATETIME;

    /**
     * 権限制御用項目
     */
    public static final String AC_GROUP_CD;

    /**
     * 機能コード
     */
    public static final String FUNC_CODE;

    /**
     * 請求番号
     */
    public static final String SEIKY_NO;

    /**
     * 請求契約番号
     */
    public static final String SEIKY_KEI_NO;

    /**
     * 請求年月
     */
    public static final String SEIKY_YM;

    /**
     * お得額データ種別
     */
    public static final String OTOKGK_DATA_SBT;

    /**
     * 整理番号
     */
    public static final String SEIRI_NO;

    /**
     * お得額サービス種別
     */
    public static final String OTOKGK_SVC_SBT;

    /**
     * サービス契約番号
     */
    public static final String SVC_KEI_NO;

    /**
     * 料金グループコード
     */
    public static final String PRC_GRP_CD;

    /**
     * 料金コースコード
     */
    public static final String PCRS_CD;

    /**
     * 料金サービスコード
     */
    public static final String PRC_SVC_CD;

    /**
     * 料金項目コード
     */
    public static final String PRC_KMK_CD;

    /**
     * サービス詳細識別番号
     */
    public static final String SVC_DTL_SKBT_NO;

    /**
     * 請求内訳番号
     */
    public static final String SEIKY_UCWK_NO;

    /**
     * 合算請求年月
     */
    public static final String GSAN_SEIKY_YM;

    /**
     * 利用開始年月日
     */
    public static final String USE_STAYMD;

    /**
     * 利用終了年月日
     */
    public static final String USE_ENDYMD;

    /**
     * 金額
     */
    public static final String AMNT;

    /**
     * 請求番号エラー
     */
    public static final String SEIKY_NO_ERR;

    /**
     * 請求契約番号エラー
     */
    public static final String SEIKY_KEI_NO_ERR;

    /**
     * 請求年月エラー
     */
    public static final String SEIKY_YM_ERR;

    /**
     * お得額データ種別エラー
     */
    public static final String OTOKGK_DATA_SBT_ERR;

    /**
     * 整理番号エラー
     */
    public static final String SEIRI_NO_ERR;

    /**
     * お得額サービス種別エラー
     */
    public static final String OTOKGK_SVC_SBT_ERR;

    /**
     * サービス契約番号エラー
     */
    public static final String SVC_KEI_NO_ERR;

    /**
     * 料金グループコードエラー
     */
    public static final String PRC_GRP_CD_ERR;

    /**
     * 料金コースコードエラー
     */
    public static final String PCRS_CD_ERR;

    /**
     * 料金サービスコードエラー
     */
    public static final String PRC_SVC_CD_ERR;

    /**
     * 料金項目コードエラー
     */
    public static final String PRC_KMK_CD_ERR;

    /**
     * サービス詳細識別番号エラー
     */
    public static final String SVC_DTL_SKBT_NO_ERR;

    /**
     * 請求内訳番号エラー
     */
    public static final String SEIKY_UCWK_NO_ERR;

    /**
     * 合算請求年月エラー
     */
    public static final String GSAN_SEIKY_YM_ERR;

    /**
     * 利用開始年月日エラー
     */
    public static final String USE_STAYMD_ERR;

    /**
     * 利用終了年月日エラー
     */
    public static final String USE_ENDYMD_ERR;

    /**
     * 金額エラー
     */
    public static final String AMNT_ERR;

    /**
     * 静的初期化子です。
     * 項目名定数の値を設定します。
     * DBカラム名対応表を作成します。
     */
    static {
        TEMPLATEID = "templateID";
        EVENTID = "eventID";
        IDENTIFYCD = "identifyCD";
        STATUS = "status";
        OPERATORID = "operatorID";
        OPERATEDATE = "operateDate";
        OPERATEDATETIME = "operateDatetime";
        AC_GROUP_CD = "ac_group_cd";
        FUNC_CODE = "func_code";
        SEIKY_NO = "SEIKY_NO";
        SEIKY_KEI_NO = "SEIKY_KEI_NO";
        SEIKY_YM = "SEIKY_YM";
        OTOKGK_DATA_SBT = "OTOKGK_DATA_SBT";
        SEIRI_NO = "SEIRI_NO";
        OTOKGK_SVC_SBT = "OTOKGK_SVC_SBT";
        SVC_KEI_NO = "SVC_KEI_NO";
        PRC_GRP_CD = "PRC_GRP_CD";
        PCRS_CD = "PCRS_CD";
        PRC_SVC_CD = "PRC_SVC_CD";
        PRC_KMK_CD = "PRC_KMK_CD";
        SVC_DTL_SKBT_NO = "SVC_DTL_SKBT_NO";
        SEIKY_UCWK_NO = "SEIKY_UCWK_NO";
        GSAN_SEIKY_YM = "GSAN_SEIKY_YM";
        USE_STAYMD = "USE_STAYMD";
        USE_ENDYMD = "USE_ENDYMD";
        AMNT = "AMNT";
        SEIKY_NO_ERR = "SEIKY_NO_err";
        SEIKY_KEI_NO_ERR = "SEIKY_KEI_NO_err";
        SEIKY_YM_ERR = "SEIKY_YM_err";
        OTOKGK_DATA_SBT_ERR = "OTOKGK_DATA_SBT_err";
        SEIRI_NO_ERR = "SEIRI_NO_err";
        OTOKGK_SVC_SBT_ERR = "OTOKGK_SVC_SBT_err";
        SVC_KEI_NO_ERR = "SVC_KEI_NO_err";
        PRC_GRP_CD_ERR = "PRC_GRP_CD_err";
        PCRS_CD_ERR = "PCRS_CD_err";
        PRC_SVC_CD_ERR = "PRC_SVC_CD_err";
        PRC_KMK_CD_ERR = "PRC_KMK_CD_err";
        SVC_DTL_SKBT_NO_ERR = "SVC_DTL_SKBT_NO_err";
        SEIKY_UCWK_NO_ERR = "SEIKY_UCWK_NO_err";
        GSAN_SEIKY_YM_ERR = "GSAN_SEIKY_YM_err";
        USE_STAYMD_ERR = "USE_STAYMD_err";
        USE_ENDYMD_ERR = "USE_ENDYMD_err";
        AMNT_ERR = "AMNT_err";

        HashMap tmpMap = new HashMap();
        for (int i = 0; i < CONTENTS.length; i++) {
            if (CONTENTS[i][2] != null) {
                tmpMap.put(CONTENTS[i][0], CONTENTS[i][2]);
            }
        }
        DBCOLUMN_MAP = tmpMap;
    }

    /**
     * 項目の配列を取得します。
     * @return 項目の配列
     */
    public Object[][] getContents() {
        return CONTENTS;
    }

    /**
     * 項目の配列を取得します。
     * @return 項目の配列
     */
    public static Object[][] getSchemaContents() {
        return CONTENTS;
    }

    /**
     * DBテーブル名を取得します。
     * @return DBテーブル名
     */
    public static String getTableName() {
        return TABLE_NAME;
    }

    /**
     * 内部スキーマの項目名からDBカラム名を取得します。
     * @param msgName 内部スキーマ項目名
     * @return DBカラム名
     */
    public static String getDBColumnName(String msgName) {
        String clm = (String)DBCOLUMN_MAP.get(msgName);
        if (clm == null) {
            throw new MissingResourceException
                ("スキーマに該当項目のDBカラム名がありません", "CH0961ETMsg", msgName);
        }
        return clm;
    }

}
