/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：FUSV0241_FUSV0241OPDBMapper
*	ソースファイル名：FUSV0241_FUSV0241OPDBMapper.java
*	作成者			：富士通
*	日付			：2012年06月21日
*＜機能概要＞
*	BP（引越しナビ住所変更申込照会(ネット)）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v4.00		2012/06/21	FJ)岡井		【ANK-0274-00-00】Web受付引越し受付：新規作成
*   v5.00		2013/02/01	FJ)谷本		【ANK-1441-00-00】フロントＳ引越しナビでのエリア検索（ＰＡＳＣＯ）地図除去対応
*   v50.00		2020/08/27	FJ)大島		【ANK-3805-00-00】無線ルーター機能無料マンション対応
*   v51.00		2020/09/07	FJ)岡井		【ANK-3885-00-00】光化マンションの自動設計対応
*   v56.01      2021/12/06  FJ)美濃原   【ANK-4103-00-00】マンション光コンセントタイプのWeb受付対応
*   v60.00      2022/06/20  FJ)美濃原   【ANK-4244-00-00】【eo定期】MT既設賃貸対応
*   v72.00      2024/09/18  FJ)余野木   【ANK-4577-00-00】シンプルプラン追加対応STEP2
*   v73.00      2024/11/15  FJ) 張本    【ANK-4493-00-00】【eo定期】光配線マンションのコースアップ対応
**********************************************************************/
package eo.web.webview.mapping;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.web.x31.X31BWebBusinessLogic;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;
import com.fujitsu.futurity.web.x33.beans.X33VDataTypeList;

import eo.common.constant.JFUStrConst;
import eo.common.util.JKKStringUtil;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.FUW10401SF.FUW10401SFConst;
import eo.web.webview.common.JFUGetManmosKanri;
import eo.web.webview.common.JFUWebCommon;

/**
 * DataBean-BPマッピングをします。
 * <p>
 * <BR>
 * @author 富士通
 */

public class FUSV0241_FUSV0241OPDBMapper
{
	/* ■ SC */
	/** FUSV024101SC */
	private static final String FUSV024101SC = "FUSV024101SC";
	/** FUSV024102SC */
	private static final String FUSV024102SC = "FUSV024102SC";
	/** FUSV024103SC */
	private static final String FUSV024103SC = "FUSV024103SC";
	/** FUSV024104SC */
	private static final String FUSV024104SC = "FUSV024104SC";
	/** FUSV024105SC */
	private static final String FUSV024105SC = "FUSV024105SC";
	/** FUSV024106SC */
	private static final String FUSV024106SC = "FUSV024106SC";
	/** FUSV024107CC */
	private static final String FUSV024107CC = "JFUGetManmosKanriInfoCC";
	
	/* ■ CC */
	/** FUSV024101CC */
	private static final String FUSV024101CC = "FUSV024101CC";
	/** FUSV024102CC */
	private static final String FUSV024102CC = "FUSV024102CC";

	/* ■ リスト(SC) */
	/** 料金グループコード別料金プラン一覧照会明細 */
	private static final String EKK0591B501CBSMSG1LIST = "EKK0591B501CBSMsg1List";
	/** 業務パラメータ管理一意照会明細 */
	private static final String EZM0321A010CBSMSG1LIST = "EZM0321A010CBSMsg1List";
	/** オプションサービス契約<ISP>一覧照会明細 */
	private static final String EKK0361B001CBSMSG1LIST = "EKK0361B001CBSMsg1List";
	/** 回線使用契約一意照会明細 */
	private static final String EKK0881A010CBSMSG1LIST = "EKK0881A010CBSMsg1List";
	/** 提供方式契約一意照会明細 */
	private static final String EKK0891A010CBSMSG1LIST = "EKK0891A010CBSMsg1List";
	/** 料金グループコード別料金プラン一覧照会 */
	private static final String EKK0591B004CBSMSG1LIST = "EKK0591B004CBSMsg1List";
	/** 棟内空き状況情報一覧照会明細 */
	private static final String EKK3251B010CBSMSG1LIST = "EKK3251B010CBSMsg1List";

	/* ■ 項目ID */
	/** ＫＥＹ＿料金グループコード */
	private static final String KEY_PRC_GRP_CD = "key_prc_grp_cd";
	/** ＫＥＹ＿料金コースコード */
	private static final String KEY_PCRS_CD = "key_pcrs_cd";
	/** ＫＥＹ＿料金プランコード */
	private static final String KEY_PPLAN_CD = "key_pplan_cd";
	/** ＫＥＹ＿サービス契約番号 */
	private static final String KEY_SVC_KEI_NO = "key_svc_kei_no";
	/** ＫＥＹ＿回線使用契約番号 */
	private static final String KEY_KAISEN_USE_KEI_NO = "key_kaisen_use_kei_no";
	/** ＫＥＹ＿料金コース種別コード */
	private static final String KEY_PCRS_SBT_CD = "key_pcrs_sbt_cd";
	/** ＫＥＹ＿回線使用契約番号（ネット） */
	private static final String KEY_NET_KAISEN_USE_KEI_NO = "key_net_kaisen_use_kei_no";
	/** ＫＥＹ＿回線使用契約番号（テレビ） */
	private static final String KEY_TV_KAISEN_USE_KEI_NO = "key_tv_kaisen_use_kei_no";
	/** マンションＩＤ */
	private static final String MANSION_ID = "mansion_id";
	/** ペアＩＤ */
	private static final String PAIRID = "pairid";
	/** ＣＡＴ−ＩＤ */
	private static final String CATID = "catid";
	/** 提供方式コード */
	private static final String TK_HOSHIKI_CD = "tk_hoshiki_cd";
	/** 提供方式契約番号 */
	private static final String NET_TK_HOSHIKI_KEI_NO = "net_tk_hoshiki_kei_no";
	/** Ｐ−ＩＤ */
	private static final String PID = "pid";
	/** 支払方式コード */
	private static final String PAY_HOSHIKI_CD = "pay_hoshiki_cd";
	/** マンションキャンペーンコード（ＮＥＴ） */
	private static final String NET_MANS_CAMPAIGN_CD = "net_mans_campaign_cd";
	/** アクセス回線速度コード */
	private static final String ACCSS_KISN_SPEED_CD = "accss_kisn_speed_cd";
	/** 加入契約申込条件コード */
	private static final String KNYKEI_MSKM_JOKEN_CD = "knykei_mskm_joken_cd";
	/** 棟内速度コード */
	private static final String TONAI_SPEED_CD = "tonai_speed_cd";
	/** ｅｏ光ネット従量プラン申込可否 */
	private static final String EOHNT_JURYO_PLAN_MKM_KH = "eohnt_juryo_plan_mkm_kh";
	/** 提供料金種別コード */
	private static final String TK_PRC_SBT_CD = "tk_prc_sbt_cd";
	/** 光配線１Ｇのみフラグ */
	private static final String HHS_1GONLY_FLG = "hhs_1gonly_flg";
	/** ＢＳパススルー可否 */
	private static final String BSPT_KH = "bspt_kh";
	/** 機能コード */
	private static final String FUNC_CODE = "func_code";
	/** 料金グループコード */
	private static final String PRC_GRP_CD = "prc_grp_cd";
	/** 料金コースコード */
	private static final String PCRS_CD = "pcrs_cd";
	/** 料金プランコード */
	private static final String PPLAN_CD = "pplan_cd";
	/** 表示制御用のマンションコース */
	private static final String MANS_COURSE = "mans_course";
	/** 業務パラメータ設定値 */
	private static final String WORK_PARAM_SETTE_VALUE = "work_param_sette_value";
	/** 光化マンションフラグ */
	private static final String HIKARIKA_MANS_FLG = "hikarika_mans_flg";
	/** 提供方式変更種別 */
	private static final String TK_HOSHIKI_CHG_SBT_CD = "tk_hoshiki_chg_sbt_cd";
	/** マンション提供方式パターンコード */
	private static final String TK_HOSHIKI_PATTERN_CD = "tk_hoshiki_pattern_cd";
	/** ＫＥＹ＿P-ID */
	private static final String KEY_PID = "key_pid";
	/** ＫＥＹ＿ＳＥＱ */
	private static final String KEY_SEQ = "key_seq";
	/** 棟（画面選択値）※画面選択INDEXではなく実際の値 */
	private static final String SELECT_TOU_NO = "select_tou_no";
	/** 部屋（画面選択値）※画面選択INDEXではなく実際の値  */
	private static final String SELECT_RM_NO = "select_rm_no";

	/* ■ XML定義取得関連 */
	/** 定義取得パス 表示数制限 */
	private static final String PATH_DSP_LINE_NUM = "DISPSETTING/SETTING[@screenId='FUW10404']/DISPCTL[@groupid='LINE_DSP_NUM']";
	/** 定義取得パス 料金ボタンクラス名 */
	private static final String PATH_BTN_CLASS = "DISPSETTING/SETTING[@screenId='FUW10404']/DISPCTL[@groupid='BTN_CLASS']";
	/** 定義取得パス 料金コース名 */
	private static final String PATH_PCRS_NM = "DISPSETTING/SETTING[@screenId='FUW10404']/DISPTEXT[@groupid='PPLAN_NM']";
// ANK-3987-00-00 ADD START
	/** 定義取得パス 料金コース表示順 */
	private static final String PATH_PCRS_ORDER = "DISPSETTING/SETTING[@screenId='FUW10404']/DISPCTL[@groupid='BTN_ORDER']";
// ANK-3987-00-00 ADD END
	/** 属性名 */
	private static final String QUERY_ATTR_NAME = "id";

	/** 1行表示数取得キー */
	private static final String LINE_DSP_NUM = "001";

	/* ■ その他 */
	/** アンダーバー */
	private static final String UNDER_BAR = "_";
	/** TR開始 */
	private static final String TAG_STA_TR = "<tr>";
	/** TR終了 */
	private static final String TAG_FIN_TR = "</tr>";

	/** 引越し元住居種別コード（0:ホーム） */
	private static final String HKKS_MT_JKYO_SBT_CD_HT = "0";
	
	/** 引越し元住居種別コード（1:マンション） */
	private static final String HKKS_MT_JKYO_SBT_CD_MT = "1";
	
	/** 引越し元住居種別コード（2:メゾン） */
	private static final String HKKS_MT_JKYO_SBT_CD_MZ = "2";
	
	/** 引越し先住居種別コード（0:ホーム） */
	private static final String HKKS_SK_JKYO_SBT_CD_HT = "0";
	
	/** 引越し先住居種別コード（1:マンション） */
	private static final String HKKS_SK_JKYO_SBT_CD_MT = "1";
	
	/** 引越し先住居種別コード（2:メゾン） */
	private static final String HKKS_SK_JKYO_SBT_CD_MZ = "2";
	
	/** 表示制御（1：表示） */
	private static final String DSP_FLG_DSP = "1";
	
	/** 表示制御（0：非表示） */
	private static final String DSP_FLG_HIDSP = "0";
	
	/** Ｍｙホームページ容量初期値 */
	private static final String MY_HP_CAPA_SHKV = "20";
	
	/** マンションコース変換マップ */
	private static HashMap<String, String[]> mansCosChgMap = null;
	
	/** メゾンコース変換マップ */
	private static HashMap<String, String> mezonCosChgMap = null;

	static
	{
		mansCosChgMap = new HashMap<String, String[]>();
		// プライベート 100M VDSL ⇒ マンションタイプ　プライベート　１００Ｍ　ＶＤＳＬ
		mansCosChgMap.put("001",new String[] {"A47"});
		// プライベート 100M VDSL(31:VDSL1) ⇒ マンションタイプ　プライベート　１００Ｍ　ＶＤＳＬ１
		mansCosChgMap.put("001_31",new String[] {"A47"});
		// プライベート 100M VDSL(32:VDSL2) ⇒ マンションタイプ　プライベート　１００Ｍ　ＶＤＳＬ２
		mansCosChgMap.put("001_32",new String[] {"A48"});
		// プライベート 1ギガ VDSL ⇒ マンションタイプ　プライベート　１００Ｍ　ＶＤＳＬ１
		mansCosChgMap.put("002",new String[] {"A67"});
		// プライベート 100M イーサネット ⇒ マンションタイプ　プライベート　１００Ｍ　イーサネット
		mansCosChgMap.put("003",new String[] {"A49"});
		// プライベート 1ギガ イーサネット ⇒ マンションタイプ　プライベート　１００Ｍ　イーサネット
		mansCosChgMap.put("004",new String[] {"A68"});
		// グローバル 100M VDSL ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ
		mansCosChgMap.put("005",new String[] {"A53"});
		// グローバル 100M VDSL(32:VDSL2) ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ２
		mansCosChgMap.put("005_32",new String[] {"A50"});
		// グローバル 100M VDSL(33:VDSL3) ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ３
		mansCosChgMap.put("005_33",new String[] {"A51"});
		// グローバル 100M VDSL(34:VDSL4) ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ４
		mansCosChgMap.put("005_34",new String[] {"A52"});
		// グローバル 100M VDSL(35:VDSL5) ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ５
		mansCosChgMap.put("005_35",new String[] {"A53"});
		// グローバル 1ギガ VDSL ⇒ マンションタイプ　グローバル　１００Ｍ　ＶＤＳＬ５
		mansCosChgMap.put("006",new String[] {"A69"});
		// グローバル 100M イーサネット ⇒ マンションタイプ　グローバル　１００Ｍ　イーサネット
		mansCosChgMap.put("007",new String[] {"A54"});
		// グローバル 1ギガ イーサネット ⇒ マンションタイプ　グローバル　１ギガ　イーサネット
		mansCosChgMap.put("008",new String[] {"A55", "A70"});
		// 光配線 100M ⇒ マンションタイプ　光配線　１００Ｍ
		mansCosChgMap.put("009",new String[] {"A56"});
		// 光配線 1ギガ ⇒ マンションタイプ　光配線　１ギガ、光配線　１００Ｍプレミアム
		mansCosChgMap.put("010",new String[] {"A57", "A71"});
		// 光コンセント ⇒ マンションタイプ　光配線　１ギガ
		mansCosChgMap.put("C_010_007",new String[] {"A57_PA5701_007"});
		// 光コンセント ⇒ マンションタイプ　光配線　５ギガ ※
		mansCosChgMap.put("C_010_008",new String[] {"A57_PA5701_008"});
		// 光コンセント ⇒ マンションタイプ　光配線　１０ギガ
		mansCosChgMap.put("C_010_009",new String[] {"A57_PA5701_009"});
		// 光配線 1ギガ ⇒ マンションタイプ　光配線　１ギガ、光配線　１０ギガ
		mansCosChgMap.put("011",new String[] {"A57", "A74"});
		
		mezonCosChgMap = new HashMap<String, String>();
		// プライベート 100M VDSL ⇒ メゾンタイプ１００Ｍ
		mezonCosChgMap.put("001","A08");
		// プライベート 1ギガ VDSL ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("002","A10");
		// プライベート 100M イーサネット ⇒ メゾンタイプ１００Ｍ
		mezonCosChgMap.put("003","A08");
		// プライベート 1ギガ イーサネット ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("004","A10");
		// グローバル 100M VDSL ⇒ メゾンタイプ１００Ｍ
		mezonCosChgMap.put("005","A08");
		// グローバル 1ギガ VDSL ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("006","A10");
		// グローバル 100M イーサネット ⇒ メゾンタイプ１００Ｍ
		mezonCosChgMap.put("007","A08");
		// グローバル 1ギガ イーサネット ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("008","A10");
		// 光配線 100M ⇒ メゾンタイプ１００Ｍ
		mezonCosChgMap.put("009","A08");
		// 光配線 1ギガ ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("010","A10");
		// メゾン標準 ⇒ メゾンタイプ１ギガ
		mezonCosChgMap.put("011","A10");
	}

	/**
	 * コンストラクタです。
	 */
	public FUSV0241_FUSV0241OPDBMapper()
	{
	}

	/**
	 * 料金グループコード別料金プラン一覧照会（フロント）SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024101SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		String hkksSkJkyoSbtCd = bean[0].sendMessageString(FUW10401SFConst.HKKS_SK_JKYO_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);
		if (HKKS_SK_JKYO_SBT_CD_HT.equals(hkksSkJkyoSbtCd))
		{
		// ＫＥＹ＿料金グループコード
			parentMap.put(KEY_PRC_GRP_CD, JFUStrConst.CD00133_02);
			String nowPcrsCd = bean[2].sendMessageString(CommonInfoCFConst.PCRS_CD_23, X31CWebConst.DATABEAN_GET_VALUE);
			// シンプルプランの場合、取得する料金コース、料金プランを変更
			if (JFUStrConst.PCRS_CD_SIMPLE.contains(nowPcrsCd))
			{
				// ＫＥＹ＿料金コースコード
				parentMap.put(KEY_PCRS_CD, JFUStrConst.CD00134_A97);
				// ＫＥＹ＿料金プランコード
				parentMap.put(KEY_PPLAN_CD, JFUStrConst.CD00565_PA9701);
			}
			else
			{
				// ＫＥＹ＿料金コースコード
				parentMap.put(KEY_PCRS_CD, JFUStrConst.CD00134_A03);
				// ＫＥＹ＿料金プランコード
				parentMap.put(KEY_PPLAN_CD, JFUStrConst.CD00565_PA0301);
			}
		}
		else if (HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd))
		{
			// ＫＥＹ＿料金グループコード
			parentMap.put(KEY_PRC_GRP_CD, JFUStrConst.CD00133_03);
		// ＫＥＹ＿料金コースコード
			parentMap.put(KEY_PCRS_CD, JFUStrConst.CD00134_A08);
		// ＫＥＹ＿料金プランコード
			parentMap.put(KEY_PPLAN_CD, JFUStrConst.CD00565_PA0801);
		}

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EKK0591B501CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024101SC, parentMap);

		return outputMap;
	}

	/**
	 * 業務パラメータ管理一意照会SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024102SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EZM0321A010CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024102SC, parentMap);

		return outputMap;
	}

	/**
	 * オプションサービス契約<ISP>一覧照会SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024103SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);
		// ＫＥＹ＿サービス契約番号
		parentMap.put(KEY_SVC_KEI_NO, bean[2].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_11, X31CWebConst.DATABEAN_GET_VALUE));

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EKK0361B001CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024103SC, parentMap);

		return outputMap;
	}
	
	/**
	 * 回線使用契約一意照会SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024104SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);
		// ＫＥＹ＿回線使用契約番号
		parentMap.put(KEY_KAISEN_USE_KEI_NO, bean[0].sendMessageString(FUW10401SFConst.KEY_KAISEN_USE_KEI_NO_NET, X31CWebConst.DATABEAN_GET_VALUE));

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EKK0881A010CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024104SC, parentMap);

		return outputMap;
	}
	
	/**
	 *提供方式契約一意照会SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024105SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EKK0891A010CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024105SC, parentMap);

		return outputMap;
	}
	
	/**
	 *提供方式契約一意照会SCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	public HashMap<String, Object> setFUSV024106SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);
		// ＫＥＹ＿料金グループコード
		parentMap.put(KEY_PRC_GRP_CD, "");
		// ＫＥＹ＿料金コース種別コード
		parentMap.put(KEY_PCRS_SBT_CD, "1");
		

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		parentMap.put(EKK0591B004CBSMSG1LIST, arrayList);

		outputMap.put(FUSV024106SC, parentMap);

		return outputMap;
	}
	
	/**
	 * MT管理情報照会(MANMOS)照会CCの上りマッピング処理です。
	 * @param bean データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @return HashMap 結果マップ
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV024107CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 実行判定用
		String hikarikaMansFlg = bean[0].sendMessageString(FUW10401SFConst.HIKARIKA_MANS_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if (!JFUStrConst.HIKARIKA_MANS_FLG_1.equals(hikarikaMansFlg))
		{
			return outputMap;
		}
		// 光化マンションフラグ
		parentMap.put(HIKARIKA_MANS_FLG, hikarikaMansFlg);

		// 機能コード
		parentMap.put(FUNC_CODE, func_code);

		// ＫＥＹ＿P-ID
		parentMap.put(KEY_PID, bean[0].sendMessageString(FUW10401SFConst.P_ID, X31CWebConst.DATABEAN_GET_VALUE));
		// ＫＥＹ＿棟情報
		String selTouInfo = bean[0].sendMessageString(FUW10401SFConst.TOU_INFO, X31CWebConst.DATABEAN_GET_VALUE);

		// ＫＥＹ＿部屋番号
		HashMap<String, String> manmosKnriInfo = new HashMap<String, String>();
		String selRmNo = bean[0].sendMessageString(FUW10401SFConst.INP_RM_2, X31CWebConst.DATABEAN_GET_VALUE);
		if (!JFUWebCommon.isNull(selRmNo))
		{
			manmosKnriInfo = JFUGetManmosKanri.getManmosKnriInfoFromBean(bean[0], selTouInfo, selRmNo);
			parentMap.put(KEY_SEQ, manmosKnriInfo.get("seq"));
		}

		parentMap.put(SELECT_TOU_NO, JFUWebCommon.nvl(selTouInfo));
		parentMap.put(SELECT_RM_NO, JFUWebCommon.nvl(selRmNo));

		outputMap.put(FUSV024107CC, parentMap);

		return outputMap;
	}
	
	/**
	 * 上りマッピングをする。
	 * @param bean　[0]：データBean
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 */
	public HashMap setFUSV024101CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{

		if (bean == null)
		{
			return null;
		}

		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		String KeyKaisenuseKeiNoNet = bean[0].sendMessageString(FUW10401SFConst.KEY_KAISEN_USE_KEI_NO_NET, X31CWebConst.DATABEAN_GET_VALUE);
		
		String KeyKaisenuseKeiNoTv = bean[0].sendMessageString(FUW10401SFConst.KEY_KAISEN_USE_KEI_NO_TV, X31CWebConst.DATABEAN_GET_VALUE);

		if(!(JKKStringUtil.isNullBlank(KeyKaisenuseKeiNoNet) && JKKStringUtil.isNullBlank(KeyKaisenuseKeiNoTv)))
		{
			// 共通情報のマッピング
			parentMap.put("func_code", func_code);
			if (!JKKStringUtil.isNullBlank(KeyKaisenuseKeiNoNet))
			{
				// ＫＥＹ＿回線使用契約番号（ネット）
				parentMap.put(KEY_NET_KAISEN_USE_KEI_NO, KeyKaisenuseKeiNoNet);
			}
			
			if (!JKKStringUtil.isNullBlank(KeyKaisenuseKeiNoNet))
			{
				// ＫＥＹ＿回線使用契約番号（テレビ）
				parentMap.put(KEY_TV_KAISEN_USE_KEI_NO, KeyKaisenuseKeiNoTv);
			}
		}

		outputMap.put(FUSV024101CC, parentMap);

		return outputMap;
	}

	/**
	 * 選択ボタンのマッピング処理です。
	 * 
	 * @param bean データBean
	 * @param outputMap マップ
	 * @param nowPrcGrpCd 料金グループコード
	 * @return データBean
	 * @throws Exception 
	 */
	public X31SDataBeanAccess setSelectButton(X31SDataBeanAccess bean, HashMap outputMap) throws Exception
	{
		// 表示制御用値マップ
		Map<String, String> lineDspNumMap = JFUWebCommon.getDispItemsAsMap(PATH_DSP_LINE_NUM, QUERY_ATTR_NAME);
		// ボタンクラス名マップ
		Map<String, String> btnClassMap = JFUWebCommon.getDispItemsAsMap(PATH_BTN_CLASS, QUERY_ATTR_NAME);
		// 料金コース名マップ
		Map<String, String> pcrsNmMap = JFUWebCommon.getDispItemsAsMap(PATH_PCRS_NM, QUERY_ATTR_NAME);
// ANK-3987-00-00 ADD START
		// 料金コース表示順マップ
		Map<String, String> pcrsOrderMap = JFUWebCommon.getDispItemsAsMap(PATH_PCRS_ORDER, QUERY_ATTR_NAME);
// ANK-3987-00-00 ADD END

		// 一行表示数取得
		String lineDspNum = lineDspNumMap.get(LINE_DSP_NUM);
		int lineDspNumVal = Integer.parseInt(lineDspNum);

		HashMap parentMap = null;
		HashMap parentMapFusv024104Sc = null;
		HashMap parentMapFusv024105Sc = null;
		HashMap parentMapFusv024106Sc = null;
		ArrayList childListFusv024104Sc = null;
		ArrayList childListFusv024105Sc = null;
		ArrayList childListFusv024106Sc = null;
		
//		// 100Mライト用HashMap
//		HashMap childMap100MLight = null;
		ArrayList childList = null;
		ArrayList chgTgList = new ArrayList();

		String hkksSkJkyoSbtCd = bean.sendMessageString(FUW10401SFConst.HKKS_SK_JKYO_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (HKKS_SK_JKYO_SBT_CD_HT.equals(hkksSkJkyoSbtCd) || HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd))
		{
			// 引越し先がホームの場合
		// SCマップ取得
		if (outputMap.containsKey(FUSV024101SC))
		{
			parentMap = (HashMap)outputMap.get(FUSV024101SC);
		}

		// 明細リスト取得
		if (null != parentMap && parentMap.containsKey(EKK0591B501CBSMSG1LIST))
		{
			childList = (ArrayList)parentMap.get(EKK0591B501CBSMSG1LIST);
		}

		// 変更対象料金コースを抽出
		for (int i = 0; i < childList.size(); i++)
		{
			// 明細マップを取得
			HashMap childMap = (HashMap)childList.get(i);

			String prcGrpCd = (String)childMap.get(PRC_GRP_CD);
			String pcrsCd = (String)childMap.get(PCRS_CD);
			String pplanCd = (String)childMap.get(PPLAN_CD);

			// タイプ別処理
				if(JFUStrConst.CD00133_02.equals(prcGrpCd))
			{
				// ●ホームタイプ

				// 対象外の料金コースは以降の処理を行わない
				if(JFUStrConst.CD00134_A04.equals(pcrsCd) || JFUStrConst.CD00565_PA0711.equals(pplanCd)
						|| JFUStrConst.CD00565_PA0511.equals(pplanCd))
// ANK-3987-00-00 ADD START 5G10Gを対象外
//						|| JFUStrConst.PCRS_CD_5G10G.contains(pcrsCd))
// ANK-3987-00-00 ADD END
				{
					// 100MP、200M従量、1G従量は対象外
					continue;
				}
			}
				else if(JFUStrConst.CD00133_03.equals(prcGrpCd))
			{
				// ●メゾンタイプ
				String knykeiNet10gMskmKh = bean.sendMessageString(FUW10401SFConst.KNYKEI_NET_10G_MSKM_KH, X31CWebConst.DATABEAN_GET_VALUE);

				// 対象外の料金コースは以降の処理を行わない
				if(JFUStrConst.CD00134_A09.equals(pcrsCd) || JFUStrConst.CD00565_PA1111.equals(pplanCd)
						|| JFUStrConst.CD00565_PA1011.equals(pplanCd))
// ANK-3987-00-00 ADD START 5G10Gを対象外
//						|| JFUStrConst.PCRS_CD_5G10G.contains(pcrsCd))
// ANK-3987-00-00 ADD END
				{
					// 100MP、200M従量、1G従量は対象外
					continue;
				}
				// 5G10G開通していない物件の場合は、5G10Gを対象外
				if (!"1".equals(knykeiNet10gMskmKh) && JFUStrConst.PCRS_CD_5G10G.contains(pcrsCd))
				{
					continue;
				}
			}
			else
			{
				// どのタイプにも一致しない場合、次の処理へ移行する
				continue;
			}
// ANK-3987-00-00 MOD START
//			// 条件を満たした料金コース（プラン）情報をリストに格納する
//			// 100Mライトの場合、最後にボタンを表示したい為、ここではchildMap100MLightへ退避する
//			if((JFUStrConst.CD00134_A03.equals((String)childMap.get(PCRS_CD))
//					&& JFUStrConst.CD00565_PA0311.equals((String)childMap.get(PPLAN_CD)))
//					|| (JFUStrConst.CD00134_A08.equals((String)childMap.get(PCRS_CD))
//						&& JFUStrConst.CD00565_PA0811.equals((String)childMap.get(PPLAN_CD))))
//			{
//				childMap100MLight = childMap;
//			}
//			else
//			{
				chgTgList.add(childMap);
//			}
		}
//		// 100Mライトの場合、最後にボタンを表示したい為、ここで追加する
//		if(childMap100MLight != null && childMap100MLight.size() != 0)
//		{
//			chgTgList.add(childMap100MLight);
//		}
		for (int i = 0; i < chgTgList.size(); i++)
		{
			// 明細マップを取得
			HashMap childMap = (HashMap)chgTgList.get(i);
			String strOrder = JFUStrConst.EMPTY;
			String pcrsCd = (String)childMap.get(PCRS_CD);
			String pplanCd = (String)childMap.get(PPLAN_CD);
			String pcrsSkbtStr = pcrsCd + UNDER_BAR + pplanCd;
			// 並び順を取得
			strOrder = (String)pcrsOrderMap.get(pcrsSkbtStr);
			// 並び順が取れない場合は最後列
			if (strOrder == null || JFUStrConst.EMPTY.equals(strOrder))
			{
				strOrder = "99";
			}
			childMap.put("order", strOrder);
		}
		// orderでソート
		Collections.sort(chgTgList, new Comparator()
		{
			public int compare(Object o1, Object o2)
			{
				HashMap map1 = (HashMap)o1;
				HashMap map2 = (HashMap)o2;
				String str1 = (String)map1.get("order");
				String str2 = (String)map2.get("order");
				return str1.compareTo(str2);
			}
		});
// ANK-3987-00-00 MOD END
		} else if (HKKS_SK_JKYO_SBT_CD_MT.equals(hkksSkJkyoSbtCd))
		{
			// 引越し先がマンションの場合
			HashMap childMap = new HashMap();
			String[] mansCourseList = new String[1];
			
			if (outputMap.containsKey(FUSV024104SC))
			{
				parentMapFusv024104Sc = (HashMap)outputMap.get(FUSV024104SC);
			}
			if (outputMap.containsKey(FUSV024105SC))
			{
				parentMapFusv024105Sc = (HashMap)outputMap.get(FUSV024105SC);
			}
			if (outputMap.containsKey(FUSV024106SC))
			{
				parentMapFusv024106Sc = (HashMap)outputMap.get(FUSV024106SC);
			}
			String tk_hoshiki_chg_sbt_cd = JFUStrConst.EMPTY;
			String tonai_speed_cd = JFUStrConst.EMPTY;
			if (outputMap.containsKey(FUSV024101CC))
			{
				HashMap parentMapFusv024101Cc = (HashMap)outputMap.get(FUSV024101CC);
				ArrayList mansionSearchList = (ArrayList)parentMapFusv024101Cc.get("mansion_search_a_list");
				HashMap mansionSearchMap = new HashMap();
				if (mansionSearchList != null || mansionSearchList.size() > 0) {
					mansionSearchMap = (HashMap)mansionSearchList.get(0);
				}
				tk_hoshiki_chg_sbt_cd = (String)mansionSearchMap.get(TK_HOSHIKI_CHG_SBT_CD);
				tonai_speed_cd = (String)mansionSearchMap.get(TONAI_SPEED_CD);
			}
	
			// 明細リスト取得
			if (null != parentMapFusv024104Sc && parentMapFusv024104Sc.containsKey(EKK0881A010CBSMSG1LIST))
			{
				childListFusv024104Sc = (ArrayList)parentMapFusv024104Sc.get(EKK0881A010CBSMSG1LIST);
			}
			if (null != parentMapFusv024105Sc && parentMapFusv024105Sc.containsKey(EKK0891A010CBSMSG1LIST))
			{
				childListFusv024105Sc = (ArrayList)parentMapFusv024105Sc.get(EKK0891A010CBSMSG1LIST);
			}
			if (null != parentMapFusv024106Sc && parentMapFusv024106Sc.containsKey(EKK0591B004CBSMSG1LIST))
			{
				childListFusv024106Sc = (ArrayList)parentMapFusv024106Sc.get(EKK0591B004CBSMSG1LIST);
			}
			
			HashMap ekk0881A010 = (HashMap)childListFusv024104Sc.get(0);
			HashMap ekk0891A010 = (HashMap)childListFusv024105Sc.get(0);
			
			// マンションコースコードを取得
			String mansCourse = (String)ekk0881A010.get("mansion_course_cd");
			// ペアID
			String pairId = (String)ekk0881A010.get("pairid");
			// 光配線１Ｇのみフラグ
			String hhs1gonlyFlg = (String)ekk0881A010.get("hhs_1gonly_flg");
			// 提供方式パターンコード
			String tkhoshikiPtnCd = (String)ekk0891A010.get("tk_hoshiki_pattern_cd");
			
			// マンションコースコードを再設定
			mansCourse = setMansCrsCd(mansCourse, tkhoshikiPtnCd, tk_hoshiki_chg_sbt_cd, tonai_speed_cd);
			
			// マンションコースコードを料金コースコードに変換
			if(HKKS_SK_JKYO_SBT_CD_MT.equals(hkksSkJkyoSbtCd))
			{
				mansCourseList = mansCosChgMap.get(mansCourse);
			}
			else if(HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd))
			{
				mansCourse = mezonCosChgMap.get(mansCourse);
			}
			
			// ここにEKK0591B004の結果を取得
			// ANK-3248-00-00 指摘No.94 ADD START
			// 100Mプレミアム用HashMap
			HashMap childMap100MPremium = null;
			// ANK-3248-00-00 指摘No.94 ADD END
			
			for (int l = 0 ; l < mansCourseList.length ; l++) {
				
				mansCourse = mansCourseList[l];
				mansCourse = mansCourse.substring(0, 3);
				
				// 料金コースコード情報分、処理を実施
				for(int j = 0 ; j < childListFusv024106Sc.size() ; j++)
				{
					HashMap pcrsBean = (HashMap)childListFusv024106Sc.get(j);
					// マンションコースコードが該当のサブコードと一致する場合
					if(mansCourse.equals(pcrsBean.get("pcrs_cd")))
					{

						String pplanCd = (String)pcrsBean.get("pplan_cd");

						if("1".equals(hhs1gonlyFlg) && ("PA5601".equals(pplanCd) || "PA5611".equals(pplanCd)|| "PA7101".equals(pplanCd))){
							// 光配線１Ｇのみ物件の場合は、1ギガコースボタンのみを表示する。
							// 料金プランコードが下記の場合、処理対象外として100Mコースボタンを非表示とする。
							// ・「PA5601：光配線　１００Ｍ」
							// ・「PA5611：光配線　１００Ｍライトコース」
							// ・「PA7101：光配線　１００Ｍプレミアム」
							continue;
						}

						if(JFUStrConst.CD01213_53.equals(tkhoshikiPtnCd))
						{
							String knykeiNet1gMskmKh = bean.sendMessageString(FUW10401SFConst.KNYKEI_NET_1G_MSKM_KH, X31CWebConst.DATABEAN_GET_VALUE);
							String knykeiNet10gMskmKh = bean.sendMessageString(FUW10401SFConst.KNYKEI_NET_10G_MSKM_KH, X31CWebConst.DATABEAN_GET_VALUE);

							// 対象外の料金コースは以降の処理を行わない
							if(JFUStrConst.CD00565_PA5701.equals(pplanCd) && !JFUStrConst.CD00001_1.equals(knykeiNet1gMskmKh))
							{
								continue;
							}
							// 対象外の料金コースは以降の処理を行わない
							if(JFUStrConst.CD00565_PA7401.equals(pplanCd) && !JFUStrConst.CD00001_1.equals(knykeiNet10gMskmKh))
							{
								continue;
							}
						}

						// 「光配線　１ギガ」「マンションタイプ　グローバル　１ギガ　イーサネット」
						if (!(JKKStringUtil.isNullBlank(pairId) && (pplanCd.equals("PA5701") || pplanCd.equals("PA5501")))) {
							// ペアIDが設定されている場合は1Gコースは選択不可

							// マップの中身を初期化
							childMap = new HashMap();
							
							childMap.put(PCRS_CD, pcrsBean.get("pcrs_cd"));
							childMap.put(PPLAN_CD, pplanCd);
							childMap.put(MANS_COURSE, mansCourseList[l]);
							
							// ANK-3248-00-00 指摘No.94 ADD START
							// 100Mプレミアムの場合、最初にボタンを表示したい為、ここではchildMap100MPremiumへ退避する
							if( JFUStrConst.CD00565_PA6701.equals((String)childMap.get(PPLAN_CD))
								|| JFUStrConst.CD00565_PA6801.equals((String)childMap.get(PPLAN_CD))
								|| JFUStrConst.CD00565_PA6901.equals((String)childMap.get(PPLAN_CD))
								|| JFUStrConst.CD00565_PA7001.equals((String)childMap.get(PPLAN_CD))
								|| JFUStrConst.CD00565_PA7101.equals((String)childMap.get(PPLAN_CD))
								|| JFUStrConst.CD00565_PA8001.equals((String)childMap.get(PPLAN_CD))
							)
							{
								childMap100MPremium = childMap;
							}
							else
							{
							// ANK-3248-00-00 指摘No.94 ADD END
								chgTgList.add(childMap);
							// ANK-3248-00-00 指摘No.94 ADD START
							}
							// ANK-3248-00-00 指摘No.94 ADD END
						} 
					}
				}
				
			}
			// ANK-3248-00-00 指摘No.94 ADD START
			// 100Mプレミアムの場合、最初にボタンを表示したい為、ここで追加する
			if(childMap100MPremium != null && childMap100MPremium.size() != 0)
			{
				// 先頭にadd, 後続は一個ずつずれる
				chgTgList.add(0, childMap100MPremium);
			}

			// ANK-3248-00-00 指摘No.94 ADD END

		}

		// 1行表示数設定
		if(chgTgList != null && chgTgList.size() < lineDspNumVal)
		{
			// 指定の値より小さい場合、変更対象リストのサイズを設定する
			bean.sendMessageString(FUW10401SFConst.NET_PCRS_BTN_DISP_NUM, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(1));
		}
		else if(chgTgList != null)
		{
			// 上記以外の場合、指定の値を設定する
			bean.sendMessageString(FUW10401SFConst.NET_PCRS_BTN_DISP_NUM, X31CWebConst.DATABEAN_SET_VALUE, lineDspNum);
		}

		// 料金コースリスト
		X33VDataTypeList pcrsCdList = new X33VDataTypeList(chgTgList.size());
		X31SDataBeanAccessArray pcrsCdBeanArray = bean.getDataBeanArray(FUW10401SFConst.NET_PCRS_LIST);
		pcrsCdBeanArray.clearArray();

		// データBeanに値を設定
		for (int i = 0; i < chgTgList.size(); i++)
		{
			// 明細マップを取得
			HashMap childMap = (HashMap)chgTgList.get(i);

			// 明細マップ存在チェック
			if(childMap == null || childMap.size() == 0)
			{
				// 存在しない場合、次のループへ移行する
				continue;
			}

			// 料金コースコード・料金プランコード・料金コース識別文字列取得
			String pcrsCd = (String)childMap.get(PCRS_CD);
			String pplanCd = (String)childMap.get(PPLAN_CD);
			String pcrsSkbtStr = pcrsCd + UNDER_BAR + pplanCd;
			String mansCourse = (String)childMap.get(MANS_COURSE);
			if ((mansCourse != null) && (!pcrsCd.equals(mansCourse)))
			{
				// ダミーキーを設定
				pcrsSkbtStr = mansCourse;
			}

			// Beanを追加し、追加したBeanを取得する
			pcrsCdBeanArray.addDataBean();
			X31SDataBeanAccess pcrsCdDataBean = pcrsCdBeanArray.getDataBean(i);

			// 変更対象料金コース識別文字列
			pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_PCRS_SKBT_STR_01, X31CWebConst.DATABEAN_SET_VALUE,
					pcrsSkbtStr);
			// 変更対象料金コース名
			pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_PCRS_NM_01, X31CWebConst.DATABEAN_SET_VALUE,
					(String)pcrsNmMap.get(pcrsSkbtStr));
			// 変更対象料金コースクラス名
			pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_PCRS_CLASS_NM_01, X31CWebConst.DATABEAN_SET_VALUE,
					(String)btnClassMap.get(pcrsSkbtStr));
			// 変更対象料金コースインデックス番号
			pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_PCRS_INDEX_NUM_01, X31CWebConst.DATABEAN_SET_VALUE,
					String.valueOf(i));

			// 開始タグ挿入
			if(i == 0 || i % lineDspNumVal == 0)
			{
				pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_STA_TAG_01, X31CWebConst.DATABEAN_SET_VALUE, TAG_STA_TR);
			}
			else
			{
				pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_STA_TAG_01, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
			}

			// 閉じタグ挿入
			if(i != 0 && ((i + 1) % lineDspNumVal == 0 || i == (chgTgList.size() - 1)))
			{
				pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_FIN_TAG_01, X31CWebConst.DATABEAN_SET_VALUE, TAG_FIN_TR);
			}
			else
			{
				pcrsCdDataBean.sendMessageString(FUW10401SFConst.CHG_TG_FIN_TAG_01, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
			}

			pcrsCdList.add(pcrsCdDataBean);
		}

		return bean;
	}

	/**
	 * 業務パラメータ管理一意照会SCの下りマッピング処理です。
	 * <br>
	 * @param bean データBean
	 * @param outputMap マップ
	 * @param bl ビジネスロジック
	 * @param chrgStaYMD サービス課金開始年月日
	 * @return データBean
	 * @throws Exception 
	 */
	public X31SDataBeanAccess getFUSV024202SC(X31SDataBeanAccess bean, HashMap outputMap, X31BWebBusinessLogic bl,
			String chrgStaYMD) throws Exception
	{
		HashMap parentMap = null;
		ArrayList childList = null;
		String val = JFUStrConst.EMPTY;

		// SCマップ取得
		if (outputMap.containsKey(FUSV024102SC))
		{
			parentMap = (HashMap)outputMap.get(FUSV024102SC);
		}

		// 明細リスト取得
		if (null != parentMap && parentMap.containsKey(EZM0321A010CBSMSG1LIST))
		{
			childList = (ArrayList)parentMap.get(EZM0321A010CBSMSG1LIST);
		}

		for (int i = 0; i < childList.size(); i++)
		{
			HashMap childMap = (HashMap)childList.get(i);

			// 業務パラメータ設定値
			val = (String)childMap.get(WORK_PARAM_SETTE_VALUE);
		}

		
		if (JFUWebCommon.isNull(chrgStaYMD))
		{
			// サービス課金開始日がNULLの場合は、業務パラメータ設定値月数未満とする。
			bean.sendMessageBoolean(FUW10401SFConst.NET_OVER_3YEAR_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		}
		else
		{
			// オンライン運用日付を取得
			String opeDate = JFUWebCommon.getOpeDate(bl, null);
			// 月数取得
			int month = JFUWebCommon.subtractMonth(opeDate, chrgStaYMD);
	
			// 月数判定
			if(Integer.parseInt(val) <= month)
			{
				// 業務パラメータ設定値の月数以降の場合
				bean.sendMessageBoolean(FUW10401SFConst.NET_OVER_3YEAR_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			}
			else
			{
				// 業務パラメータ設定値月数未満の場合
				bean.sendMessageBoolean(FUW10401SFConst.NET_OVER_3YEAR_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
			}
		
			// 表示_長割適用開始年月日
			// サービス課金開始年月日＋3年目(25カ月)の月初日
			String choAplyYmd = JFUWebCommon.addMonth(chrgStaYMD, Integer.parseInt(val)).substring(0, 6) + JFUStrConst.S_FIRST_DAY;
			bean.sendMessageString(FUW10401SFConst.DSP_CHO_APLY_YMD, X31CWebConst.DATABEAN_SET_VALUE, choAplyYmd);
		}
		
		return bean;
	}
	
	/**
	 * オプションサービス契約<ISP>一覧照会SCの下りマッピング処理です。
	 * <br>
	 * @param bean データBean
	 * @param outputMap マップ
	 * @return データBean
	 * @throws Exception 
	 */
	public X31SDataBeanAccess getFUSV024103SC(X31SDataBeanAccess bean, HashMap outputMap) throws Exception
	{
		HashMap parentMap = null;
		ArrayList childList = null;
		
		ArrayList<HashMap<String, String>> emailList = new ArrayList<HashMap<String, String>>();
		HashMap<String, String> emailMap = new HashMap<String, String>();
		ArrayList<HashMap<String, String>> smlnPremiumList = new ArrayList<HashMap<String, String>>();
		HashMap<String, String> smlnPremiumMap = new HashMap<String, String>();
		
		String capa = JFUStrConst.EMPTY;
		
		// SCマップ取得
		if (outputMap.containsKey(FUSV024103SC))
		{
			parentMap = (HashMap)outputMap.get(FUSV024103SC);
		}
		
		// 明細リスト取得
		if (null != parentMap && parentMap.containsKey(EKK0361B001CBSMSG1LIST))
		{
			childList = (ArrayList)parentMap.get(EKK0361B001CBSMSG1LIST);
		}
		
		if (childList != null && childList.size() > 0)
		{
			for (int i = 0; i < childList.size(); i++)
			{
				HashMap childMap = (HashMap)childList.get(i);
				
				// メールアドレス情報の取得
				if (JFUStrConst.CD00136_B001.equals(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_cd"))))
				{
					if(JFUStrConst.CD00037_910.compareTo(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_stat"))) > 0)
					{
						
						emailMap.put("op_svc_kei_no", JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_no")));
						emailMap.put("op_svc_kei_stat", JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_stat")));
						
						emailList.add(emailMap);
					}
				}
				
				// Myホームページ容量情報の取得
				if (JFUStrConst.CD00136_B002.equals(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_cd"))))
				{
					if(JFUStrConst.CD00037_910.compareTo(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_stat"))) > 0)
					{
						capa = JKKStringUtil.nullToBlank((String)childMap.get("capa"));
					}
				}
				
				// eoスマートリンクプレミアム情報の取得
				if (JFUStrConst.CD00136_B077.equals(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_cd"))))
				{
					if(JFUStrConst.CD00037_910.compareTo(JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_stat"))) > 0)
					{
						smlnPremiumMap.put("op_svc_kei_no", JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_no")));
						smlnPremiumMap.put("op_svc_kei_stat", JKKStringUtil.nullToBlank((String)childMap.get("op_svc_kei_stat")));
						
						smlnPremiumList.add(smlnPremiumMap);
					}
				}
			}
		}
		
		
		// 画面制御用にデータビーン設定を行う。
		String hkksMtJkyoSbtCd = bean.sendMessageString(FUW10401SFConst.HKKS_MT_JKYO_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
		String hkksSkJkyoSbtCd = bean.sendMessageString(FUW10401SFConst.HKKS_SK_JKYO_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 追加メールアドレス文言制御フラグの設定を行う
		if (HKKS_MT_JKYO_SBT_CD_MT.equals(hkksMtJkyoSbtCd)
				&&  (HKKS_SK_JKYO_SBT_CD_HT.equals(hkksSkJkyoSbtCd) || HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd))
				&& emailList.size() >= 2
				)
		{
			// 引越し元がマンションタイプの場合で、引越し先がホームタイプ、又はメゾンタイプ。
			// 引越し元でEメールオプションの契約が2件以上。
			bean.sendMessageString(FUW10401SFConst.ADD_MAIL_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_DSP);
		}
		else
		{
			bean.sendMessageString(FUW10401SFConst.ADD_MAIL_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_HIDSP);
		}
		
		// Myホームページ容量文言制御フラグの設定を行う
		if (HKKS_MT_JKYO_SBT_CD_MT.equals(hkksMtJkyoSbtCd)
				&&  (HKKS_SK_JKYO_SBT_CD_HT.equals(hkksSkJkyoSbtCd) || HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd))
				&& MY_HP_CAPA_SHKV.compareTo(capa) < 0
				)
		{
			// 引越し元がマンションタイプの場合で、引越し先がホームタイプ、又はメゾンタイプ。
			// 引越し元でMyホームページ容量が初期値(20MB)より大きい。
			bean.sendMessageString(FUW10401SFConst.HP_CAPA_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_DSP);
		}
		else
		{
			bean.sendMessageString(FUW10401SFConst.HP_CAPA_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_HIDSP);
		}
		
		// eoスマートリンクプレミアムパック文言制御フラグの設定を行う
		if ((HKKS_MT_JKYO_SBT_CD_MT.equals(hkksMtJkyoSbtCd) || HKKS_SK_JKYO_SBT_CD_MT.equals(hkksSkJkyoSbtCd)) 
				&& smlnPremiumList.size() > 0
				)
		{
			// 引越し元、又は先がマンションタイプ。
			// 引越し元でeoスマートリンクプレミアムパックを契約している。
			bean.sendMessageString(FUW10401SFConst.SMLN_PREMIUM_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_DSP);
		}
		else
		{
			bean.sendMessageString(FUW10401SFConst.SMLN_PREMIUM_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_HIDSP);
		}
		
		// キャンペーン文言制御フラグの設定を行う
		if ((HKKS_MT_JKYO_SBT_CD_MT.equals(hkksMtJkyoSbtCd) && (HKKS_SK_JKYO_SBT_CD_HT.equals(hkksSkJkyoSbtCd) || HKKS_SK_JKYO_SBT_CD_MZ.equals(hkksSkJkyoSbtCd)))
				|| ((HKKS_MT_JKYO_SBT_CD_HT.equals(hkksMtJkyoSbtCd) || HKKS_MT_JKYO_SBT_CD_MZ.equals(hkksMtJkyoSbtCd)) && HKKS_SK_JKYO_SBT_CD_MT.equals(hkksSkJkyoSbtCd))
				)
		{
			// 引越し元がマンションタイプで引越し先がホームタイプ／メゾンタイプ 又は
			// 引越し元がホームタイプ／メゾンタイプで引越し先がマンションタイプ。
			bean.sendMessageString(FUW10401SFConst.CMP_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_DSP);
		}
		else
		{
			bean.sendMessageString(FUW10401SFConst.CMP_MNGN_CTRL_FLG, X31CWebConst.DATABEAN_SET_VALUE, DSP_FLG_HIDSP);
		}
		
		return bean;
	}
	
	/**
	 * 提供方式パターンコードからマンションコースコードを再設定
	 * @param  manCrsCd マンションコースコード
	 * @param  tkhooshikiPtnCd 提供方式パターンコード
	 * @param  tk_hoshiki_chg_sbt_cd 提供方式変更種別
	 * @param  tonai_speed_cd 棟内速度コード
	 * @return 正常終了:true 異常終了:false
	 */
	private String setMansCrsCd(String manCrsCd, String tkhooshikiPtnCd, String tk_hoshiki_chg_sbt_cd, String tonai_speed_cd)
	{
		// 100M VDSL
		if ("001".equals(manCrsCd)) {
			
			if ("31".equals(tkhooshikiPtnCd)) {
				manCrsCd = "001_31";
			} else if ("32".equals(tkhooshikiPtnCd)) {
				manCrsCd = "001_32";
			}
			
		}
		
		// グローバル 100M VDSL
		if ("005".equals(manCrsCd)) {
			
			if ("32".equals(tkhooshikiPtnCd)) {
				manCrsCd = "005_32";
			} else if ("33".equals(tkhooshikiPtnCd)) {
				manCrsCd = "005_33";
			} else if ("34".equals(tkhooshikiPtnCd)) {
				manCrsCd = "005_34";
			} else if ("35".equals(tkhooshikiPtnCd)) {
				manCrsCd = "005_35";
			}
		}

		// 提供方式変更
		if (JFUWebCommon.isTkHosikiChgSbtCd(tk_hoshiki_chg_sbt_cd))
		{
			if (JFUStrConst.MT_CD01214_COURCE_CHANGE.contains(tonai_speed_cd))
			{
				manCrsCd = "C_010_" + tonai_speed_cd;
			}
			else
			{
				manCrsCd = "C_010_007";
			}
		}

		//  光配線（コース変更可能）
		if (JFUStrConst.CD01213_53.equals(tkhooshikiPtnCd))
		{
			manCrsCd = "011";
		}

		return manCrsCd;
	}
	
	/**
	 * 下りマッピングをします。
	 * @param bean
	 * @param outputMap
	 * @return X31SDataBeanAccess
	 */
	public X31SDataBeanAccess getFUSV024101CC(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV024101CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV024101CC);
		}

		ArrayList childList = null;

		childList = null;
		if (parentMap != null && parentMap.containsKey("mansion_search_a_list"))
		{
			childList = (ArrayList)parentMap.get("mansion_search_a_list");

			for (int i = 0; i < childList.size(); i++)
			{
				HashMap childMap = (HashMap)childList.get(i);
				
				// マンション一覧.マンションＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンションＩＤ
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.MT_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(MANSION_ID));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.MT_ID, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.ペアＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ペアＩＤ
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.PAIRID, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(PAIRID));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.PAIRID, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.ＣＡＴ−ＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ＣＡＴ−ＩＤ
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.CAT_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(CATID));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.CAT_ID, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.提供方式コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供方式コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TK_HSK_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(TK_HOSHIKI_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TK_HSK_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.提供方式契約番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供方式契約番号
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.NET_TK_HOSHIKI_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(NET_TK_HOSHIKI_KEI_NO));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.NET_TK_HOSHIKI_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.Ｐ−ＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.Ｐ−ＩＤ
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.P_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(PID));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.P_ID, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.支払方式コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.支払方式コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.PAY_HOSHIKI_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(PAY_HOSHIKI_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.PAY_HOSHIKI_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.マンションキャンペーンコード（ＮＥＴ） ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ネット用マンションキャンペーンコード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.NET_MANS_CAMPAIGN_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(NET_MANS_CAMPAIGN_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.NET_MANS_CAMPAIGN_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.アクセス回線速度コード ← マンション検索住所一覧マップ.アクセス回線速度コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.ACCSS_KISN_SPEED_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(ACCSS_KISN_SPEED_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.ACCSS_KISN_SPEED_CD, JFUStrConst.EMPTY);
				}
				// マンション一覧.加入契約申込条件コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.加入契約申込条件コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.KNYKEI_MSKM_JOKEN_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(KNYKEI_MSKM_JOKEN_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.KNYKEI_MSKM_JOKEN_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.棟内速度コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.棟内速度コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TONAI_SPEED_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(TONAI_SPEED_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TONAI_SPEED_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.ｅｏ光ネット従量プラン申込可否 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ｅｏ光ネット従量プラン申込可否
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.EOHNT_JURYO_PLAN_MKM_KH, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(EOHNT_JURYO_PLAN_MKM_KH));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.EOHNT_JURYO_PLAN_MKM_KH, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.提供料金種別コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供料金種別コード
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TK_PRC_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(TK_PRC_SBT_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TK_PRC_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.光配線1Gのみフラグ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.光配線1Gのみフラグ
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.HHS_1GONLY_FLG, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(HHS_1GONLY_FLG));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.HHS_1GONLY_FLG, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.ＶＯＮＵ４Ｋ−ＳＴＢ登録可否（テレビ） ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ＢＳパススルー可否
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TV_HOYU_VONU_4KSTB_KH, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(BSPT_KH));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TV_HOYU_VONU_4KSTB_KH, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.提供方式変更種別 ← マンション検索コモンコンポーネント部品(JFUMansionSearchCC).提供方式変更種別
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TK_HOSHIKI_CHG_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(TK_HOSHIKI_CHG_SBT_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TK_HOSHIKI_CHG_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
				// マンション一覧.マンション提供方式パターンコード ← マンション検索コモンコンポーネント部品(JFUMansionSearchCC).提供方式変更種別
				if (childMap != null)
				{
					bean.sendMessageString(FUW10401SFConst.TK_HOSHIKI_PATTERN_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(TK_HOSHIKI_PATTERN_CD));
				}
				else
				{
					bean.sendMessageString(FUW10401SFConst.TK_HOSHIKI_PATTERN_CD, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.EMPTY);
				}
			}
		}
		
		return bean;
	}
// ANK-3805-00-00 ADD START
	/**
	 * 複数電話サービス変更判定CCの上りマッピング処理です。
	 * <br>
	 * @param bean 共有フォームBean
	 * @param outputMap アウトマップ
	 * @return outputMap アウトマップ
	 */
	@SuppressWarnings("unchecked")
	public HashMap setFUSV024102CC(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// SSO情報Bean
		X31SDataBeanAccess ssoInfoBean = bean[1];
		// 共有フォームBean.サービス契約回線内訳情報
		X31SDataBeanAccess svcKeiKaisenUcwkInfoBean = bean[3];

		// SYSID
		parentMap.put("sysid", ssoInfoBean.sendMessageString(CommonInfoCFConst.SYSID_21, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約回線内訳番号
		parentMap.put("svc_kei_kaisen_ucwk_no", svcKeiKaisenUcwkInfoBean.sendMessageString(CommonInfoCFConst.SVC_KEI_KAISEN_UCWK_NO_26,
				X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put(FUSV024102CC, parentMap);

		return outputMap;
	}

	/**
	 * 複数電話サービス変更判定CCの下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param outputMap サービス結果マップ
	 * @return データBean
	 * @throws Exception
	 */
	public X31SDataBeanAccess getFUSV024102CC(X31SDataBeanAccess bean, HashMap outputMap) throws Exception
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV024102CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV024102CC);
		}

		if (parentMap != null && parentMap.containsKey("judge_result"))
		{
			String jdgeResult = (String)parentMap.get("judge_result");

			String telSvcChgSel = bean.sendMessageString(FUW10401SFConst.TEL_SVC_CHG_SEL, X31CWebConst.DATABEAN_GET_VALUE);

			// 判定結果が「1」の場合、変更有り。それ以外は変更無し。
			bean.sendMessageString(FUW10401SFConst.CHG_MULTI_PHONE_CALL_MSG_DSP_FLG, X31CWebConst.DATABEAN_SET_VALUE, jdgeResult);
		}

		return bean;
	}
// ANK-3805-00-00 ADD END
}