/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：FUSV0220_FUSV0220OPDBMapper
*	ソースファイル名：FUSV0220_FUSV0220OPDBMapper.java
*	作成者			：FJ
*	日付			：2012年03月23日
*＜機能概要＞
*	BP（マンション検索(追加申込)情報取得）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2012/03/23	FJ		新規作成
*	IT1-2012
*	-0000464	2012/05/22	FJ)岩元		障害対応に伴い暫定応急処置
*										別途マンション検索CCにより
*										本格対応とする
*
*
*	削除資産です！！
*
**********************************************************************/
package eo.web.webview.mapping;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;

import eo.common.constant.JFUStrConst;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.FUW00129SF.FUW00129SFConst;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class FUSV0220_FUSV0220OPDBMapper
{

	/** 空白 */
	private static final String EMP = "";

	/** 定数(1) */
	private static final String ONE = "1";

	/** 定数(2) */
	private static final String TWO = "2";

	/** 定数(3) */
	private static final String THREE = "3";

	/** 定数(4) */
	private static final String FOUR = "4";

	/** 定数(5) */
	private static final String FIVE = "5";

	/** 定数(6) */
	private static final String SIX = "6";

	/** 定数(7) */
	private static final String SEVEN = "7";

	/** 定数(8) */
	private static final String EIGHT = "8";
	
	/** マンション物件コード：マンション */
	private static final String MANSION_BUKKEN_CD_MF = "001";

	/** マンション物件コード：メゾン */
	private static final String MANSION_BUKKEN_CD_MZ = "002";

	/** 提供方式コード：イーサ */
	private static final String TK_HOSHIKI_CD_ETHER = "001";

	/** 提供方式コード：VDSL2 */
	private static final String TK_HOSHIKI_CD_VDSL2 = "004";

	/** 提供方式コード：VDSL3 */
	private static final String TK_HOSHIKI_CD_VDSL3 = "005";

	/** 提供方式コード：VDSL4 */
	private static final String TK_HOSHIKI_CD_VDSL4 = "006";

	/** 提供方式コード：VDSL5 */
	private static final String TK_HOSHIKI_CD_VDSL5 = "007";

	/** 提供方式コード：光配線 */
	private static final String TK_HOSHIKI_CD_LIGHT_WIRING = "008";

	/** 提供方式コード：ギガイーサ */
	private static final String TK_HOSHIKI_CD_GIGA_ETHER = "010";

	/** 加入契約申込条件コード：資料請求(マンション) */
	private static final String KNYKEI_MSKM_JOKEN_CD_SRSK_MF = "10";

	/** 加入契約申込条件コード：Web単独可 */
	private static final String KNYKEI_MSKM_JOKEN_CD_WEB_T = "11";

	/** 加入契約申込条件コード：Web併設可 */
	private static final String KNYKEI_MSKM_JOKEN_CD_WEB_H = "12";

	/** 加入契約申込条件コード：全戸一括 */
	private static final String KNYKEI_MSKM_JOKEN_CD_ZENKO = "13";

	/** 加入契約申込条件コード：導入済み */
	private static final String KNYKEI_MSKM_JOKEN_CD_ZUMI = "22";

	/** 宅内特殊配線有料工事コード：特殊配線 */
	private static final String TAKNI_TOKUHSEN_YRKOJI_CD_TKHN = "001";

	/** 光電話提供コード：申込可能 */
	private static final String HIKARI_TEL_TK_CD_MSKM_KANOU = "001";

	/** マンション価格帯コード：非低価格 */
	private static final String MANSION_KAKAKUTAI_CD_HI_TEI = "0";

	/** マンション価格帯コード：低価格 */
	private static final String MANSION_KAKAKUTAI_CD_TEI = "1";

	/** 特殊配線フラグ：特殊配線 */
	private static final String TKSH_HAISEN_TKSH = "1";
	
	/** 特殊配線フラグ：非特殊配線 */
	private static final String TKSH_HAISEN_HI_TKSH = "0";

	/** 提供料金種別コード：VDSL-S */
	private static final String TK_PRC_SBT_CD_VDSL_S = "001";

	/** 提供方式パターンコード：VDSL */
	private static final String TK_HOSHIKI_PTN_CD_VDSL = "1";

	/** 提供方式パターンコード：VDSL-S */
	private static final String TK_HOSHIKI_PTN_CD_VDSL_S = "2";

	/** 提供方式パターンコード：イーサ */
	private static final String TK_HOSHIKI_PTN_CD_ETHER = "3";

	/** 提供方式パターンコード：ギガイーサ */
	private static final String TK_HOSHIKI_PTN_CD_GIGA_ETHER = "4";

	/** 提供方式パターンコード：光配線 */
	private static final String TK_HOSHIKI_PTN_CD_LIGHT_WIRING = "5";

	/** 棟内速度コード (35M/100M) */
	private static final String TONAI_SPEED_CD_35M_100M = "002";

	/** 棟内速度コード (30M/70M) */
	private static final String TONAI_SPEED_CD_30M_70M = "003";

	/** 棟内速度コード (100M/100M) */
	private static final String TONAI_SPEED_CD_100M_100M = "006";

	/** 棟内速度コード (1G/1G)*/
	private static final String TONAI_SPEED_CD_1G_1G = "007";

	/** マップキー：mobile_1g */
	private static final String KEY_MOBILE_1G = "mobile_1g";

	/** マップキー：mobile_200m */
	private static final String KEY_MOBILE_200M = "mobile_200m";

	/** マップキー：mobile_100m */
	private static final String KEY_MOBILE_100M = "mobile_100m";

	/**
	 * コンストラクタ
	 */
	public FUSV0220_FUSV0220OPDBMapper()
	{
	}

	/**
	 * 上りマッピングをする(独自実装)
	 * @param bean　[0]：サービス契約番号一覧[1]：共有フォームビーン
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setFUSV022001SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{

		if (bean == null)
		{
			return null;
		}

		if (bean.length != 2)
		{
			return null;
		}

		// サービスフォームBean取得
		X31SDataBeanAccess serviceFormBean = bean[0];

		// -------------------------------------------------
		// 画面上でボタン押下された回線内訳情報の取得
		// -------------------------------------------------

		// 選択回線内訳インデックスを取得
		int index = serviceFormBean.sendMessageLong(FUW00129SFConst.SELECTED_KSN_UCWK_INDEX, X31CWebConst.DATABEAN_GET_VALUE).intValue();

		// サービスフォームBean.サービス契約回線内訳明細リスト取得
		X31SDataBeanAccessArray svcKsnUcwkList = serviceFormBean.getDataBeanArray("");

		// 選択されたサービス契約回線内訳明細を取得
		X31SDataBeanAccess svcKsnUcwk = svcKsnUcwkList.getDataBean(index);

		// マンション物件番号
//		String mansionBukkenNo = svcKsnUcwk.sendMessageString(FUW00129SFConst.MANSION_BUKKEN_NO_02, X31CWebConst.DATABEAN_GET_VALUE);

		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// マンション物件番号
//		parentMap.put("key_mansion_bukken_no", (String)mansionBukkenNo);
		
		// "" → マンション物件一覧照会マップ.ＫＥＹ＿郵便番号
		parentMap.put("key_mansion_bukken_pcd", EMP);
		
		// "" → マンション物件一覧照会マップ.ＫＥＹ＿都道府県名
		parentMap.put("key_mansion_bukken_state_nm", EMP);
		
		// "" → マンション物件一覧照会マップ.ＫＥＹ＿市区町村名
		parentMap.put("key_mansion_bukken_city_nm", EMP);
		
		// "" → マンション物件一覧照会マップ.ＫＥＹ＿大字通称名
		parentMap.put("key_mans_bukken_oaztsu_nm", EMP);

		outputMap.put("FUSV022001SC", parentMap);

		return outputMap;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：マンション検索４（検索結果）（量販・訪販）
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getFUSV022001SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		X31SDataBeanAccess commonInfoBean = bean[0];

		// WEB新規情報
		X31SDataBeanAccessArray web_new_info = commonInfoBean.getDataBeanArray(CommonInfoCFConst.WEB_NEW_INFO);
		X31SDataBeanAccess web_new_infobean = web_new_info.getDataBean(0);

		// WEB新規情報>マンション情報
		X31SDataBeanAccessArray mansionInfo = web_new_infobean.getDataBeanArray(CommonInfoCFConst.MANSION_INFO);
		X31SDataBeanAccess mansionInfoBean = mansionInfo.getDataBean(0);

		// WEB新規情報>その他情報
		X31SDataBeanAccessArray elseInfo = web_new_infobean.getDataBeanArray(CommonInfoCFConst.ELSE_INFO);
		X31SDataBeanAccess elseInfoBean = elseInfo.getDataBean(0);

		HashMap parentMap = null;
		if (outputMap.containsKey("FUSV022001SC"))
		{
			parentMap = (HashMap)outputMap.get("FUSV022001SC");
		}

		ArrayList childList = null;

		if (parentMap != null && parentMap.containsKey("EKK0861B501CBSMsg1List"))
		{
			childList = (ArrayList)parentMap.get("EKK0861B501CBSMsg1List");
			for (int i = 0; i < childList.size(); i++)
			{
				HashMap childMap = (HashMap)childList.get(i);
				
				// ----- 判定に使用する変数郡 -----
				String mansionBukkenCd = "";		// マンション物件コード
				String tonaiSpeedCd = "";			// 棟内速度コード
				String tkHoshikiCd = "";			// 提供方式コード
				String pairid = "";					// ペアＩＤ
				String knykeiMskmJokenCd = "";		// 加入契約申込条件コード
				String hikariTelTkCd = "";			// 光電話提供コード
				String hikariTvTkJokyoCd = "";		// 光テレビ提供状況コード
				String knykeiNet1gMskmKh = "";		// 加入契約ネット1G申込可否
				String knykeiNet200mMskmKh = "";	// 加入契約ネット200M申込可否
				String knykeiNet100mMskmKh = "";	// 加入契約ネット100M申込可否
				String maisonHikariTvTkCd = "";		// メゾン光テレビ提供コード
				String mansionKakakutaiCd = "";		// マンション価格帯コード
				String takniTokuhsenYrkojiCd = "";	// 宅内特殊配線有料工事コード
				String tkPrcSbtCd = "";				// 提供料金種別コード
				
				// ----- 共有フォームBean転記項目 START-----
				
				// マンション情報.マンション名 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件名
				if (childMap != null) 
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_NM_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_nm"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_NM_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.マンション物件番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンション物件番号
				if (childMap != null) 
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_NO_26, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("mansion_bukken_no"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_NO_26, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.支払方式コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.支払方式コード
				if (childMap != null) 
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.PAYWAY_CD_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pay_hoshiki_cd"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.PAYWAY_CD_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.標準サービス開始日数 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.標準サービス開始日数
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.STDARD_SVC_STA_NISU_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("stdard_svc_sta_nisu"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.STDARD_SVC_STA_NISU_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.マンション物件住所コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件住所コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_AD_CD_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_ad_cd"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_AD_CD_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.回線使用物件字丁名 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用物件字丁名
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_AZCHO_NM_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_azcho_nm"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_AZCHO_NM_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.加入契約申込条件コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.加入契約申込条件コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.KNYKEI_MSKM_JOKEN_CD_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("knykei_mskm_joken_cd"));
					// 変数にも保持する
					knykeiMskmJokenCd = (String)childMap.get("knykei_mskm_joken_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.KNYKEI_MSKM_JOKEN_CD_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
					// 変数にも保持する
					knykeiMskmJokenCd = new String();
				}
				
				// マンション情報.マンションＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンションＩＤ
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_ID_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("mansion_id"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_ID_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.マンションオーナーＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンションオーナーＩＤ
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_OWNR_ID_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("mansion_ownr_id"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_OWNR_ID_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				// マンション情報.回線使用契約番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約番号
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.KAISEN_USE_KEI_NO_16, (String)childMap.get("kaisen_use_kei_no"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.KAISEN_USE_KEI_NO_16, new String());
				}
				
				// マンション情報.提供方式契約番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供方式契約番号
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TK_HOSHIKI_KEI_NO_16, (String)childMap.get("tk_hoshiki_kei_no"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TK_HOSHIKI_KEI_NO_16, new String());
				}
				
				// マンション情報.オーナー契約番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.オーナー契約番号
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.OWNR_KEI_NO_16, (String)childMap.get("ownr_kei_no"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.OWNR_KEI_NO_16, new String());
				}
				
				// マンション情報.マンション物件コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンション物件コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_CD_16, (String)childMap.get("mansion_bukken_cd"));
					// 変数にも保持する
					mansionBukkenCd = (String)childMap.get("mansion_bukken_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_CD_16, new String());
					// 変数にも保持する
					mansionBukkenCd = new String();
				}
				
				// マンション情報.物件管理番号 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.物件管理番号
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.BKN_KNRI_NO_16, (String)childMap.get("bkn_knri_no"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.BKN_KNRI_NO_16, new String());
				}
				
				// マンション情報.ペアＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ペアＩＤ
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.PAIRID_16, (String)childMap.get("pairid"));
					// 変数にも保持する
					pairid = (String)childMap.get("pairid");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.PAIRID_16, new String());
					// 変数にも保持する
					pairid = new String();
				}
				// マンション情報.ＣＡＴ−ＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.ＣＡＴ−ＩＤ
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.CATID_16, (String)childMap.get("catid"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.CATID_16, new String());
				}
				
				// マンション情報.棟内速度コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.棟内速度コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TONAI_SPEED_CD_16, (String)childMap.get("tonai_speed_cd"));
					// 変数にも保持する
					tonaiSpeedCd = (String)childMap.get("tonai_speed_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TONAI_SPEED_CD_16, new String());
					// 変数にも保持する
					tonaiSpeedCd = new String();
				}
				
				// マンション情報.メゾン光テレビ提供コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.メゾン光テレビ提供コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MAISON_HIKARI_TV_TK_CD_16, (String)childMap.get("maison_hikari_tv_tk_cd"));
					// 変数にも保持する
					maisonHikariTvTkCd = (String)childMap.get("maison_hikari_tv_tk_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MAISON_HIKARI_TV_TK_CD_16, new String());
					// 変数にも保持する
					maisonHikariTvTkCd = new String();
				}
				
				// マンション情報.光テレビ提供状況コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.光テレビ提供状況コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.HIKARI_TV_TK_JOKYO_CD_16, (String)childMap.get("hikari_tv_tk_jokyo_cd"));
					// 変数にも保持する
					hikariTvTkJokyoCd = (String)childMap.get("hikari_tv_tk_jokyo_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.HIKARI_TV_TK_JOKYO_CD_16, new String());
					// 変数にも保持する
					hikariTvTkJokyoCd = new String();
				}
				// マンション情報.光電話提供コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.光電話提供コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.HIKARI_TEL_TK_CD_16, (String)childMap.get("hikari_tel_tk_cd"));
					// 変数にも保持する
					hikariTelTkCd = (String)childMap.get("hikari_tel_tk_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.HIKARI_TEL_TK_CD_16, new String());
					// 変数にも保持する
					hikariTelTkCd = new String();
				}
				
				// マンション情報.マンション価格帯コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.マンション価格帯コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_KAKAKUTAI_CD_16, (String)childMap.get("mansion_kakakutai_cd"));
					// 変数にも保持する
					mansionKakakutaiCd = (String)childMap.get("mansion_kakakutai_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MANSION_KAKAKUTAI_CD_16, new String());
					// 変数にも保持する
					mansionKakakutaiCd = new String();
				}
				
				// マンション情報.宅内特殊配線有料工事コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.宅内特殊配線有料工事コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TAKNI_TOKUHSEN_YRKOJI_CD_16, (String)childMap.get("takni_tokuhsen_yrkoji_cd"));
					takniTokuhsenYrkojiCd = (String)childMap.get("takni_tokuhsen_yrkoji_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TAKNI_TOKUHSEN_YRKOJI_CD_16, new String());
					takniTokuhsenYrkojiCd = new String();
				}
				
				// マンション情報.提供方式コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供方式コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_CD_16, (String)childMap.get("tk_hoshiki_cd"));
					// 変数にも保持する
					tkHoshikiCd = (String)childMap.get("tk_hoshiki_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_CD_16, new String());
					// 変数にも保持する
					tkHoshikiCd = new String();
				}
				
				// マンション情報.提供料金種別コード ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.提供料金種別コード
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TK_PRC_SBT_CD_16, (String)childMap.get("tk_prc_sbt_cd"));
					tkPrcSbtCd = (String)childMap.get("tk_prc_sbt_cd");
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TK_PRC_SBT_CD_16, new String());
					tkPrcSbtCd = new String();
				}
				
				// マンション情報.加入契約ネット１Ｇ申込可否 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.加入契約ネット1G申込可否
				if (childMap != null)
				{
					knykeiNet1gMskmKh = (String)childMap.get("knykei_net_1g_mskm_kh");
				}
				else
				{
					knykeiNet1gMskmKh = new String();
				}
				// マンション情報.加入契約ネット２００Ｍ申込可否 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.加入契約ネット200M申込可否
				if (childMap != null)
				{
					knykeiNet200mMskmKh = (String)childMap.get("knykei_net_200m_mskm_kh");
				}
				else
				{
					knykeiNet200mMskmKh = new String();
				}
				// マンション情報.加入契約ネット１００Ｍ申込可否 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.加入契約ネット100M申込可否
				if (childMap != null)
				{
					knykeiNet100mMskmKh = (String)childMap.get("knykei_net_100m_mskm_kh");
				}
				else
				{
					knykeiNet100mMskmKh = new String();
				}

				// マンション情報.Ｐ−ＩＤ ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.Ｐ−ＩＤ
				if (childMap != null)
				{
					elseInfoBean.sendMessageString(CommonInfoCFConst.SHUGO_PID_18, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pid"));
				}
				else
				{
					elseInfoBean.sendMessageString(CommonInfoCFConst.SHUGO_PID_18, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// ----- 共有フォームBean転記項目 END-----
				
				// ----- 共有フォームBean編集項目 START-----

				if(!isNull(childMap.get("mansion_bukken_cd")))
				{
					mansionBukkenCd = (String)childMap.get("mansion_bukken_cd");
				}
				
				if(MANSION_BUKKEN_CD_MF.equals(mansionBukkenCd))
				{
					// 申込マンションタイプ設定＝マンション
					web_new_infobean.sendMessageString(CommonInfoCFConst.MSKM_MNS_TYPE_06, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.MSKM_MNS_TYPE_MANSION);
					
					// マンション物件コードが001(マンション)の場合
					Map<String, String> mskmKanouFlgMap = getNetMskmKhHnti001(tonaiSpeedCd, tkHoshikiCd, pairid, knykeiMskmJokenCd);
					// １Ｇ申込可能フラグ
					mansionInfoBean.sendMessageString(CommonInfoCFConst.MOBILE_1G_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap.get(KEY_MOBILE_1G));

					// ２００メガ申込可能フラグ
					mansionInfoBean
							.sendMessageString(CommonInfoCFConst.MOBILE_200M_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap.get(KEY_MOBILE_200M));

					// １００メガ申込可能フラグ
					mansionInfoBean
							.sendMessageString(CommonInfoCFConst.MOBILE_100M_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap.get(KEY_MOBILE_100M));
					
					// 光電話の申込可否の判定を行う。
					String telMskmKh = this.getTelMskmKhHnti001(knykeiMskmJokenCd, hikariTelTkCd);
					
					// 共有フォームBean.マンション情報の値を設定する。
					// 光電話申込可能フラグ
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TEL_16, X31CWebConst.DATABEAN_SET_VALUE, telMskmKh);
					
					// 光テレビの申込可否判定を行う。
					String tvMskmKh = this.getTvMskmKhHnti001(hikariTvTkJokyoCd);
					
					// 共有フォームBean.マンション情報の値を設定する。
					// 光テレビ申込可能フラグ
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TV_16, X31CWebConst.DATABEAN_SET_VALUE, tvMskmKh);
				
				}
				else if(MANSION_BUKKEN_CD_MZ.equals(mansionBukkenCd))
				{
					// 申込マンションタイプ＝メゾン
					web_new_infobean.sendMessageString(CommonInfoCFConst.MSKM_MNS_TYPE_06, X31CWebConst.DATABEAN_SET_VALUE, JFUStrConst.MSKM_MNS_TYPE_MEZON);
					
					// 加入契約申込条件コードが"22"(導入済み)の場合
					if (KNYKEI_MSKM_JOKEN_CD_ZUMI.equals(knykeiMskmJokenCd))
					{
						// ネット申込可能として、コース申込判定のうえ、共有フォームBean.マンション一覧に設定する。
						// １Ｇ申込可能フラグ	mobile_1g	加入契約ネット1G申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
						// 									加入契約ネット1G申込可否が"0"(申込不可)の場合"1"(申込不可)を設定
						// ２００メガ申込可能フラグ	 mobile_200m	加入契約ネット200M申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
						//											加入契約ネット200M申込可否が"0"(申込不可)の場合"1"(申込不可)を設定
						// １００メガ申込可能フラグ		mobile_100m		加入契約ネット100M申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
						//												加入契約ネット100M申込可否が"0"(申込不可)の場合"1"(申込不可)を設定
						Map<String, String> mskmKanouFlgMap = this.getNetMskmKhHnti002(knykeiNet1gMskmKh, knykeiNet200mMskmKh, knykeiNet100mMskmKh);

						// 共有フォームBean.マンション情報の値を設定する。
						// １Ｇ申込可能フラグ
						mansionInfoBean
								.sendMessageString(CommonInfoCFConst.MOBILE_1G_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap.get(KEY_MOBILE_1G));

						// ２００メガ申込可能フラグ
						mansionInfoBean.sendMessageString(CommonInfoCFConst.MOBILE_200M_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap
								.get(KEY_MOBILE_200M));

						// １００メガ申込可能フラグ
						mansionInfoBean.sendMessageString(CommonInfoCFConst.MOBILE_100M_16, X31CWebConst.DATABEAN_SET_VALUE, mskmKanouFlgMap
								.get(KEY_MOBILE_100M));

						// 光電話の申込可否の判定を行う。
						String telMskmKh = this.getTelMskmKhHnti002(hikariTelTkCd);

						// 共有フォームBean.マンション情報の値を設定する。
						// 光電話申込可能フラグ
						mansionInfoBean.sendMessageString(CommonInfoCFConst.TEL_16, X31CWebConst.DATABEAN_SET_VALUE, telMskmKh);

						// 共有フォームBean.マンション情報の値を設定する。
						// 光テレビ申込可能フラグ
						mansionInfoBean.sendMessageString(CommonInfoCFConst.TV_16, X31CWebConst.DATABEAN_SET_VALUE, maisonHikariTvTkCd);
					}
				}

				// 低価格マンションフラグを設定する。
				// マンション価格帯コードが"1"(低価格)の場合"1"(低価格)を設定
				if (MANSION_KAKAKUTAI_CD_TEI.equals(mansionKakakutaiCd))
				{
					// マンション情報.低価格マンションフラグ
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TEIKAKAKU_MANSION_16, X31CWebConst.DATABEAN_SET_VALUE, MANSION_KAKAKUTAI_CD_TEI);
				}
				else
				{
					// "0"(非低価格)を設定
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TEIKAKAKU_MANSION_16, X31CWebConst.DATABEAN_SET_VALUE, MANSION_KAKAKUTAI_CD_HI_TEI);
				}
				if (TAKNI_TOKUHSEN_YRKOJI_CD_TKHN.equals(takniTokuhsenYrkojiCd))
				{
					// マンション情報.特殊配線マンションフラグ
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TKSH_HAISEN_16, X31CWebConst.DATABEAN_SET_VALUE, TKSH_HAISEN_TKSH);
				}
				// 共有フォームBean.WEB新規情報.マンション情報.宅内特殊配線有料工事コードが001でない場合
				else
				{
					// "0"(非特殊配線)を設定
					mansionInfoBean.sendMessageString(CommonInfoCFConst.TKSH_HAISEN_16, X31CWebConst.DATABEAN_SET_VALUE, TKSH_HAISEN_HI_TKSH);
				}
				
				// 提供方式パターンコードを設定する。
				String teikyoHoshikiPtnCd = this.getTeikyoHoshikiPtnCd(tkHoshikiCd, tkPrcSbtCd);
				// マンション情報.提供方式パターンコード
				mansionInfoBean.sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_PTN_CD_16, X31CWebConst.DATABEAN_SET_VALUE, teikyoHoshikiPtnCd);

				// マンション情報.マンション情報 検索・郵便番号（上） ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件郵便番号(上3桁)
				// マンション情報.マンション情報 検索・郵便番号（下） ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件郵便番号(下4桁)
				if (childMap != null)
				{
					String pcd = (String)childMap.get("kisnusekei_bkn_pcd");
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_PCD1_16, X31CWebConst.DATABEAN_SET_VALUE, pcd.substring(0, 3));
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_PCD2_16, X31CWebConst.DATABEAN_SET_VALUE, pcd.substring(3, 7));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_PCD1_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_PCD2_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// マンション情報.回線使用契約物件都道府県名 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件都道府県名
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_STATE_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_state_nm"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_STATE_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// マンション情報.回線使用契約物件市区町村名 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件市区町村名
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_CITY_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_city_nm"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_CITY_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// マンション情報.回線使用契約物件大字通称名 ← マンション検索住所一覧マップ.マンション物件一覧照会（複合検索）明細.回線使用契約物件大字通称名
				if (childMap != null)
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_AZA_16, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kisnusekei_bkn_oaztsu_nm"));
				}
				else
				{
					mansionInfoBean.sendMessageString(CommonInfoCFConst.SEARCH_AZA_16, X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}
		return bean;
	}

	/**
	 * オブジェクトがNullかどうか判断します
	 * <br>
	 * @param val
	 * @return
	 */
	private boolean isNull(Object val)
	{
		boolean ret = false;
		if(val == null)
		{
			ret = true;
		}
		else
		{
			ret = false;
		}
		return ret;
	}
	
	/**
	 * 提供方式パターンコードを取得する。
	 * 
	 * <br>
	 * @param tkHoshikiCd 提供方式コード
	 * @param tkPrcSbtCd 提供料金種別コード
	 * @return 提供方式パターンコード
	 */
	private String getTeikyoHoshikiPtnCd(String tkHoshikiCd, String tkPrcSbtCd)
	{

		// 提供方式コードが"004"、"005"、"006" の場合は"1"(VDSL)を設定
		if (TK_HOSHIKI_CD_VDSL2.equals(tkHoshikiCd) || TK_HOSHIKI_CD_VDSL3.equals(tkHoshikiCd) || TK_HOSHIKI_CD_VDSL4.equals(tkHoshikiCd))
		{
			return TK_HOSHIKI_PTN_CD_VDSL;
		}

		// 提供方式コードが"007"かつ、提供料金種別コードが"001"でない場合は"1"(VDSL)を設定
		if (TK_HOSHIKI_CD_VDSL5.equals(tkHoshikiCd) && !TK_PRC_SBT_CD_VDSL_S.equals(tkPrcSbtCd))
		{
			return TK_HOSHIKI_PTN_CD_VDSL;
		}

		// 提供料金種別コードが"001"(VDSL-S)の場合は"2"(VDSL-S)を設定
		if (TK_PRC_SBT_CD_VDSL_S.equals(tkPrcSbtCd))
		{
			return TK_HOSHIKI_PTN_CD_VDSL_S;
		}

		// 提供方式コードが"001"の場合は"3"(イーサ)を設定
		if (TK_HOSHIKI_CD_ETHER.equals(tkHoshikiCd))
		{
			return TK_HOSHIKI_PTN_CD_ETHER;
		}

		// 提供方式コードが"0010"の場合は"4"(ギガイーサ)を設定
		if (TK_HOSHIKI_CD_GIGA_ETHER.equals(tkHoshikiCd))
		{
			return TK_HOSHIKI_PTN_CD_GIGA_ETHER;
		}

		// 提供方式コードが"008"の場合は"5"(光配線)を設定
		if (TK_HOSHIKI_CD_LIGHT_WIRING.equals(tkHoshikiCd))
		{
			return TK_HOSHIKI_PTN_CD_LIGHT_WIRING;
		}

		return EMP;
	}

	/**
	 * ネット申込可否とコースの判定を行う。
	 * マンション用。
	 *  
	 * <br>
	 * @param tonaiSpeedCd 棟内速度コード
	 * @param tkHoshikiCd 提供方式コード
	 * @param pairid ペアＩＤ
	 * @param knykeiMskmJokenCd 加入契約申込条件コード
	 * @return ネット申込可否
	 */
	private Map<String, String> getNetMskmKhHnti001(String tonaiSpeedCd, String tkHoshikiCd, String pairid, String knykeiMskmJokenCd)
	{

		HashMap<String, String> mskmKanouFlgMap = new HashMap<String, String>();

		// 申込不可を初期値で設定する。
		// 1G
		mskmKanouFlgMap.put(KEY_MOBILE_1G, "1");
		// 200M
		mskmKanouFlgMap.put(KEY_MOBILE_200M, "1");
		// 100M
		mskmKanouFlgMap.put(KEY_MOBILE_100M, "1");

		// 加入契約申込条件コードが"10"(資料請求)、"11"(Web可単独)、"12"(Web可併設)、"13"(全戸一括)以外の場合
		if (!this.isNetOk001(knykeiMskmJokenCd))
		{

			// 全て申込不可で返却
			return mskmKanouFlgMap;
		}

		// 棟内速度コード 002(35M/100M)の場合
		if (TONAI_SPEED_CD_35M_100M.equals(tonaiSpeedCd))
		{

			// 提供方式コード：004(VDSL2)の場合
			if (TK_HOSHIKI_CD_VDSL2.equals(tkHoshikiCd))
			{

				// 100M可
				mskmKanouFlgMap.put(KEY_MOBILE_100M, "0");

				// ペアIDが設定されている場合
				if (this.isSetId(pairid))
				{

					// 1Gも可
					mskmKanouFlgMap.put(KEY_MOBILE_1G, "0");
				}
			}
		}

		// 棟内速度コード 003(30M/70M)の場合
		else if (TONAI_SPEED_CD_30M_70M.equals(tonaiSpeedCd))
		{

			// 提供方式コード：004(VDSL2),005(VDSL3),006(VDSL4)の場合
			if (TK_HOSHIKI_CD_VDSL2.equals(tkHoshikiCd) || TK_HOSHIKI_CD_VDSL3.equals(tkHoshikiCd) || TK_HOSHIKI_CD_VDSL4.equals(tkHoshikiCd))
			{

				// 100M可
				mskmKanouFlgMap.put(KEY_MOBILE_100M, "0");

				// ペアIDが設定されている場合
				if (this.isSetId(pairid))
				{

					// 1Gも可
					mskmKanouFlgMap.put(KEY_MOBILE_1G, "0");
				}
			}
		}

		// 棟内速度コード 006(100M/100M)の場合
		else if (TONAI_SPEED_CD_100M_100M.equals(tonaiSpeedCd))
		{

			// 提供方式コード：001(イーサ),007(VDSL5),008(光配線)の場合
			if (TK_HOSHIKI_CD_ETHER.equals(tkHoshikiCd) || TK_HOSHIKI_CD_VDSL5.equals(tkHoshikiCd) || TK_HOSHIKI_CD_LIGHT_WIRING.equals(tkHoshikiCd))
			{

				// 100M可
				mskmKanouFlgMap.put(KEY_MOBILE_100M, "0");

				// ペアIDが設定されている場合
				if (this.isSetId(pairid))
				{

					// 1Gも可
					mskmKanouFlgMap.put(KEY_MOBILE_1G, "0");
				}
			}
		}

		// 棟内速度コード 007(1G/1G)の場合
		else if (TONAI_SPEED_CD_1G_1G.equals(tonaiSpeedCd))
		{

			// 提供方式コード：001(イーサ),008(光配線),0010(ギガイーサ)の場合
			if (TK_HOSHIKI_CD_ETHER.equals(tkHoshikiCd) || TK_HOSHIKI_CD_LIGHT_WIRING.equals(tkHoshikiCd)
					|| TK_HOSHIKI_CD_GIGA_ETHER.equals(tkHoshikiCd))
			{

				// 提供方式コード：001(イーサ) かつ 全戸一括の場合は100メガ申込可能フラグは立てず、1G申込可能フラグだけ立てる。
				// 提供方式コード：001(イーサ) かつ 全戸一括以外の場合
				if (!(TK_HOSHIKI_CD_ETHER.equals(tkHoshikiCd) && KNYKEI_MSKM_JOKEN_CD_ZENKO.equals(knykeiMskmJokenCd)))
				{

					// 100M可
					mskmKanouFlgMap.put(KEY_MOBILE_100M, "0");
				}

				// 1Gも可
				mskmKanouFlgMap.put(KEY_MOBILE_1G, "0");
			}
		}

		return mskmKanouFlgMap;
	}

	/**
	 * ペアID設定チェック
	 * 
	 * <br>
	 * @param pairId ペアID
	 * @return チェック結果
	 */
	private boolean isSetId(String pairid)
	{
		
		// ペアIDがNULLの場合
		if (pairid == null)
		{
			return false;
		}
		
		// ペアIDが空文字の場合
		if ("".equals(pairid))
		{
			return false;
		}
		
		// ペアIDがハイフンの場合
		if ("-".equals(pairid))
		{
			return false;
		}
		
		return true;
	}
	
	/**
	 * ネット申込可否とコースの判定を行う。
	 * メゾン用。
	 * 
	 * <br>
	 * @param knykeiNet1gMskmKh 加入契約ネット1G申込可否
	 * @param knykeiNet200mMskmKh 加入契約ネット200M申込可否
	 * @param knykeiNet100mMskmKh 加入契約ネット100M申込可否
	 * @return ネット申込可否
	 */
	private Map<String, String> getNetMskmKhHnti002(String knykeiNet1gMskmKh, String knykeiNet200mMskmKh, String knykeiNet100mMskmKh)
	{

		HashMap<String, String> mskmKanouFlgMap = new HashMap<String, String>();

		mskmKanouFlgMap.put(KEY_MOBILE_1G, "1");
		mskmKanouFlgMap.put(KEY_MOBILE_200M, "1");
		mskmKanouFlgMap.put(KEY_MOBILE_100M, "1");

		// 1G申込可能フラグ
		// 加入契約ネット1G申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
		if ("1".equals(knykeiNet1gMskmKh))
		{

			mskmKanouFlgMap.put(KEY_MOBILE_1G, "0");
		}

		// ２００メガ申込可能フラグ
		// 加入契約ネット200M申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
		if ("1".equals(knykeiNet200mMskmKh))
		{

			mskmKanouFlgMap.put(KEY_MOBILE_200M, "0");
		}

		// １００メガ申込可能フラグ
		// 加入契約ネット100M申込可否が"1"(申込可能)の場合"0"(申込可能)を設定
		if ("1".equals(knykeiNet100mMskmKh))
		{

			mskmKanouFlgMap.put(KEY_MOBILE_100M, "0");
		}

		return mskmKanouFlgMap;
	}

	/**
	 * 光電話の申込可否判定を行う。
	 * マンション用。
	 * 
	 * <br>
	 * @param knykeiMskmJokenCd 加入契約申込条件コード
	 * @param hikariTelTkCd 光電話提供コード
	 * @return 申込可否
	 */
	private String getTelMskmKhHnti001(String knykeiMskmJokenCd, String hikariTelTkCd)
	{

		// 加入契約申込条件コードが"10"(資料請求)、"11"(Web可単独)、"12"(Web可併設)、"13"(全戸一括)のいずれかの場合
		if (this.isNetOk001(knykeiMskmJokenCd))
		{

			// ネットの申込が可能な為、光電話の申込可否の判定を行う。
			// 光電話提供コードが"001"(申込可能)の場合
			if (HIKARI_TEL_TK_CD_MSKM_KANOU.equals(hikariTelTkCd))
			{

				// 申込可能
				return "0";
			}
		}

		// 申込不可
		return "1";
	}

	/**
	 * 光電話の申込可否判定を行う。
	 * メゾン用。
	 * 
	 * <br>
	 * @param hikariTelTkCd 光電話提供コード
	 * @return 申込可否
	 */
	private String getTelMskmKhHnti002(String hikariTelTkCd)
	{

		// 光電話提供コードが"001"(申込可能)の場合"0"(申込可能)を設定
		if (HIKARI_TEL_TK_CD_MSKM_KANOU.equals(hikariTelTkCd))
		{
			return "0";
		}

		// "1"(申込不可)を設定
		return "1";
	}

	/**
	 * 光テレビの申込可否判定を行う。
	 * マンション用。
	 * 
	 * <br>
	 * @param hikariTvTkJokyoCd 光テレビ提供状況コード
	 * @return 申込可否
	 */
	private String getTvMskmKhHnti001(String hikariTvTkJokyoCd)
	{

		// 光テレビ提供状況コードが"1"または"2"の場合
		if ("1".equals(hikariTvTkJokyoCd) || "2".equals(hikariTvTkJokyoCd))
		{
			// 申込可
			return "10";
		}
		// 申込不可
		return "0";
	}

	/**
	 * 提供方式パターンコードを提供方式コード値に変更する。
	 * @param ofWayPatternCd 提供方式パターンコード
	 * @param tkPscSbtCd 提供料金種別コード
	 * @return 処理結果
	 */
	public String changePettern(String ofWayPatternCd, String tkPscSbtCd)
	{
		// 提供方式パターンコードを、共有フォームBeanの値に変更する。
		if ("001".endsWith(ofWayPatternCd))
		{
			// 001のとき、提供方式コードに3を設定(イーサ)
			return THREE;
		}
		else if ("002".equals(ofWayPatternCd))
		{
			// 002のとき、提供方式コードに6を設定(DOCSIS)
			return SIX;
		}
		// 003〜007のとき
		else if ("003".equals(ofWayPatternCd) || "004".equals(ofWayPatternCd) || "005".equals(ofWayPatternCd))
		{
			// 提供料金種別コードが001のとき、提供方式コードに2を設定(VDSL-S)
			if ("001".equals(tkPscSbtCd))
			{
				return TWO;
			}
			else
			{
				// 提供方式コードに1を設定(VDSL)
				return ONE;
			}
		}
		else if ("006".equals(ofWayPatternCd) || "007".equals(ofWayPatternCd))
		{
			// 提供料金種別コードが001のとき、提供方式コードに2を設定(VDSL-S)
			if ("001".equals(tkPscSbtCd))
			{
				return TWO;
			}
			else
			{
				// 提供方式コードに1を設定(VDSL)
				return ONE;
			}
		}
		else if ("008".equals(ofWayPatternCd))
		{
			// 008のとき、提供方式コードに5を設定(光配線)
			return FIVE;
		}
		else if ("009".equals(ofWayPatternCd))
		{
			// 009のとき、提供方式コードに7を設定(旧光直収)
			return SEVEN;
		}
		else if ("010".equals(ofWayPatternCd))
		{
			// 010のとき、提供方式コードに4を設定(ギガイーサ)
			return FOUR;
		}
		else if ("011".equals(ofWayPatternCd))
		{
			// 011のとき、提供方式コードに8を設定(光テレビ)
			return EIGHT;
		}
		return EMP;
	}

	/**
	 * 指定した加入契約申込条件コードから、ネットが提供かどうか判定する。
	 * マンション用。
	 * <br>
	 * @param knykeiMskmJokenCd 加入契約申込条件コード
	 * @return 提供：true 未提供：false
	 */
	private boolean isNetOk001(String knykeiMskmJokenCd)
	{

		// 加入契約申込条件コードが10,11,12,13の場合、ネット提供。
		if (KNYKEI_MSKM_JOKEN_CD_SRSK_MF.equals(knykeiMskmJokenCd) || KNYKEI_MSKM_JOKEN_CD_WEB_T.equals(knykeiMskmJokenCd))
		{
			return true;
		}

		if (KNYKEI_MSKM_JOKEN_CD_WEB_H.equals(knykeiMskmJokenCd) || KNYKEI_MSKM_JOKEN_CD_ZENKO.equals(knykeiMskmJokenCd))
		{
			return true;
		}

		// 未提供
		return false;
	}
}