/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：KK2321ETMsg
*	ソースファイル名：KK2321ETMsg.java
*	作成者			：EK911023
*	日付			：2012年07月06日
*＜機能概要＞
*	郵便番号別関電営業所候補スキーマクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ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 KK2321ETMsg extends CAANSchemaInfo {

    /**
     * DBテーブル名
     */
    private static final String TABLE_NAME = "KK_M_PCDB_KPCOFC_KHO";

    /**
     * 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},  // 機能コード
        {"PCDB_KPCOFC_KOHO_NO", "String", "PCDB_KPCOFC_KOHO_NO", PRIMARYKEY},  // 郵便番号別関電営業所候補番号
        {"PCD", "String", "PCD", null},  // 郵便番号
        {"PCD_AD_SETMEI_1", "String", "PCD_AD_SETMEI_1", null},  // 郵便番号住所説明１
        {"PCD_AD_SETMEI_2", "String", "PCD_AD_SETMEI_2", null},  // 郵便番号住所説明２
        {"HIKARI_AREA_SVC_STAYMD", "String", "HIKARI_AREA_SVC_STAYMD", null},  // 光エリアサービス開始年月日
        {"KEPCO_BUSIOFFICE_CD", "String", "KEPCO_BUSIOFFICE_CD", null},  // 関電営業所コード
        {"PCDB_KPCOFC_KHO_TSTAYMD", "String", "PCDB_KPCOFC_KHO_TSTAYMD", null},  // 郵便番号別関電営業所候補適用開始年月日
        {"PCDB_KPCOFC_KHO_TENDYMD", "String", "PCDB_KPCOFC_KHO_TENDYMD", null},  // 郵便番号別関電営業所候補適用終了年月日
        {"ADD_DTM", "String", "ADD_DTM", null},  // 登録年月日時分秒
        {"ADD_OPEACNT", "String", "ADD_OPEACNT", null},  // 登録オペレータアカウント
        {"UPD_DTM", "String", "UPD_DTM", null},  // 更新年月日時分秒
        {"UPD_OPEACNT", "String", "UPD_OPEACNT", null},  // 更新オペレータアカウント
        {"DEL_DTM", "String", "DEL_DTM", null},  // 削除年月日時分秒
        {"DEL_OPEACNT", "String", "DEL_OPEACNT", null},  // 削除オペレータアカウント
        {"MK_FLG", "String", "MK_FLG", null},  // 無効フラグ
        {"PCDB_KPCOFC_KOHO_NO_err", "String", null, null},  // 郵便番号別関電営業所候補番号エラー
        {"PCD_err", "String", null, null},  // 郵便番号エラー
        {"PCD_AD_SETMEI_1_err", "String", null, null},  // 郵便番号住所説明１エラー
        {"PCD_AD_SETMEI_2_err", "String", null, null},  // 郵便番号住所説明２エラー
        {"HIKARI_AREA_SVC_STAYMD_err", "String", null, null},  // 光エリアサービス開始年月日エラー
        {"KEPCO_BUSIOFFICE_CD_err", "String", null, null},  // 関電営業所コードエラー
        {"PCDB_KPCOFC_KHO_TSTAYMD_err", "String", null, null},  // 郵便番号別関電営業所候補適用開始年月日エラー
        {"PCDB_KPCOFC_KHO_TENDYMD_err", "String", null, null},  // 郵便番号別関電営業所候補適用終了年月日エラー
        {"ADD_DTM_err", "String", null, null},  // 登録年月日時分秒エラー
        {"ADD_OPEACNT_err", "String", null, null},  // 登録オペレータアカウントエラー
        {"UPD_DTM_err", "String", null, null},  // 更新年月日時分秒エラー
        {"UPD_OPEACNT_err", "String", null, null},  // 更新オペレータアカウントエラー
        {"DEL_DTM_err", "String", null, null},  // 削除年月日時分秒エラー
        {"DEL_OPEACNT_err", "String", null, null},  // 削除オペレータアカウントエラー
        {"MK_FLG_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 PCDB_KPCOFC_KOHO_NO;

    /**
     * 郵便番号
     */
    public static final String PCD;

    /**
     * 郵便番号住所説明１
     */
    public static final String PCD_AD_SETMEI_1;

    /**
     * 郵便番号住所説明２
     */
    public static final String PCD_AD_SETMEI_2;

    /**
     * 光エリアサービス開始年月日
     */
    public static final String HIKARI_AREA_SVC_STAYMD;

    /**
     * 関電営業所コード
     */
    public static final String KEPCO_BUSIOFFICE_CD;

    /**
     * 郵便番号別関電営業所候補適用開始年月日
     */
    public static final String PCDB_KPCOFC_KHO_TSTAYMD;

    /**
     * 郵便番号別関電営業所候補適用終了年月日
     */
    public static final String PCDB_KPCOFC_KHO_TENDYMD;

    /**
     * 登録年月日時分秒
     */
    public static final String ADD_DTM;

    /**
     * 登録オペレータアカウント
     */
    public static final String ADD_OPEACNT;

    /**
     * 更新年月日時分秒
     */
    public static final String UPD_DTM;

    /**
     * 更新オペレータアカウント
     */
    public static final String UPD_OPEACNT;

    /**
     * 削除年月日時分秒
     */
    public static final String DEL_DTM;

    /**
     * 削除オペレータアカウント
     */
    public static final String DEL_OPEACNT;

    /**
     * 無効フラグ
     */
    public static final String MK_FLG;

    /**
     * 郵便番号別関電営業所候補番号エラー
     */
    public static final String PCDB_KPCOFC_KOHO_NO_ERR;

    /**
     * 郵便番号エラー
     */
    public static final String PCD_ERR;

    /**
     * 郵便番号住所説明１エラー
     */
    public static final String PCD_AD_SETMEI_1_ERR;

    /**
     * 郵便番号住所説明２エラー
     */
    public static final String PCD_AD_SETMEI_2_ERR;

    /**
     * 光エリアサービス開始年月日エラー
     */
    public static final String HIKARI_AREA_SVC_STAYMD_ERR;

    /**
     * 関電営業所コードエラー
     */
    public static final String KEPCO_BUSIOFFICE_CD_ERR;

    /**
     * 郵便番号別関電営業所候補適用開始年月日エラー
     */
    public static final String PCDB_KPCOFC_KHO_TSTAYMD_ERR;

    /**
     * 郵便番号別関電営業所候補適用終了年月日エラー
     */
    public static final String PCDB_KPCOFC_KHO_TENDYMD_ERR;

    /**
     * 登録年月日時分秒エラー
     */
    public static final String ADD_DTM_ERR;

    /**
     * 登録オペレータアカウントエラー
     */
    public static final String ADD_OPEACNT_ERR;

    /**
     * 更新年月日時分秒エラー
     */
    public static final String UPD_DTM_ERR;

    /**
     * 更新オペレータアカウントエラー
     */
    public static final String UPD_OPEACNT_ERR;

    /**
     * 削除年月日時分秒エラー
     */
    public static final String DEL_DTM_ERR;

    /**
     * 削除オペレータアカウントエラー
     */
    public static final String DEL_OPEACNT_ERR;

    /**
     * 無効フラグエラー
     */
    public static final String MK_FLG_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";
        PCDB_KPCOFC_KOHO_NO = "PCDB_KPCOFC_KOHO_NO";
        PCD = "PCD";
        PCD_AD_SETMEI_1 = "PCD_AD_SETMEI_1";
        PCD_AD_SETMEI_2 = "PCD_AD_SETMEI_2";
        HIKARI_AREA_SVC_STAYMD = "HIKARI_AREA_SVC_STAYMD";
        KEPCO_BUSIOFFICE_CD = "KEPCO_BUSIOFFICE_CD";
        PCDB_KPCOFC_KHO_TSTAYMD = "PCDB_KPCOFC_KHO_TSTAYMD";
        PCDB_KPCOFC_KHO_TENDYMD = "PCDB_KPCOFC_KHO_TENDYMD";
        ADD_DTM = "ADD_DTM";
        ADD_OPEACNT = "ADD_OPEACNT";
        UPD_DTM = "UPD_DTM";
        UPD_OPEACNT = "UPD_OPEACNT";
        DEL_DTM = "DEL_DTM";
        DEL_OPEACNT = "DEL_OPEACNT";
        MK_FLG = "MK_FLG";
        PCDB_KPCOFC_KOHO_NO_ERR = "PCDB_KPCOFC_KOHO_NO_err";
        PCD_ERR = "PCD_err";
        PCD_AD_SETMEI_1_ERR = "PCD_AD_SETMEI_1_err";
        PCD_AD_SETMEI_2_ERR = "PCD_AD_SETMEI_2_err";
        HIKARI_AREA_SVC_STAYMD_ERR = "HIKARI_AREA_SVC_STAYMD_err";
        KEPCO_BUSIOFFICE_CD_ERR = "KEPCO_BUSIOFFICE_CD_err";
        PCDB_KPCOFC_KHO_TSTAYMD_ERR = "PCDB_KPCOFC_KHO_TSTAYMD_err";
        PCDB_KPCOFC_KHO_TENDYMD_ERR = "PCDB_KPCOFC_KHO_TENDYMD_err";
        ADD_DTM_ERR = "ADD_DTM_err";
        ADD_OPEACNT_ERR = "ADD_OPEACNT_err";
        UPD_DTM_ERR = "UPD_DTM_err";
        UPD_OPEACNT_ERR = "UPD_OPEACNT_err";
        DEL_DTM_ERR = "DEL_DTM_err";
        DEL_OPEACNT_ERR = "DEL_OPEACNT_err";
        MK_FLG_ERR = "MK_FLG_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カラム名がありません", "KK2321ETMsg", msgName);
        }
        return clm;
    }

}
