/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：WC0231ETMsg
*	ソースファイル名：WC0231ETMsg.java
*	作成者			：EK909290
*	日付			：2012年01月31日
*＜機能概要＞
*	視聴制御HULFT送信実績スキーマクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ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 WC0231ETMsg extends CAANSchemaInfo {

    /**
     * DBテーブル名
     */
    private static final String TABLE_NAME = "WC_T_WC_HULFT_SDJSK";

    /**
     * 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},  // 機能コード
        {"WC_HULFT_SDJSK_NO", "String", "WC_HULFT_SDJSK_NO", PRIMARYKEY},  // 視聴制御HULFT送信実績番号
        {"HULFT_SEND_DTM", "String", "HULFT_SEND_DTM", null},  // HULFT送信年月日時分秒
        {"SEND_FILE_NM", "String", "SEND_FILE_NM", null},  // 送信ファイル名
        {"RENKEI_FILE_NM", "String", "RENKEI_FILE_NM", null},  // 連携ファイル名
        {"KEIZK_JOB_ID", "String", "KEIZK_JOB_ID", null},  // 継続ジョブID
        {"DLYD_TRN_REQ_NO", "String", "DLYD_TRN_REQ_NO", null},  // ディレイド処理依頼番号
        {"TAKNKIKI_INF_CST_FILE_NM", "String", "TAKNKIKI_INF_CST_FILE_NM", 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},  // 無効フラグ
        {"WC_HULFT_SDJSK_NO_err", "String", null, null},  // 視聴制御HULFT送信実績番号エラー
        {"HULFT_SEND_DTM_err", "String", null, null},  // HULFT送信年月日時分秒エラー
        {"SEND_FILE_NM_err", "String", null, null},  // 送信ファイル名エラー
        {"RENKEI_FILE_NM_err", "String", null, null},  // 連携ファイル名エラー
        {"KEIZK_JOB_ID_err", "String", null, null},  // 継続ジョブIDエラー
        {"DLYD_TRN_REQ_NO_err", "String", null, null},  // ディレイド処理依頼番号エラー
        {"TAKNKIKI_INF_CST_FILE_NM_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;

    /**
     * 視聴制御HULFT送信実績番号
     */
    public static final String WC_HULFT_SDJSK_NO;

    /**
     * HULFT送信年月日時分秒
     */
    public static final String HULFT_SEND_DTM;

    /**
     * 送信ファイル名
     */
    public static final String SEND_FILE_NM;

    /**
     * 連携ファイル名
     */
    public static final String RENKEI_FILE_NM;

    /**
     * 継続ジョブID
     */
    public static final String KEIZK_JOB_ID;

    /**
     * ディレイド処理依頼番号
     */
    public static final String DLYD_TRN_REQ_NO;

    /**
     * 宅内機器情報抽出ファイル名
     */
    public static final String TAKNKIKI_INF_CST_FILE_NM;

    /**
     * 登録年月日時分秒
     */
    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;

    /**
     * 視聴制御HULFT送信実績番号エラー
     */
    public static final String WC_HULFT_SDJSK_NO_ERR;

    /**
     * HULFT送信年月日時分秒エラー
     */
    public static final String HULFT_SEND_DTM_ERR;

    /**
     * 送信ファイル名エラー
     */
    public static final String SEND_FILE_NM_ERR;

    /**
     * 連携ファイル名エラー
     */
    public static final String RENKEI_FILE_NM_ERR;

    /**
     * 継続ジョブIDエラー
     */
    public static final String KEIZK_JOB_ID_ERR;

    /**
     * ディレイド処理依頼番号エラー
     */
    public static final String DLYD_TRN_REQ_NO_ERR;

    /**
     * 宅内機器情報抽出ファイル名エラー
     */
    public static final String TAKNKIKI_INF_CST_FILE_NM_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";
        WC_HULFT_SDJSK_NO = "WC_HULFT_SDJSK_NO";
        HULFT_SEND_DTM = "HULFT_SEND_DTM";
        SEND_FILE_NM = "SEND_FILE_NM";
        RENKEI_FILE_NM = "RENKEI_FILE_NM";
        KEIZK_JOB_ID = "KEIZK_JOB_ID";
        DLYD_TRN_REQ_NO = "DLYD_TRN_REQ_NO";
        TAKNKIKI_INF_CST_FILE_NM = "TAKNKIKI_INF_CST_FILE_NM";
        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";
        WC_HULFT_SDJSK_NO_ERR = "WC_HULFT_SDJSK_NO_err";
        HULFT_SEND_DTM_ERR = "HULFT_SEND_DTM_err";
        SEND_FILE_NM_ERR = "SEND_FILE_NM_err";
        RENKEI_FILE_NM_ERR = "RENKEI_FILE_NM_err";
        KEIZK_JOB_ID_ERR = "KEIZK_JOB_ID_err";
        DLYD_TRN_REQ_NO_ERR = "DLYD_TRN_REQ_NO_err";
        TAKNKIKI_INF_CST_FILE_NM_ERR = "TAKNKIKI_INF_CST_FILE_NM_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カラム名がありません", "WC0231ETMsg", msgName);
        }
        return clm;
    }

}
