/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：FUSV0169_FUSV0169OPDBMapper
*	ソースファイル名：FUSV0169_FUSV0169OPDBMapper.java
*	作成者			：FJ
*	日付			：2013年06月07日
*＜機能概要＞
*	BP（eo光ネット提供条件取得）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v5.00		2013/06/07	FJ)岡井		【提供条件対応】ロジック修正
*	v27.00		2016/11/04	FJ)美濃原	【ANK-3042-00-00】平成28年度12〜3月のキャンペーン対応
*	v40.00.00	2018/12/14	FJ)和田		【ANK-3248-00-00】マンションタイプの引越しNavi対応
*   v73.00      2024/11/15  FJ) 張本    【ANK-4493-00-00】【eo定期】光配線マンションのコースアップ対応
*
**********************************************************************/
package eo.web.webview.mapping;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
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.FUW00138SF.FUW00138SFConst;
import eo.web.webview.FUW10401SF.FUW10401SFConst;
import eo.web.webview.FUW10412SF.FUW10412SFConst;
import eo.web.webview.common.JFUScreenConst;
import eo.web.webview.common.JFUWebCommon;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class FUSV0169_FUSV0169OPDBMapper
{

	// ■SC・CC名
	/** FUSV016901CC */
	private static final String FUSV016901CC = "FUSV016901CC";

	// ■IN項目ID
	/** 項目ID：提供方式契約番号 */
	private static final String ITEM_TK_HOSHIKI_KEI_NO = "tk_hoshiki_kei_no";
	/** 項目ID：提供方式パターンコード */
	private static final String ITEM_TK_HOSHIKI_PTN_CD = "teikyo_hoshiki_ptn_cd";
	/** 項目ID：提供方式コード */
	private static final String ITEM_TK_HOSHIKI_CD = "teikyo_hoshiki_cd";
	/** 項目ID：回線使用契約番号 */
	private static final String ITEM_KAISEN_USE_KEI_NO = "kaisen_use_kei_no";
	/** 項目ID：ペアID */
	private static final String ITEM_PAIRID = "pairid";
	/** 項目ID：月額無料キャンペーンコード */
	private static final String ITEM_MONTH_FREE_CAMP_CD = "month_free_camp_cd";
	/** 項目ID：月額料金キャンペーン対象割引サービスコード */
	private static final String ITEM_GETU_CAMP_TG_WRIB_SVC_CD = "getu_camp_tg_wrib_svc_cd";
	/** 項目ID：初期費用キャンペーン対象割引サービスコード */
	private static final String ITEM_SHOKI_CAMP_TG_WRIB_SVC_CD = "shoki_camp_tg_wrib_svc_cd";
	/** 項目ID：キャンペーン対象割引サービスコードリスト */
	private static final String LIST_CAMP_TG_WRIB_SVC_CD = "list_camp_tg_wrib_svc_cd";

	// ■OUT項目ID
	/** 項目ID：月額用金リスト */
	private static final String ITEM_MONTH_PRC_LIST = "month_prc_list";
	/** 項目ID：初期費用リスト */
	private static final String ITEM_SHOKI_PRC_LIST = "shoki_prc_list";
	/** 項目ID：コース変更手数料リスト */
	private static final String ITEM_CRS_CHG_PRC_LIST = "crs_chg_prc_list";
	/** 項目ID：VDSL機器料金リスト */
	private static final String ITEM_VDSL_KIKI_PRC_LIST = "vdsl_kiki_prc_list";
	/** 項目ID：月額無料キャンペーンリスト */
	private static final String ITEM_MONTH_FREE_CAMP_LIST = "month_free_camp_list";
	/** 項目ID：加入契約請求金額 */
	private static final String ITEM_KANYU_KEI_SEIKY_AMNT = "kanyu_kei_seiky_amnt";
	/** 項目ID：加入契約相対プランコード */
	private static final String ITEM_KANYU_KEI_AITAI_PPLAN_CD = "kanyu_kei_aitai_pplan_cd";
	/** 項目ID：キャンペーン適用時月額金額 */
	private static final String ITEM_CAMP_MONTH_AMNT = "camp_month_amnt";
	/** 項目ID：マンション料金識別コード */
	private static final String ITEM_MANS_PRC_SKBT_CD = "mans_prc_skbt_cd";
	/** 項目ID：初期費用合計金額 */
	private static final String ITEM_SHOKI_SUM_AMNT = "shoki_sum_amnt";
	/** 項目ID：コース変更手数料合計金額 */
	private static final String ITEM_CRS_CHG_SUM_AMNT = "crs_chg_sum_amnt";
	/** 項目ID：キャンペーン適用時初期費用合計金額 */
	private static final String ITEM_SHOKI_CAMP_SUM_AMNT = "shoki_camp_sum_amnt";
	/** 項目ID：合計金額(VDSL・買取) */
	private static final String ITEM_VDSL_01 = "vdsl_01";
	/** 項目ID：合計金額(VDSL・レンタル) */
	private static final String ITEM_VDSL_02 = "vdsl_02";
	/** 項目ID：合計金額(VDSL・持込) */
	private static final String ITEM_VDSL_03 = "vdsl_03";
	/** 項目ID：割引種別コード */
	private static final String ITEM_APLY_CNT = "aply_cnt";
	/** 項目ID：マンションキャンペーンコード */
	private static final String ITEM_MANS_CAMP_CD = "mans_camp_cd";

	// ■定数
	/** マンション料金識別コード 機器代金(レンタル) */
	private static final String MANS_PRC_SKBT_CD_012 = "012";
	/** マンション料金識別コード 機器代金(買取) */
	private static final String MANS_PRC_SKBT_CD_015 = "015";
	/** 提供料金種別コード:001 */
	private static final String ITEM_TK_PRC_SBT_CD_001 = "001";
	/** 提供料金種別コード:002 */
	private static final String ITEM_TK_PRC_SBT_CD_002 = "002";

	// ■その他
	/** GET_VALUE */
	private static final String GET_BEAN = X31CWebConst.DATABEAN_GET_VALUE;
	/** SET_VALUE */
	private static final String SET_BEAN = X31CWebConst.DATABEAN_SET_VALUE;

	/** 定義取得パス 文言 */
	private static final String PATH_PA_CAMP_WRIB = "DISPSETTING/SETTING[@screenId='FUW00138']/DISPTEXT[@groupid='CAMP_WRIB']";
	/** 属性名 */
	private static final String QUERY_ATTR_NAME = "id";
	/** プロパティID 月額無料キャンペーンコード */
	private static final String GTGK_MRYO_CMP_CD = "GTGK_MRYO_CMP_CD";

	/**
	 * コンストラクタです。
	 */
	public FUSV0169_FUSV0169OPDBMapper()
	{
	}

	/**
	 * マンション料金取得CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @return マッピング結果
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	public HashMap setFUSV016901CC(X31SDataBeanAccess[] bean, HashMap dataMap) throws Exception
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 提供方式契約番号
		parentMap.put(ITEM_TK_HOSHIKI_KEI_NO, bean[1].sendMessageString(CommonInfoCFConst.TK_HOSHIKI_KEI_NO_16, GET_BEAN));
		// 提供方式パターンコード
		parentMap.put(ITEM_TK_HOSHIKI_PTN_CD, bean[1].sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_PTN_CD_16, GET_BEAN));
		// 提供方式コード
		parentMap.put(ITEM_TK_HOSHIKI_CD, bean[1].sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_CD_16, GET_BEAN));
		// 回線使用契約番号
		parentMap.put(ITEM_KAISEN_USE_KEI_NO, bean[1].sendMessageString(CommonInfoCFConst.KAISEN_USE_KEI_NO_16, GET_BEAN));
		// ペアID
		parentMap.put(ITEM_PAIRID, bean[1].sendMessageString(CommonInfoCFConst.PAIRID_16, GET_BEAN));
		// 月額無料キャンペーンコード
		parentMap.put(ITEM_MONTH_FREE_CAMP_CD, JFUWebCommon.getDispText(JFUScreenConst.SCREEN_ID_FUW00138, GTGK_MRYO_CMP_CD));

		// 定義マップ
		Map<String, String> definitionXmlMap = JFUWebCommon.getDispItemsAsMap(PATH_PA_CAMP_WRIB, QUERY_ATTR_NAME);
		if(definitionXmlMap != null && definitionXmlMap.size() > 0)
		{
			// 月額料金キャンペーン対象割引サービスコード
			parentMap.put(ITEM_GETU_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(ITEM_GETU_CAMP_TG_WRIB_SVC_CD));
			// 初期費用キャンペーン対象割引サービスコード
			parentMap.put(ITEM_SHOKI_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(ITEM_SHOKI_CAMP_TG_WRIB_SVC_CD));
			// キャンペーン対象割引サービスコードリスト
			parentMap.put(LIST_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(LIST_CAMP_TG_WRIB_SVC_CD));
		}

		// 設定
		dataMap.put(FUSV016901CC, parentMap);

		return dataMap;
	}

	/**
	 * マンション料金取得CCの上りマッピング処理です。(サービスフォームBeanより取得)
	 * <br>
	 * @param bean 引越しナビ住所変更申込／照会
	 * @param outputMap アウトマップ
	 * @return マッピング結果
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	public HashMap setFUSV016901CCChg(X31SDataBeanAccess bean, HashMap dataMap) throws Exception
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 提供方式契約番号
		parentMap.put(ITEM_TK_HOSHIKI_KEI_NO, bean.sendMessageString(FUW10412SFConst.KEY_NET_TK_HOSHIKI_KEI_NO, GET_BEAN));
		// 提供方式パターンコード
		parentMap.put(ITEM_TK_HOSHIKI_PTN_CD, bean.sendMessageString(FUW10412SFConst.KEY_HKKS_TK_HOSHIKI_PTN_CD, GET_BEAN));
		// 提供方式コード
		parentMap.put(ITEM_TK_HOSHIKI_CD, bean.sendMessageString(FUW10412SFConst.KEY_TK_HSK_CD, GET_BEAN));
		// 回線使用契約番号
		parentMap.put(ITEM_KAISEN_USE_KEI_NO, bean.sendMessageString(FUW10412SFConst.KEY_NET_KAISEN_USE_KEI_NO, GET_BEAN));
		// ペアID
		parentMap.put(ITEM_PAIRID, bean.sendMessageString(FUW10412SFConst.KEY_PAIRID, GET_BEAN));
		// 月額無料キャンペーンコード
		parentMap.put(ITEM_MONTH_FREE_CAMP_CD, JFUWebCommon.getDispText(JFUScreenConst.SCREEN_ID_FUW00138, GTGK_MRYO_CMP_CD));

		// 定義マップ
		Map<String, String> definitionXmlMap = JFUWebCommon.getDispItemsAsMap(PATH_PA_CAMP_WRIB, QUERY_ATTR_NAME);
		if(definitionXmlMap != null && definitionXmlMap.size() > 0)
		{
			// 月額料金キャンペーン対象割引サービスコード
			parentMap.put(ITEM_GETU_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(ITEM_GETU_CAMP_TG_WRIB_SVC_CD));
			// 初期費用キャンペーン対象割引サービスコード
			parentMap.put(ITEM_SHOKI_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(ITEM_SHOKI_CAMP_TG_WRIB_SVC_CD));
			// キャンペーン対象割引サービスコードリスト
			parentMap.put(LIST_CAMP_TG_WRIB_SVC_CD, definitionXmlMap.get(LIST_CAMP_TG_WRIB_SVC_CD));
		}

		// 設定
		dataMap.put(FUSV016901CC, parentMap);

		return dataMap;
	}

	/**
	 * VDSL(月額料金・初期費用)の下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 * @throws Exception 例外
	 */
	@SuppressWarnings("unchecked")
	public void setVdslPrcInfo(X31SDataBeanAccess[] bean, HashMap outputMap) throws Exception
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// マンション情報
		X31SDataBeanAccessArray mansInfoBeanArray = bean[1].getDataBeanArray(CommonInfoCFConst.MANSION_INFO);
		X31SDataBeanAccess mansBean = mansInfoBeanArray.getDataBean(0);

		// VDSL料金情報
		X31SDataBeanAccessArray vdslPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.VDSL_PRC_INFO);
		vdslPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslPrcInfoBean = vdslPrcInfoBeanArray.addDataBean();

		// VDSL月額費用割引キャンペーン情報
		X31SDataBeanAccessArray vdslGtgkCmpInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.VDSL_GTGK_CMP_INFO);
		vdslGtgkCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslGtgkCmpInfoBean = vdslGtgkCmpInfoBeanArray.addDataBean();

		// VDSL初期費用割引キャンペーン情報
		X31SDataBeanAccessArray vdslShkhCmpInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.VDSL_SHKH_CMP_INFO);
		vdslShkhCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslShkhCmpInfoBean = vdslShkhCmpInfoBeanArray.addDataBean();

		// ●基本料金
		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_MONTH_04, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金（モデム買取）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_PRC_MODEM_KAITORI_02, SET_BEAN, kanyuKeiSeikyAmnt);
			// 月額基本料金（モデムレンタル）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_PRC_MODEM_RENT_02, SET_BEAN, kanyuKeiSeikyAmnt);
			// 月額基本料金（モデム持込み）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_PRC_MODEM_MTKM_02, SET_BEAN, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金（モデム買取）
			vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_MODEM_KAITORI_04, SET_BEAN, 1, campMonthAmnt);
			vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_MODEM_KAITORI_04, SET_BEAN, 2, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金（モデムレンタル）
			vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_MODEM_RENT_04, SET_BEAN, 1, campMonthAmnt);
			vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_MODEM_RENT_04, SET_BEAN, 2, kanyuKeiSeikyAmnt);
		}

		String kaitoriShokiCamp = JFUStrConst.S_ZERO;

		// ●VDSLモデムレンタル料
		ArrayList vdslKikiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_VDSL_KIKI_PRC_LIST))
		{
			vdslKikiPrcList = (ArrayList)parentMap.get(ITEM_VDSL_KIKI_PRC_LIST);
		}

		for (int i = 0; i < vdslKikiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)vdslKikiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String mansPrcSkbtCd = (String)childMap.get(ITEM_MANS_PRC_SKBT_CD);
			String kikiPrc = JFUStrConst.S_ZERO;

			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kikiPrc = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			// VDSL買取初期費用の加算
			kaitoriShokiCamp = kikiPrc;

			// 円表記に変換
			kikiPrc = editPrc(kikiPrc);

			if(MANS_PRC_SKBT_CD_012.equals(mansPrcSkbtCd))
			{
				// ＶＤＳＬモデムレンタル料
				vdslPrcInfoBean.sendMessageString(FUW00138SFConst.VDSL_MODEM_RENT_PRC_02, SET_BEAN, kikiPrc);
				// 月額費用割引キャンペーン情報 ＶＤＳＬモデムレンタル料
				vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.VDSL_MODEM_RENT_PRC_04, SET_BEAN, 1, kikiPrc);
				vdslGtgkCmpInfoBean.sendMessageString(FUW00138SFConst.VDSL_MODEM_RENT_PRC_04, SET_BEAN, 2, kikiPrc);
			}
		}

		// ●月額合計金額
		// 合計（モデム買取）
		String kaitoriMonthSumPrc =  vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_PRC_MODEM_KAITORI_02, GET_BEAN);
		vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GOKEI_MODEM_KAITORI_02, SET_BEAN, kaitoriMonthSumPrc);

		// 合計（モデムレンタル）
		int rentalMonthSumPrc = 0;

		boolean rentalPrcFlg = true;
		String rentalMonthPrc = vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_PRC_MODEM_RENT_02, GET_BEAN);
		if(JFUWebCommon.isNull(rentalMonthPrc))
		{
			rentalMonthPrc = JFUStrConst.S_ZERO;
			rentalPrcFlg = false;
		}
		String rentalPrc = vdslPrcInfoBean.sendMessageString(FUW00138SFConst.VDSL_MODEM_RENT_PRC_02, GET_BEAN);
		if(JFUWebCommon.isNull(rentalPrc))
		{
			rentalPrc = JFUStrConst.S_ZERO;
			rentalPrcFlg = false;
		}

		if(rentalPrcFlg)
		{
			// 金額が正しく設定されている場合、金額を設定
			rentalMonthSumPrc = Integer.parseInt(delDspYen(rentalMonthPrc)) + Integer.parseInt(delDspYen(rentalPrc));
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GOKEI_MODEM_RENT_02, SET_BEAN, editPrc(String.valueOf(rentalMonthSumPrc)));
		}
		else
		{
			// 金額が正しく設定されていない場合、空文字を設定
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.GOKEI_MODEM_RENT_02, SET_BEAN, JFUStrConst.EMPTY);
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			if(!(childMap.containsKey(ITEM_VDSL_01) && childMap.containsKey(ITEM_VDSL_02) && childMap.containsKey(ITEM_VDSL_03)))
			{
				continue;
			}

			String shoki01 = JFUStrConst.S_ZERO;
			String shoki02 = JFUStrConst.S_ZERO;
			String shoki03 = JFUStrConst.S_ZERO;
			String shokiCamp = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_01)))
			{
				shoki01 = (String)childMap.get(ITEM_VDSL_01);
			}
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_02)))
			{
				shoki02 = (String)childMap.get(ITEM_VDSL_02);
			}
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_03)))
			{
				shoki03 = (String)childMap.get(ITEM_VDSL_03);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// キャンペーン適用時初期費用合計金額 
				shokiCamp = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				// キャンペーン適用時初期費用合計金額（VDSL買取）
				kaitoriShokiCamp = String.valueOf(Integer.parseInt(kaitoriShokiCamp)+Integer.parseInt(shokiCamp));
				// キャンペーンフラグ
				bean[2].sendMessageBoolean(FUW00138SFConst.CMP_FLG, SET_BEAN, true);

				// キャンペーン適用料金（モデムレンタル）
				vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_MODEM_RENT_03, SET_BEAN, editPrc(shokiCamp));
				// キャンペーン適用料金（モデム持込み）
				vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_MODEM_MTKM_03, SET_BEAN, editPrc(shokiCamp));
				// キャンペーン適用料金（モデム買取）（ＶＤＳＬモデム買取料＋契約事務手数料）
				if (JFUStrConst.TK_HOSHIKI_PTN_VDSL.equals(mansBean.sendMessageString(CommonInfoCFConst.TEIKYO_HOSHIKI_PTN_CD_16, GET_BEAN)))
				{
					vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_MODEM_KAITORI_03, SET_BEAN, editPrc(kaitoriShokiCamp));
				}
			}

			// 円表記に変換
			shoki01 = editPrc(shoki01);
			shoki02 = editPrc(shoki02);
			shoki03 = editPrc(shoki03);

			// 初期費用（モデム買取）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_MODEM_KAITORI_02, SET_BEAN, shoki01);
			// 初期費用（モデムレンタル）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_MODEM_RENT_02, SET_BEAN, shoki02);
			// 初期費用（モデム持込み）
			vdslPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_MODEM_MTKM_02, SET_BEAN, shoki03);

			// 初期費用割引キャンペーン通常料金（モデム買取）
			vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_MODEM_KAITORI_03, SET_BEAN, shoki01);
			// 初期費用割引キャンペーン通常料金（モデムレンタル）
			vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_MODEM_RENT_03, SET_BEAN, shoki02);
			// 初期費用割引キャンペーン通常料金（モデム持込み）
			vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_MODEM_MTKM_03, SET_BEAN, shoki03);

			if(ITEM_TK_PRC_SBT_CD_001.equals(mansBean.sendMessageString(CommonInfoCFConst.TK_PRC_SBT_CD_16, GET_BEAN))
					|| ITEM_TK_PRC_SBT_CD_002.equals(mansBean.sendMessageString(CommonInfoCFConst.TK_PRC_SBT_CD_16, GET_BEAN)))
			{
				// 旧VDSL-S または VDSL-S
				// キャンペーン適用料金（モデム買取）（ＶＤＳＬモデム買取料のみ）
				vdslShkhCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_MODEM_KAITORI_03, SET_BEAN, shoki01);
			}

			break;
		}
	}

	/**
	 * イーサの下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setEtherPrcInfo(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// イーサ料金情報
		X31SDataBeanAccessArray enetPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.ENET_PRC_INFO);
		enetPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess enetPrcInfoBean = enetPrcInfoBeanArray.addDataBean();

		// イーサ月額費用割引キャンペーン情報
		X31SDataBeanAccessArray enetCampPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.ENET_GTGK_CMP_INFO);
		enetCampPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess enetCampPrcInfoBean = enetCampPrcInfoBeanArray.addDataBean();

		// イーサ初期費用割引キャンペーン情報
		X31SDataBeanAccessArray enetShkCmpInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.ENET_SHKH_CMP_INFO);
		enetShkCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess enetShkCmpInfoBean = enetShkCmpInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				enetCampPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_MONTH_07, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			enetPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_05, SET_BEAN, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金
			enetCampPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 0, kanyuKeiSeikyAmnt);
			enetCampPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 1, campMonthAmnt);
			enetCampPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 2, kanyuKeiSeikyAmnt);
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean[2].sendMessageBoolean(FUW00138SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				enetShkCmpInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			enetPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_05, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			enetShkCmpInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}
	}

	/**
	 * ギガイーサの下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setGigaEtherPrcInfo(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// ギガイーサ料金情報
		X31SDataBeanAccessArray eGigaMonthPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_PRC_INFO);
		eGigaMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaMonthPrcInfoBean = eGigaMonthPrcInfoBeanArray.addDataBean();

		// ギガイーサ月額費用割引キャンペーン情報
		X31SDataBeanAccessArray eGigaCampMonthPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_GTGK_INFO);
		eGigaCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaCampMonthPrcInfoBean = eGigaCampMonthPrcInfoBeanArray.addDataBean();

		// ギガイーサ初期費用割引キャンペーン情報
		X31SDataBeanAccessArray eGigaCampShkPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_SHKH_INFO);
		eGigaCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaCampShkPrcInfoBean = eGigaCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5401.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7001.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				eGigaMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5501.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				eGigaMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5401.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7001.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5501.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 1, campMonthAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean[2].sendMessageBoolean(FUW00138SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				eGigaCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			eGigaMonthPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			eGigaCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}

		// ●コース変更手数料
		ArrayList crsChgPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_CRS_CHG_PRC_LIST))
		{
			crsChgPrcList = (ArrayList)parentMap.get(ITEM_CRS_CHG_PRC_LIST);
		}

		for (int i = 0; i < crsChgPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)crsChgPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_CRS_CHG_SUM_AMNT)))
			{
				continue;
			}

			// コース変更手数料合計金額
			String crsChgSumAmnt = JFUStrConst.S_ZERO;
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_CRS_CHG_SUM_AMNT)))
			{
				crsChgSumAmnt = (String)childMap.get(ITEM_CRS_CHG_SUM_AMNT);
			}

			// 円表記に変換
			crsChgSumAmnt = editPrc(crsChgSumAmnt);

			// コース変更料金
			eGigaMonthPrcInfoBean.sendMessageString(FUW00138SFConst.COURSECHG_PRC_08, SET_BEAN, crsChgSumAmnt);

			break;
		}
	}

	/**
	 * 光配線の下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setHikariPrcInfo(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// 光配線料金情報
		X31SDataBeanAccessArray hikariPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_PRC_INFO);
		hikariPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariPrcInfoBean = hikariPrcInfoBeanArray.addDataBean();

		// 光配線月額費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampMonthPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_GTGK_INFO);
		hikariCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampMonthPrcInfoBean = hikariCampMonthPrcInfoBeanArray.addDataBean();

		// 光配線初期費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampShkPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_SHKH_INFO);
		hikariCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampShkPrcInfoBean = hikariCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5701.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				hikariPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA7401.equals(kanyuKeiAitaiPplanCd))
			{
				// 10G
				hikariPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_10G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5701.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean[2].sendMessageBoolean(FUW00138SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				hikariCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			hikariPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			hikariCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}

		// ●コース変更手数料
		ArrayList crsChgPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_CRS_CHG_PRC_LIST))
		{
			crsChgPrcList = (ArrayList)parentMap.get(ITEM_CRS_CHG_PRC_LIST);
		}

		for (int i = 0; i < crsChgPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)crsChgPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_CRS_CHG_SUM_AMNT)))
			{
				continue;
			}

			// コース変更手数料合計金額
			String crsChgSumAmnt = JFUStrConst.S_ZERO;
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_CRS_CHG_SUM_AMNT)))
			{
				crsChgSumAmnt = (String)childMap.get(ITEM_CRS_CHG_SUM_AMNT);
			}

			// 円表記に変換
			crsChgSumAmnt = editPrc(crsChgSumAmnt);

			// コース変更料金
			hikariPrcInfoBean.sendMessageString(FUW00138SFConst.COURSECHG_PRC_08, SET_BEAN, crsChgSumAmnt);

			break;
		}
	}

	/**
	 * 旧光直収の下りマッピング処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setKyuHikariPrcInfo(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// 光配線料金情報
		X31SDataBeanAccessArray hikariPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_PRC_INFO);
		hikariPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariPrcInfoBean = hikariPrcInfoBeanArray.addDataBean();

		// 光配線月額費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampMonthPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_GTGK_INFO);
		hikariCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampMonthPrcInfoBean = hikariCampMonthPrcInfoBeanArray.addDataBean();

		// 光配線初期費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampShkPrcInfoBeanArray = bean[2].getDataBeanArray(FUW00138SFConst.GIGA_HIKARI_SHKH_INFO);
		hikariCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampShkPrcInfoBean = hikariCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW00138SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean[2].sendMessageBoolean(FUW00138SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				hikariCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			hikariPrcInfoBean.sendMessageString(FUW00138SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			hikariCampShkPrcInfoBean.sendMessageString(FUW00138SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}
	}

	/**
	 * 月額無料キャンペーン情報設定処理です。
	 * 
	 * <br>
	 * @param bean データBean
	 * @param outputMap	 データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setMonthFreeCampInfo(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		ArrayList monthFreeCampList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_FREE_CAMP_LIST))
		{
			monthFreeCampList = (ArrayList)parentMap.get(ITEM_MONTH_FREE_CAMP_LIST);
		}

		String mansCampCd = JFUStrConst.EMPTY;
		for (int i = 0; i < monthFreeCampList.size(); i++)
		{
			HashMap childMap = (HashMap)monthFreeCampList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_MANS_CAMP_CD)))
			{
				// マンションキャンペーンコード
				mansCampCd = (String)childMap.get(ITEM_MANS_CAMP_CD);
				break;
			}
		}

		if(!JFUWebCommon.isNull(mansCampCd))
		{
			// 月額無料キャンペーンコード
			bean[2].sendMessageString(FUW00138SFConst.GTGK_MRYO_CMP_CD, SET_BEAN, mansCampCd);
		}
	}

	/**
	 * VDSL(月額料金・初期費用)の下りマッピング処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 * @throws Exception 例外
	 */
	@SuppressWarnings("unchecked")
	public void setVdslPrcInfoChg(X31SDataBeanAccess bean, HashMap outputMap) throws Exception
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}
	
		// VDSL料金情報
		X31SDataBeanAccessArray vdslPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.VDSL_PRC_INFO);
		vdslPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslPrcInfoBean = vdslPrcInfoBeanArray.addDataBean();

		// VDSL月額費用割引キャンペーン情報
		X31SDataBeanAccessArray vdslGtgkCmpInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.VDSL_GTGK_CMP_INFO);
		vdslGtgkCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslGtgkCmpInfoBean = vdslGtgkCmpInfoBeanArray.addDataBean();

		// VDSL初期費用割引キャンペーン情報
		X31SDataBeanAccessArray vdslShkhCmpInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.VDSL_SHKH_CMP_INFO);
		vdslShkhCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess vdslShkhCmpInfoBean = vdslShkhCmpInfoBeanArray.addDataBean();

		// ●基本料金
		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_MONTH_04, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金（モデム買取）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_PRC_MODEM_KAITORI_02, SET_BEAN, kanyuKeiSeikyAmnt);
			// 月額基本料金（モデムレンタル）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_PRC_MODEM_RENT_02, SET_BEAN, kanyuKeiSeikyAmnt);
			// 月額基本料金（モデム持込み）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_PRC_MODEM_MTKM_02, SET_BEAN, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金（モデム買取）
			vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_MODEM_KAITORI_04, SET_BEAN, 1, campMonthAmnt);
			vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_MODEM_KAITORI_04, SET_BEAN, 2, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金（モデムレンタル）
			vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_MODEM_RENT_04, SET_BEAN, 1, campMonthAmnt);
			vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_MODEM_RENT_04, SET_BEAN, 2, kanyuKeiSeikyAmnt);
		}

		String kaitoriShokiCamp = JFUStrConst.S_ZERO;

		// ●VDSLモデムレンタル料
		ArrayList vdslKikiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_VDSL_KIKI_PRC_LIST))
		{
			vdslKikiPrcList = (ArrayList)parentMap.get(ITEM_VDSL_KIKI_PRC_LIST);
		}

		for (int i = 0; i < vdslKikiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)vdslKikiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String mansPrcSkbtCd = (String)childMap.get(ITEM_MANS_PRC_SKBT_CD);
			String kikiPrc = JFUStrConst.S_ZERO;

			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kikiPrc = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			// VDSL買取初期費用の加算
			kaitoriShokiCamp = kikiPrc;

			// 円表記に変換
			kikiPrc = editPrc(kikiPrc);

			if(MANS_PRC_SKBT_CD_012.equals(mansPrcSkbtCd))
			{
				// ＶＤＳＬモデムレンタル料
				vdslPrcInfoBean.sendMessageString(FUW10412SFConst.VDSL_MODEM_RENT_PRC_02, SET_BEAN, kikiPrc);
				// 月額費用割引キャンペーン情報 ＶＤＳＬモデムレンタル料
				vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.VDSL_MODEM_RENT_PRC_04, SET_BEAN, 1, kikiPrc);
				vdslGtgkCmpInfoBean.sendMessageString(FUW10412SFConst.VDSL_MODEM_RENT_PRC_04, SET_BEAN, 2, kikiPrc);
			}
		}

		// ●月額合計金額
		// 合計（モデム買取）
		String kaitoriMonthSumPrc =  vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_PRC_MODEM_KAITORI_02, GET_BEAN);
		vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GOKEI_MODEM_KAITORI_02, SET_BEAN, kaitoriMonthSumPrc);

		// 合計（モデムレンタル）
		int rentalMonthSumPrc = 0;

		boolean rentalPrcFlg = true;
		String rentalMonthPrc = vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_PRC_MODEM_RENT_02, GET_BEAN);
		if(JFUWebCommon.isNull(rentalMonthPrc))
		{
			rentalMonthPrc = JFUStrConst.S_ZERO;
			rentalPrcFlg = false;
		}
		String rentalPrc = vdslPrcInfoBean.sendMessageString(FUW10412SFConst.VDSL_MODEM_RENT_PRC_02, GET_BEAN);
		if(JFUWebCommon.isNull(rentalPrc))
		{
			rentalPrc = JFUStrConst.S_ZERO;
			rentalPrcFlg = false;
		}

		if(rentalPrcFlg)
		{
			// 金額が正しく設定されている場合、金額を設定
			rentalMonthSumPrc = Integer.parseInt(delDspYen(rentalMonthPrc)) + Integer.parseInt(delDspYen(rentalPrc));
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GOKEI_MODEM_RENT_02, SET_BEAN, editPrc(String.valueOf(rentalMonthSumPrc)));
		}
		else
		{
			// 金額が正しく設定されていない場合、空文字を設定
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.GOKEI_MODEM_RENT_02, SET_BEAN, JFUStrConst.EMPTY);
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			if(!(childMap.containsKey(ITEM_VDSL_01) && childMap.containsKey(ITEM_VDSL_02) && childMap.containsKey(ITEM_VDSL_03)))
			{
				continue;
			}

			String shoki01 = JFUStrConst.S_ZERO;
			String shoki02 = JFUStrConst.S_ZERO;
			String shoki03 = JFUStrConst.S_ZERO;
			String shokiCamp = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_01)))
			{
				shoki01 = (String)childMap.get(ITEM_VDSL_01);
			}
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_02)))
			{
				shoki02 = (String)childMap.get(ITEM_VDSL_02);
			}
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_VDSL_03)))
			{
				shoki03 = (String)childMap.get(ITEM_VDSL_03);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// キャンペーン適用時初期費用合計金額 
				shokiCamp = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				// キャンペーン適用時初期費用合計金額（VDSL買取）
				kaitoriShokiCamp = String.valueOf(Integer.parseInt(kaitoriShokiCamp)+Integer.parseInt(shokiCamp));
				// キャンペーンフラグ
				bean.sendMessageBoolean(FUW10412SFConst.CMP_FLG, SET_BEAN, true);

				// キャンペーン適用料金（モデムレンタル）
				vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_MODEM_RENT_03, SET_BEAN, editPrc(shokiCamp));
				// キャンペーン適用料金（モデム持込み）
				vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_MODEM_MTKM_03, SET_BEAN, editPrc(shokiCamp));
				// キャンペーン適用料金（モデム買取）（ＶＤＳＬモデム買取料＋契約事務手数料）
				if (JFUStrConst.TK_HOSHIKI_PTN_VDSL.equals(bean.sendMessageString(FUW10412SFConst.KEY_HKKS_TK_HOSHIKI_PTN_CD, GET_BEAN)))
				{
					vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_MODEM_KAITORI_03, SET_BEAN, editPrc(kaitoriShokiCamp));
				}
			}

			// 円表記に変換
			shoki01 = editPrc(shoki01);
			shoki02 = editPrc(shoki02);
			shoki03 = editPrc(shoki03);

			// 初期費用（モデム買取）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_MODEM_KAITORI_02, SET_BEAN, shoki01);
			// 初期費用（モデムレンタル）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_MODEM_RENT_02, SET_BEAN, shoki02);
			// 初期費用（モデム持込み）
			vdslPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_MODEM_MTKM_02, SET_BEAN, shoki03);

			// 初期費用割引キャンペーン通常料金（モデム買取）
			vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_MODEM_KAITORI_03, SET_BEAN, shoki01);
			// 初期費用割引キャンペーン通常料金（モデムレンタル）
			vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_MODEM_RENT_03, SET_BEAN, shoki02);
			// 初期費用割引キャンペーン通常料金（モデム持込み）
			vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_MODEM_MTKM_03, SET_BEAN, shoki03);

			if(ITEM_TK_PRC_SBT_CD_001.equals(bean.sendMessageString(FUW10412SFConst.TK_PRC_SBT_CD, GET_BEAN))
					|| ITEM_TK_PRC_SBT_CD_002.equals(bean.sendMessageString(FUW10412SFConst.TK_PRC_SBT_CD, GET_BEAN)))
			{
				// 旧VDSL-S または VDSL-S
				// キャンペーン適用料金（モデム買取）（ＶＤＳＬモデム買取料のみ）
				vdslShkhCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_MODEM_KAITORI_03, SET_BEAN, shoki01);
			}

			break;
		}
	}

	/**
	 * イーサの下りマッピング処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setEtherPrcInfoChg(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// イーサ料金情報
		X31SDataBeanAccessArray enetPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.ENET_PRC_INFO);
		enetPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess enetPrcInfoBean = enetPrcInfoBeanArray.addDataBean();

		// イーサ月額費用割引キャンペーン情報
		X31SDataBeanAccessArray enetCampPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.ENET_GTGK_CMP_INFO);
		enetCampPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess enetCampPrcInfoBean = enetCampPrcInfoBeanArray.addDataBean();

		// イーサ初期費用割引キャンペーン情報
		X31SDataBeanAccessArray enetShkCmpInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.ENET_SHKH_CMP_INFO);
		enetShkCmpInfoBeanArray.clearArray();
		X31SDataBeanAccess enetShkCmpInfoBean = enetShkCmpInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				enetCampPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_MONTH_07, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			enetPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_05, SET_BEAN, kanyuKeiSeikyAmnt);

			// 月額費用割引キャンペーン情報 月額基本料金
			enetCampPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 0, kanyuKeiSeikyAmnt);
			enetCampPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 1, campMonthAmnt);
			enetCampPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_07, SET_BEAN, 2, kanyuKeiSeikyAmnt);
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean.sendMessageBoolean(FUW10412SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				enetShkCmpInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			enetPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_05, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			enetShkCmpInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}
	}

	/**
	 * ギガイーサの下りマッピング処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setGigaEtherPrcInfoChg(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// ギガイーサ料金情報
		X31SDataBeanAccessArray eGigaMonthPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_PRC_INFO);
		eGigaMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaMonthPrcInfoBean = eGigaMonthPrcInfoBeanArray.addDataBean();

		// ギガイーサ月額費用割引キャンペーン情報
		X31SDataBeanAccessArray eGigaCampMonthPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_GTGK_INFO);
		eGigaCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaCampMonthPrcInfoBean = eGigaCampMonthPrcInfoBeanArray.addDataBean();

		// ギガイーサ初期費用割引キャンペーン情報
		X31SDataBeanAccessArray eGigaCampShkPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_SHKH_INFO);
		eGigaCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess eGigaCampShkPrcInfoBean = eGigaCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5401.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7001.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				eGigaMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5501.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				eGigaMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5401.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7001.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5501.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 1, campMonthAmnt);
				eGigaCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean.sendMessageBoolean(FUW10412SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				eGigaCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			eGigaMonthPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			eGigaCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}

		// ●コース変更手数料
		ArrayList crsChgPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_CRS_CHG_PRC_LIST))
		{
			crsChgPrcList = (ArrayList)parentMap.get(ITEM_CRS_CHG_PRC_LIST);
		}

		for (int i = 0; i < crsChgPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)crsChgPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_CRS_CHG_SUM_AMNT)))
			{
				continue;
			}

			// コース変更手数料合計金額
			String crsChgSumAmnt = JFUStrConst.S_ZERO;
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_CRS_CHG_SUM_AMNT)))
			{
				crsChgSumAmnt = (String)childMap.get(ITEM_CRS_CHG_SUM_AMNT);
			}

			// 円表記に変換
			crsChgSumAmnt = editPrc(crsChgSumAmnt);

			// コース変更料金
			eGigaMonthPrcInfoBean.sendMessageString(FUW10412SFConst.COURSECHG_PRC_08, SET_BEAN, crsChgSumAmnt);

			break;
		}
	}

	/**
	 * 光配線の下りマッピング処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setHikariPrcInfoChg(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// 光配線料金情報
		X31SDataBeanAccessArray hikariPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_PRC_INFO);
		hikariPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariPrcInfoBean = hikariPrcInfoBeanArray.addDataBean();

		// 光配線月額費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampMonthPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_GTGK_INFO);
		hikariCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampMonthPrcInfoBean = hikariCampMonthPrcInfoBeanArray.addDataBean();

		// 光配線初期費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampShkPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_SHKH_INFO);
		hikariCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampShkPrcInfoBean = hikariCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5701.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				hikariPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA7401.equals(kanyuKeiAitaiPplanCd))
			{
				// 10G
				hikariPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_10G_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
			else if(JFUStrConst.CD00565_PA5701.equals(kanyuKeiAitaiPplanCd))
			{
				// 1G
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_1G_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean.sendMessageBoolean(FUW10412SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				hikariCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			hikariPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			hikariCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}

		// ●コース変更手数料
		ArrayList crsChgPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_CRS_CHG_PRC_LIST))
		{
			crsChgPrcList = (ArrayList)parentMap.get(ITEM_CRS_CHG_PRC_LIST);
		}

		for (int i = 0; i < crsChgPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)crsChgPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_CRS_CHG_SUM_AMNT)))
			{
				continue;
			}

			// コース変更手数料合計金額
			String crsChgSumAmnt = JFUStrConst.S_ZERO;
			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_CRS_CHG_SUM_AMNT)))
			{
				crsChgSumAmnt = (String)childMap.get(ITEM_CRS_CHG_SUM_AMNT);
			}

			// 円表記に変換
			crsChgSumAmnt = editPrc(crsChgSumAmnt);

			// コース変更料金
			hikariPrcInfoBean.sendMessageString(FUW10412SFConst.COURSECHG_PRC_08, SET_BEAN, crsChgSumAmnt);

			break;
		}
	}

	/**
	 * 旧光直収の下りマッピング処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param dataMap データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setKyuHikariPrcInfoChg(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		// 光配線料金情報
		X31SDataBeanAccessArray hikariPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_PRC_INFO);
		hikariPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariPrcInfoBean = hikariPrcInfoBeanArray.addDataBean();

		// 光配線月額費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampMonthPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_GTGK_INFO);
		hikariCampMonthPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampMonthPrcInfoBean = hikariCampMonthPrcInfoBeanArray.addDataBean();

		// 光配線初期費用割引キャンペーン情報
		X31SDataBeanAccessArray hikariCampShkPrcInfoBeanArray = bean.getDataBeanArray(FUW10412SFConst.GIGA_HIKARI_SHKH_INFO);
		hikariCampShkPrcInfoBeanArray.clearArray();
		X31SDataBeanAccess hikariCampShkPrcInfoBean = hikariCampShkPrcInfoBeanArray.addDataBean();

		ArrayList monthPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_PRC_LIST))
		{
			monthPrcList = (ArrayList)parentMap.get(ITEM_MONTH_PRC_LIST);
		}

		// ●月額料金
		for (int i = 0; i < monthPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)monthPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			String kanyuKeiSeikyAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_KANYU_KEI_SEIKY_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT)))
			{
				kanyuKeiSeikyAmnt = (String)childMap.get(ITEM_KANYU_KEI_SEIKY_AMNT);
			}

			String campMonthAmnt = JFUStrConst.S_ZERO;
			if(childMap.containsKey(ITEM_CAMP_MONTH_AMNT) && !JFUWebCommon.isNull(childMap.get(ITEM_CAMP_MONTH_AMNT)))
			{
				campMonthAmnt = (String)childMap.get(ITEM_CAMP_MONTH_AMNT);
				// キャンペーン月数
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_MONTH_10, SET_BEAN, (String)childMap.get(ITEM_APLY_CNT));
			}

			// 円表記に変換
			kanyuKeiSeikyAmnt = editPrc(kanyuKeiSeikyAmnt);
			campMonthAmnt = editPrc(campMonthAmnt);

			// 月額基本料金
			String kanyuKeiAitaiPplanCd = (String)childMap.get(ITEM_KANYU_KEI_AITAI_PPLAN_CD);
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_08, SET_BEAN, kanyuKeiSeikyAmnt);
			}

			// 月額費用割引キャンペーン情報 月額基本料金
			if(JFUStrConst.CD00565_PA5601.equals(kanyuKeiAitaiPplanCd) || JFUStrConst.CD00565_PA7101.equals(kanyuKeiAitaiPplanCd))
			{
				// 100Mまたは100Mプレミアム
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 0, kanyuKeiSeikyAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 1, campMonthAmnt);
				hikariCampMonthPrcInfoBean.sendMessageString(FUW10412SFConst.GTGK_KIHON_PRC_100M_10, SET_BEAN, 2, kanyuKeiSeikyAmnt);
			}
		}

		// ●初期費用
		ArrayList shokiPrcList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_SHOKI_PRC_LIST))
		{
			shokiPrcList = (ArrayList)parentMap.get(ITEM_SHOKI_PRC_LIST);
		}

		for (int i = 0; i < shokiPrcList.size(); i++)
		{
			HashMap childMap = (HashMap)shokiPrcList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}
			if(!(childMap.containsKey(ITEM_SHOKI_SUM_AMNT)))
			{
				continue;
			}

			String shokiSumAmnt = JFUStrConst.S_ZERO;
			String shokiCampAmnt = JFUStrConst.S_ZERO;

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_SUM_AMNT)))
			{
				// 初期費用(通常)
				shokiSumAmnt = (String)childMap.get(ITEM_SHOKI_SUM_AMNT);
			}
			if(childMap.containsKey(ITEM_SHOKI_CAMP_SUM_AMNT) && !JFUWebCommon.isNull((String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT)))
			{
				// 初期費用(キャンペーン適用時)
				shokiCampAmnt = (String)childMap.get(ITEM_SHOKI_CAMP_SUM_AMNT);
				shokiCampAmnt = editPrc(shokiCampAmnt);
				// キャンペーンフラグ
				bean.sendMessageBoolean(FUW10412SFConst.CMP_FLG, SET_BEAN, true);
				// 初期費用割引キャンペーン情報 キャンペーン適用料金
				hikariCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.CMP_PRC_06, SET_BEAN, shokiCampAmnt);
			}

			// 円表記に変換
			shokiSumAmnt = editPrc(shokiSumAmnt);

			// 初期費用
			hikariPrcInfoBean.sendMessageString(FUW10412SFConst.SHKH_08, SET_BEAN, shokiSumAmnt);
			// 初期費用割引キャンペーン情報 通常料金
			hikariCampShkPrcInfoBean.sendMessageString(FUW10412SFConst.TUJO_PRC_06, SET_BEAN, shokiSumAmnt);

			break;
		}
	}
	
	
	/**
	 * 月額無料キャンペーン情報設定処理です。(サービスフォームBeanより取得)
	 * 
	 * <br>
	 * @param bean データBean
	 * @param outputMap	 データマップ
	 */
	@SuppressWarnings("unchecked")
	public void setMonthFreeCampInfoChg(X31SDataBeanAccess bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if (outputMap.containsKey(FUSV016901CC))
		{
			parentMap = (HashMap)outputMap.get(FUSV016901CC);
		}

		ArrayList monthFreeCampList = new ArrayList();
		if(parentMap != null && parentMap.size() > 0 && parentMap.containsKey(ITEM_MONTH_FREE_CAMP_LIST))
		{
			monthFreeCampList = (ArrayList)parentMap.get(ITEM_MONTH_FREE_CAMP_LIST);
		}

		String mansCampCd = JFUStrConst.EMPTY;
		for (int i = 0; i < monthFreeCampList.size(); i++)
		{
			HashMap childMap = (HashMap)monthFreeCampList.get(i);
			if(childMap == null || childMap.size() == 0)
			{
				continue;
			}

			if(!JFUWebCommon.isNull((String)childMap.get(ITEM_MANS_CAMP_CD)))
			{
				// マンションキャンペーンコード
				mansCampCd = (String)childMap.get(ITEM_MANS_CAMP_CD);
				break;
			}
		}

		if(!JFUWebCommon.isNull(mansCampCd))
		{
			// 月額無料キャンペーンコード
			bean.sendMessageString(FUW10412SFConst.GTGK_MRYO_CMP_CD, SET_BEAN, mansCampCd);
		}
	}
	// ANK-3248-00-00 ADD END

	/**
	 * 円表記編集処理です。
	 * 
	 * <br>
	 * @param prc 料金
	 * @return 編集結果
	 */
	private String editPrc(String prc)
	{
		return JFUWebCommon.formatNumber(prc) + JFUStrConst.HALF_SPACE + JFUStrConst.YEN;
	}

	/**
	 * 円から数字に変換する処理です。
	 * 
	 * <br>
	 * @param str 文字列
	 * @return 編集結果
	 */
	private String delDspYen(String str)
	{
		str = str.replace(JFUStrConst.COMMA, JFUStrConst.EMPTY);
		str = str.replace(JFUStrConst.HALF_SPACE + JFUStrConst.YEN, JFUStrConst.EMPTY);

		return str;
	}
}