/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom					 *
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JFUMkmInfoAddFrontiaCodeConstCC
*	ソースファイル名	：JFUMkmInfoAddFrontiaCodeConstCC.java
*	作成者				：富士通　
*	作成日				：2022年01月27日
*＜機能概要＞
*　フロンティア申込内容登録コード用のコード値定数クラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	58.0.0	2022/1/27	FJ			ANK-4217-00-00_一般Webサービス申込機能再構築に伴うAPI作成
*	60.0.0	2022/7/21	FJ			ANK-4231-00-00_OMO構想対応
*   66.0.0	2023/6/8	FJ) 西川	ANK-4412-00-00_FRONTIERからの改善要望対応(2023年6月下旬リリース)
*   68.0.0	2023/10/31	FJ) 西川	ANK-4416-00-00_紹介コード、提携先企業向けエントリーコード同時入力対応
*  v71.00   2024/04/02  FJ) 張本    【ANK-4468-00-00】eo光ネット「シンプルプラン」追加対応
*   67.0.0	2023/08/09	FJ) 飯田	ANK-4467-00-00_FRONTIERのマンション導線巻き取りに伴うAPI変更
*  v73.00   2024/11/20  FJ) 張本    【ANK-4427-00-00】NTT卸対応
*********************************************************************/
package com.fujitsu.futurity.bp.custom.constant;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

import com.fujitsu.futurity.bp.custom.common.JCCBPCommon;

import eo.common.constant.JCRStrConst;
import eo.common.util.JCRUtilCommon;


/**
 * フロンティア申込内容登録コード値定数クラス.
 * <br>
 * @author FJ
 */
public class JFUMkmInfoAddFrontiaCodeConstCC {
	/** 定数ファイルパス取得キー */
	private static final String FRONTIAMSKM_CONST_FILE_PATH = "FRONTIAMSKM_CONST_FILE_PATH";
	/** 定数ファイル */
	private static final String FILE_PATH = JCCBPCommon.getApplicationConst(FRONTIAMSKM_CONST_FILE_PATH);
	
	/** コード値チェック 処理区分 */
	public static String[] CODE_FUNC_CODE = new String[] {};
	/** コード値チェック 利用場所の形態 */
	public static String[] CODE_SETPLACE_FORM = new String[] {};
	/** コード値チェック 住所番地 */
	public static String[] CODE_SETPLACE_BNCHI = new String[] {};
	/** コード値チェック 利用中のネット回線 */
	public static String[] CODE_USE_NET_KSN = new String[] {};
	/** コード値チェック 利用中の機器の設置場所変更予定 */
	public static String[] CODE_KIKI_PLACE_CHG = new String[] {};
	/** コード値チェック 宅内調査と工事の同日実施 */
	public static String[] CODE_TKC_KOJI_SAME = new String[] {};
	/** コード値チェック 契約種別 */
	public static String[] CODE_KEI_SBT = new String[] {};
	/** コード値チェック 性別 */
	public static String[] CODE_SEX = new String[] {};
	/** コード値チェック 契約者住所選択 */
	public static String[] CODE_KSHADD_CMF = new String[] {};
	/** コード値チェック 連絡先選択 */
	public static String[] CODE_RRKS_CHOICE = new String[] {};
	/** コード値チェック ＦＡＸ連絡希望選択 */
	public static String[] CODE_FAX_KIBO = new String[] {};
	/** コード値チェック 契約者住所上書フラグ */
	public static String[] CODE_KSHADD_OVERWRITE_FLG = new String[] {};
	/** コード値チェック 関西電力とのお客様情報の授受について */
	public static String[] CODE_KEPCO_CUSTINFO_JUJU_DOI_UM = new String[] {};
	/** コード値チェック 関電Ｇ個人情報取扱同意有無 */
	public static String[] CODE_KEPG_KJNIF_TRAT_DOI_UM = new String[] {};
	/** コード値チェック 関電Ｇ個人情報提供不可フラグ */
	public static String[] CODE_KEPG_KJNIFT_FFG = new String[] {};
	/** コード値チェック メール受信設定（選択状態） */
	public static String[] CODE_MAIL_JUSIN_SETTEI_SEL = new String[] {};
	/** コード値チェック ２０歳未満フラグ */
	public static String[] CODE_UNDER_20_FLG = new String[] {};
	/** コード値チェック 親権者続柄コード */
	public static String[] CODE_SKSHA_ZOKUGARA_CD = new String[] {};
	/** コード値チェック 連絡先続柄コード */
	public static String[] CODE_RRKS_ZOKUGARA_CD = new String[] {};
	/** コード値チェック ソーシャルＩＤ種別 */
	public static String[] CODE_SOCIAL_ID_SBT = new String[] {};
	/** コード値チェック 光ネットコース */
	public static String[] CODE_NET_COURSE = new String[] {};
	/** コード値チェック 即割 */
	public static String[] CODE_NET_SOKUWARI = new String[] {};
	/** コード値チェック 長割 */
	public static String[] CODE_NET_CHOWARI = new String[] {};
	/** コード値チェック 自動継続 */
	public static String[] CODE_AUTO_KEIZOKU = new String[] {};
	/** コード値チェック 多機能ルーター */
	public static String[] CODE_TKN_ROUTER_MSKM = new String[] {};
	/** コード値チェック ＳＭＰお申し込み */
	public static String[] CODE_NET_STICK_STB_MSKM = new String[] {};
	/** コード値チェック ＳＭＰお申し込み台数 */
	public static String[] CODE_NET_STICK_STB_MSKM_CNT = new String[] {};
	/** コード値チェック 無線ＬＡＮ中継機レンタル */
	public static String[] CODE_PLC_MSKM = new String[] {};
	/** コード値チェック ｅｏメッシュＷｉ−Ｆｉ */
	public static String[] CODE_MESH_WIFI = new String[] {};
	/** コード値チェック リモートサポートプラス */
	public static String[] CODE_RMTSPRT_MSKM = new String[] {};
	/** コード値チェック ｅｏセキュリティーパック */
	public static String[] CODE_SECURITY_PACK_MSKM = new String[] {};
	/** コード値チェック インターネットサギウォール */
	public static String[] CODE_INETSGWL_MSKM = new String[] {};
	/** コード値チェック ノートンファミリープレミア */
	public static String[] CODE_NTFMLPRM_MSKM = new String[] {};
	/** コード値チェック ｅｏ光電話コース */
	public static String[] CODE_EOTEL_COURSE = new String[] {};
	/** コード値チェック 番ポ利用有無 */
	public static String[] CODE_USE_BMP = new String[] {};
	/** コード値チェック 番ポ・ＮＴＴ番号移転手続き選択 */
	public static String[] CODE_NTT_NO_ITEN_TTDK_CHOICE = new String[] {};
	/** コード値チェック 番ポ・住所選択 */
	public static String[] CODE_BMP_AD_CHOICE = new String[] {};
	/** コード値チェック 番ポ・設置場所住所選択 */
	public static String[] CODE_BMP_STC_PLACE_AD_CHOICE = new String[] {};
	/** コード値チェック 番ポ・契約者名義選択 */
	public static String[] CODE_BMP_KSHNM_CHOICE = new String[] {};
	/** コード値チェック 発信者番号通知 */
	public static String[] CODE_HASHINNO_TCH = new String[] {};
	/** コード値チェック 発信者番号表示 */
	public static String[] CODE_HASHINNO_DSP = new String[] {};
	/** コード値チェック 非通知着信拒否 */
	public static String[] CODE_HITSUCHI_DNY = new String[] {};
	/** コード値チェック あんしん電話パック */
	public static String[] CODE_EASE_PACK = new String[] {};
	/** コード値チェック テレビコース（ｅｏ光テレビ入力） */
	public static String[] CODE_EO_TV_COURSE = new String[] {};
	/** コード値チェック テレビチューナー台数 */
	public static String[] CODE_STB_CNT = new String[] {};
	/** コード値チェック ガイド誌数 */
	public static String[] CODE_GUIDEMG_CNT = new String[] {};
	/** コード値チェック テレビチューナー・種類 */
	public static String[] CODE_STB_HD = new String[] {};
	/** コード値チェック 支払方法選択 */
	public static String[] CODE_PAYWAY = new String[] {};
	/** コード値チェック 標準工事費お支払い方法 */
	public static String[] CODE_STDARD_KOJIHI_PAYWAY = new String[] {};
//	/** コード値チェック 定額サービス */
//	public String[] CODE_TEGAK_SVC_COURSE = new String[] {};
	/** コード値チェック ｍｉｎｅｏセット割申請方法 */
	public static String[] CODE_MINEO_SETPLAN_KBN = new String[] {};
	/** コード値チェック 電子書面交付同意 */
	public static String[] CODE_DNSKH_DOI_UM_SCREEN = new String[] {};
	/** コード値チェック ｅｏ電気同時申込意思有無 */
	public static String[] CODE_EOELEC_DOJI_MSKM_ISHI_UM = new String[] {};
	/** コード値チェック ｅｏ電気案内希望 */
	public static String[] CODE_ELEC_GUIDE_KIBO = new String[] {};
	/** コード値チェック 架電希望指定日 */
	public static String[] CODE_ELEC_GUIDE_KIBO_DAY = new String[] {};
	/** コード値チェック 架電希望指定時間 */
	public static String[] CODE_ELEC_GUIDE_KIBO_TIME = new String[] {};
	/** コード値チェック 新住所での再点 */
	public static String[] CODE_ELEC_GUIDE_SAITEN = new String[] {};
	/** コード値チェック キャンペーン処理区分 */
	public static String[] CODE_CAMPAIGN_SHORI_KBN = new String[] {};
	/** コード値チェック キャンペーン種別コード */
	public static String[] CODE_CAMPAIGN_SBT_CD = new String[] {};
	/** コード値チェック コンテンツ処理区分 */
	public static String[] CODE_CONT_SHORI_KBN = new String[] {};
	/** コード値チェック 定額サービス処理区分 */
	public static String[] CODE_TEGAK_SVC_SHORI_KBN = new String[] {};
	/** コード値チェック 定額サービス契約種別コード */
	public static String[] CODE_TEGAK_SVC_KEI_SBT_CD = new String[] {};
	/** コード値チェック 定額サービス機器種別コード */
	public static String[] CODE_TEGAK_SVC_KIKI_SBT_CD = new String[] {};
//	/** コード値チェック テレビチューナー・機器（ */
//	public final String[] CODE_STB_HD_KIKI = new String[] {};
	/** コード値チェック ＰＣプラン */
	public static String[] CODE_KK_COMP_PC_MSKM = new String[] {};
	/** コード値チェック ＰＣワイドプラン */
	public static String[] CODE_KK_COMP_PCW_MSKM = new String[] {};
	/** コード値チェック ＴＶプラン */
	public static String[] CODE_KK_COMP_TV_MSKM = new String[] {};
	/** コード値チェック  クレジット・名義人種別*/
	public static String[] CODE_CR_CARDNMKANA_SBT = new String[] {};
	// ANK-4231-00-00_OMO構想対応
	/** コード値チェック  仮申込保存フラグ */
	public static String[] CODE_KR_MSKM_SAVE_FLG = new String[] {};
	/** コード値チェック  プレ登録保存フラグ */
	public static String[] CODE_PRE_ADD_SAVE_FLG = new String[] {};
	/** コード値チェック  プレ登録住所種別 */
	public static String[] CODE_PRE_ADD_AD_SBT = new String[] {};
	/** コード値チェック  ネット1G申込可否フラグ */
	public static String[] CODE_FLAG_1G = new String[] {};
	/** コード値チェック  ネット10G申込可否フラグ */
	public static String[] CODE_FLAG_10G = new String[] {};
	/** コード値チェック  電話申込可否フラグ */
	public static String[] CODE_FLAG_TEL = new String[] {};
	/** コード値チェック  テレビ申込可否フラグ */
	public static String[] CODE_FLAG_TV = new String[] {};
	/** コード値チェック  関電ガス同時申込意思有無フラグ */
	public static String[] CODE_GAS_MSKM_UM = new String[] {};
	// ANK-4416-00-00 ADD START
	/** コード値チェック  サービス種別 */
	public static String[] CODE_SERVICE_SBT = new String[] {};
	// ANK-4416-00-00 ADD END
	/** コード値チェック 新築物件コード */
	public static String[] CODE_NEWCONST_BUKKEN_CD = new String[] {};
	/** コード値チェック 調査員訪問の希望有無 */
	public static String[] CODE_CHS_VSIT_KIBO_UM = new String[] {};
	// ANK-4467-00-00 ADD START
	/** コード値チェック  コンセント設置内容 */
	public static String[] CODE_CCT_SET_CD = new String[] {};
	// ANK-4467-00-00 ADD END
	/** コード値チェック  利用中のインターネットサービス */
	public static String[] CODE_USE_NET_SVC = new String[] {};
	/** コード値チェック  工事希望 */
	public static String[] CODE_KOJI_KIBO = new String[] {};
	/** コード値チェック  工事希望時間帯 */
	public static String[] CODE_KOJI_KIBOTIME = new String[] {};
	

	/** 処理区分 */
	/** 追加 */
	public static final String SHORI_KBN_ADD = "1";
	/** 削除 */
	public static final String SHORI_KBN_DEL = "2";
	
	// コンストラクタ生成
	public JFUMkmInfoAddFrontiaCodeConstCC() {
		// コンストラクタの宣言部生成
		BufferedReader br = null;
		try
		{
			// 定数ファイル読込み
			br = new BufferedReader(new InputStreamReader(new FileInputStream(new File(JCRUtilCommon.inspection(FILE_PATH))), JCRStrConst.DEFAULT_ENCODE));

			// 定数ファイル一行読込み
			String lineData = br.readLine();

			while (lineData != null)
			{
				if (!("".equals(lineData.trim())))
				{
					String val[] = lineData.split("=");
					String constVal[] = val[1].split(",");
					
//					List<String> ary = Arrays.asList(val[1]);
					String data[] = new String[constVal.length];
					java.lang.reflect.Field field;
					try {
						field = this.getClass().getField(val[0]);
						field.set(data, constVal);
//						for (int i = 0; i < constVal.length; i++) 
//						{
//							field.set(data[i], constVal[i]);
//						}
					} catch (SecurityException e) {
						// TODO 自動生成された catch ブロック
						e.printStackTrace();
					} catch (NoSuchFieldException e) {
						// TODO 自動生成された catch ブロック
						e.printStackTrace();
					} catch (IllegalArgumentException e) {
						// TODO 自動生成された catch ブロック
						e.printStackTrace();
					} catch (IllegalAccessException e) {
						// TODO 自動生成された catch ブロック
						e.printStackTrace();
					}
				}
				// 定数ファイル一行読込み
				lineData = br.readLine();
			}
		}
		catch(IOException ioe)
		{
		}
		finally
		{
			if (br != null)
			{
				try
				{
					br.close();
				}
				catch (IOException ioe)
				{
					;
				}
			}
		}
	}
}