/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：FUSV0257_FUSV0257OPDBMapper
*	ソースファイル名：FUSV0257_FUSV0257OPDBMapper.java
*	作成者			：FJ
*	日付			：2012年09月17日
*＜機能概要＞
*	BP(eoスマートリンク申込(申込))へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*   v4.00       2012/09/17  FJ) 文元    【ANK-0546-00-00】新規作成
*   v4.00       2012/10/29   FJ)文元    【IT1-2012-0001798】障害対応
*   v4.00       2012/11/02   FJ)文元    【IT1-2012-0001783,1784】巻A障害対応
*   v5.00       2013/03/18   FJ)文元    【IT1-2013-0000522】機種名の取得元を変更
*   v6.00       2013/10/10   FJ)文元    【ANK-1580-00-00】eoスマートリンク改修対応@(複数契約対応・機種追加)
*   v9.00       2014/05/07   FJ)文元    【ANK-2054-00-00】スマートリンク端末補償
*   v9.00       2014/05/09   FJ)文元    【ANK-2055-00-00】スマートリンク端末の複数台同時割賦
*   v10.00.00   2014/08/07   FJ)畑中    【ANK-1918-00-00】US管理S向けeo顧客SのIF改修
*   v32.00      2017/05/02   FJ)岡井    【ANK-3149-00-00】新セキュリティパック導入
*   v32.00      2017/05/24   FJ)岡井    【IT2-2017-0000008】新セキュリティパック導入(SP→PP引継対応)
*   v32.00.02   2017/06/08   FJ)杉本    【ANK-3152-00-00】フロント・サンキューレター・スマリン端末の送付先住所変更対応
*   v39.00      2018/10/04   FJ)岡      【ANK-3484-00-00】端末補償サービス導入対応
*   v51.00      2020/10/19   FJ)美濃原  【ANK-3918-00-00】「インターネットサギウォール」「おうちの機器補償」に対してプレクラ対応を行う
*
**********************************************************************/
package eo.web.webview.mapping;

import static com.fujitsu.futurity.web.x31.X31SWebLog.DEBUG_LOG;
import static eo.common.constant.JPCModelConstant.FUNC_CD_1;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.fujitsu.futurity.common.JCMConstants;
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.FUW10701SF.FUW10701SFConst;
import eo.web.webview.common.JFUScreenConst;
import eo.web.webview.common.JFUWebCommon;

/**
 * DataBean-BPマッピングを行います。
 * 
 * <br>
 * @author 富士通
 */
public class FUSV0257_FUSV0257OPDBMapper
{

	/** FUSV025701CC */
	private static final String FUSV025701CC = "FUSV025701CC";
	/** FUSV025702CC */
	private static final String FUSV025702CC = "FUSV025702CC";
	/** FUSV025703CC */
	private static final String FUSV025703CC = "FUSV025703CC";
	/** FUSV025704CC */
	private static final String FUSV025704CC = "FUSV025704CC";
	/** FUSV025705CC */
	private static final String FUSV025705CC = "FUSV025705CC";
	/** FUSV025706CC */
	private static final String FUSV025706CC = "FUSV025706CC";
	// ANK-3484-00-00 ADD START
	/** FUSV025701SC */
	private static final String FUSV025701SC = "FUSV025701SC";
	/** FUSV025707CC */
	private static final String FUSV025707CC = "FUSV025707CC";
	/** FUSV025708CC */
	private static final String FUSV025708CC = "FUSV025708CC";
	/** FUSV025709CC */
	private static final String FUSV025709CC = "FUSV025709CC";
	// ANK-3484-00-00 ADD END
	/** チケット利用申請依頼CC */
	private static final String CC_TITLE_FUSV025710CC = "FUSV025710CC";
	/** チケット利用申請依頼CC 共通チェック*/
	private static final String CHK_TITLE_FUSV025710 = "JFUTicketUseShinIraiCC";

	/** 表示パターン：表示なし */
	private static final String DSP_PTN_0 = "0";
	/** ファミリーパック選択：継続 */
	private static final String FP_CHOICE_0 = "0";
	/** ファミリーパック選択：解約 */
	private static final String FP_CHOICE_1 = "1";
	/** FP解約ルーター表示パターン：多機能ルーター(無線) */
	private static final String FP_CAN_2 = "2";
	/** FP継続ルーター表示パターン：多機能ルーター（有線 または VAのみ） */
	private static final String FP_CON_2 = "2";
	/** 多機能ルータ選択：無線機能を継続して利用する */
	private static final String TKN_RT_CHOICE_0 = "0";
	/** 多機能ルーターVA区分：VAのみ */
	private static final String TKN_RT_VA_KBN_1 = "1";

	/** 多機能ルーター処理パターン
	 *  <br>
	 *  0：処理しない、1：有線ルーター機能に変更、2：無線ルーター機能に変更、3：無線ルーター機能を新規登録
	 */
	private static final String[] TKN_RT_SHORI_PT = { "0", "1", "2", "3", "4" };

	/** 特記事項１要素を取得する際のidの値(セキュリティーオプション情報解約) */
	private static final String PRGADD_ID_DSL_SP = "5";
	/** 特記事項１要素を取得する際のidの値(リモートサポート情報登録) */
	private static final String PRGADD_ID_ADD_RSP = "6";
	/** 特記事項１要素を取得する際のidの値(マカフィーマルチアクセス情報登録) */
	private static final String PRGADD_ID_ADD_MCF = "7";
	/** 特記事項１要素を取得する際のidの値(リモートサポート情報解約) */
	private static final String PRGADD_ID_DSL_RSP = "8";
	/** 特記事項１要素を取得する際のidの値(マカフィーマルチアクセス情報解約) */
	private static final String PRGADD_ID_DSL_MCF = "9";

	/** 配列番号[0]:サービスフォームBean */
	private static final int INFO_IDX_SVC_INFO = 0;
	/** 配列番号[1]:ＳＳＯ情報 */
	private static final int INFO_IDX_SSO_INFO = 1;
	/** 配列番号[2]:サービス契約情報 */
	private static final int INFO_IDX_SVC_KEI = 2;
	/** 配列番号[3]:請求契約情報 */
	private static final int INFO_IDX_SEIKY_KEI = 3;
	/** 配列番号[4]:サービス契約回線内訳情報 */
	private static final int INFO_IDX_SVC_KEI_KAI_UCWK = 4;
	/** 配列番号[5]:現顧客契約情報 */
	private static final int INFO_IDX_GEN_KOKYAKU = 5;
	/** IN項目マップキー  */
	private static final String IN_PARAM_KEY = "in_param";
	/** IN項目:機能コード */
	private static final String FUNC_CODE = "func_code";
	/** IN項目:ＳＹＳＩＤ */
	private static final String IN_PARAM_SYSID = "sysid";
	/** IN項目:サービス契約情報.サービス契約番号 */
	private static final String IN_PARAM_KEY_SVC_KEI_NO = "key_svc_kei_no";
	/** IN項目:サービス契約情報.サービス契約ステータス */
	private static final String IN_PARAM_SVC_KEI_STAT = "svc_kei_stat";
	/** IN項目:サービス契約情報.サービスコード */
	private static final String IN_PARAM_SVC_CD = "svc_cd";
	/** IN項目:サービス契約情報.料金グループコード */
	private static final String IN_PARAM_PRC_GRP_CD = "prc_grp_cd";
	/** IN項目:サービス契約情報.最終更新年月日時分秒 */
	private static final String IN_PARAM_LAST_UPD_DTM = "last_upd_dtm";
	/** IN項目:サービス契約回線内訳情報.サービス契約回線内訳番号 */
	private static final String IN_PARAM_SVC_KEI_KAISEN_UCWK_NO = "svc_kei_kaisen_ucwk_no";
	/** IN項目:サービス契約回線内訳情報.マンション物件番号 */
	private static final String IN_PARAM_MANSION_BUKKEN_NO = "mansion_bukken_no";
	/** IN項目:現顧客契約情報.お客様名 */
	private static final String IN_PARAM_CUST_NM = "cust_nm";
	/** IN項目:現顧客契約情報.お客様カナ名 */
	private static final String IN_PARAM_CUST_KANA = "cust_kana";
	/** IN項目:現顧客契約情報.契約者住所コード */
	private static final String IN_PARAM_KEISHA_AD_CD = "keisha_ad_cd";
	/** IN項目:現顧客契約情報.契約者郵便番号 */
	private static final String IN_PARAM_KEISHA_PCD = "keisha_pcd";
	/** IN項目:現顧客契約情報.契約者都道府県名 */
	private static final String IN_PARAM_KEISHA_STATE_NM = "keisha_state_nm";
	/** IN項目:現顧客契約情報.契約者市区町村名 */
	private static final String IN_PARAM_KEISHA_CITY_NM = "keisha_city_nm";
	/** IN項目:現顧客契約情報.契約者大字通称名 */
	private static final String IN_PARAM_KEISHA_OAZTSU_NM = "keisha_oaztsu_nm";
	/** IN項目:現顧客契約情報.契約者字丁目名 */
	private static final String IN_PARAM_KEISHA_AZCHO_NM = "keisha_azcho_nm";
	/** IN項目:現顧客契約情報.契約者番地号 */
	private static final String IN_PARAM_KEISHA_BNCHIGO = "keisha_bnchigo";
	/** IN項目:現顧客契約情報.契約者住所補記・建物名 */
	private static final String IN_PARAM_KEISHA_ADRTTM = "keisha_adrttm";
	/** IN項目:現顧客契約情報.契約者住所補記・部屋番号 */
	private static final String IN_PARAM_KEISHA_ADRRM = "keisha_adrrm";
	/** IN項目:現顧客契約情報.契約者電話番号 */
	private static final String IN_PARAM_KEISHA_TELNO = "keisha_telno";
	/** IN項目:請求契約情報.請求契約番号 */
	private static final String IN_PARAM_SEIKY_KEI_NO = "seiky_kei_no";
	/** IN項目:選択宅内機器型式コード */
	private static final String IN_PARAM_TAKNKIKI_MODEL_CD = "taknkiki_model_cd";
// ANK-3152-00-00 ADD START
    /** IN項目:機器送付先名 */
	private static final String IN_PARAM_KIKI_SOHUS_NM = "kiki_sohus_nm";
	/** IN項目:機器送付先カナ名 */
	private static final String IN_PARAM_KIKI_SOHUS_KANA = "kiki_sohus_kana";
	/** IN項目:機器送付先住所コード */
	private static final String IN_PARAM_KIKI_SOHUS_AD_CD = "kiki_sohus_ad_cd";
	/** IN項目:機器送付先郵便番号 */
	private static final String IN_PARAM_KIKI_SOHUS_PCD = "kiki_sohus_pcd";
	/** IN項目:機器送付先都道府県名 */
	private static final String IN_PARAM_KIKI_SOHUS_STATE_NM = "kiki_sohus_state_nm";
	/** IN項目:機器送付先市区町村名 */
	private static final String IN_PARAM_KIKI_SOHUS_CITY_NM = "kiki_sohus_city_nm";
	/** IN項目:機器送付先大字通称名 */
	private static final String IN_PARAM_KIKI_SOHUS_OAZTSU_NM = "kiki_sohus_oaztsu_nm";
	/** IN項目:機器送付先字丁目名 */
	private static final String IN_PARAM_KIKI_SOHUS_AZCHO_NM = "kiki_sohus_azcho_nm";
	/** IN項目:機器送付先番地号 */
	private static final String IN_PARAM_KIKI_SOHUS_BNCHIGO = "kiki_sohus_bnchigo";
	/** IN項目:機器送付先住所補記・建物名 */
	private static final String IN_PARAM_KIKI_SOHUS_ADRTTM = "kiki_sohus_adrttm";
	/** IN項目:機器送付先住所補記・部屋番号 */
	private static final String IN_PARAM_KIKI_SOHUS_ADRRM = "kiki_sohus_adrrm";
	/** IN項目:機器送付先電話番号 */
	private static final String IN_PARAM_KIKI_SOHUS_TELNO = "kiki_sohus_telno";
// ANK-3152-00-00 ADD END
	/** IN項目:割賦プランコード */
	private static final String IN_PARAM_KAP_PLAN_CD = "kap_plan_cd";
	/** IN項目:割賦支払い残回数 */
	private static final String IN_PARAM_KAP_PAY_ZAN_CNT = "kap_pay_zan_cnt";
	/** IN項目:割賦販売形態コード名 */
	private static final String IN_PARAM_KAP_HAMBAI_FORM_CD_NM = "kap_hambai_form_cd_nm";
	/** IN項目:進捗特記事項1(オプション設定) */
	private static final String IN_PARAM_PRG_TKJK_1_OPTION = "prg_tkjk_1_option";
	/** IN項目:進捗特記事項1(機器契約変更タブレット) */
	private static final String IN_PARAM_PRG_TKJK_1_KIKI_TB = "prg_tkjk_1_kiki_tb";
	/** IN項目:進捗特記事項1(機器契約変更クレードル) */
	private static final String IN_PARAM_PRG_TKJK_1_KIKI_CL = "prg_tkjk_1_kiki_cl";
	/** IN項目:進捗特記事項1(機器送付先郵便番号・住所) */
	private static final String IN_PARAM_PRG_TKJK_1_KIKI_SOHUS = "prg_tkjk_1_kiki_sohus";
	/** IN項目:進捗特記事項2(機器送付先郵便番号・住所) */
	private static final String IN_PARAM_PRG_TKJK_2_KIKI_SOHUS = "prg_tkjk_2_kiki_sohus";
	/** IN項目:進捗特記事項1(安心補償オプション) */
	private static final String IN_PARAM_PRG_TKJK_1_ANSIN_COMPS = "prg_tkjk_1_ansin_comps";
	/** IN項目:機器付加情報コード */
	private static final String IN_PARAM_KIKI_HUKA_INFO_CD = "kiki_huka_info_cd";
	/** IN項目:eoスマートリンクタブレット購入する */
	private static final String IN_PARAM_KOUNYU = "kounyu";
	/** IN項目:eoスマートリンクプレミアムパック申し込む */
	private static final String IN_PARAM_PREMIUM_MSKM = "premium_mskm";
	/** IN項目:タブレット登録数  */
	private static final String IN_PARAM_TABLET_TOROKU_CNT = "tablet_toroku_cnt";
	/** IN項目:端末補償登録数  */
	private static final String IN_PARAM_COMPS_TOROKU_CNT = "comps_toroku_cnt";
	/** IN項目:端末補償の機器オプション料金プランコード  */
	private static final String IN_PARAM_KKOP_PPLAN_CD = "kkop_pplan_cd";
	
	/** 画面選択情報保持マップ 選択割賦プランコード */
	private static final String CHOICE_KAPPLANCD = "choiceKapPlanCd";
	/** 画面選択情報保持マップ 選択支払い回数 */
	private static final String CHOICE_PAYCNT = "choicePayCnt";
	/** 画面選択情報保持マップ 選択宅内機器型式コード */
	private static final String CHOISE_TAKNKIKIMODELCD = "choiseTaknkikiModelCd";
	/** 画面選択情報保持マップ 選択お支払い方法名 */
	private static final String CHOICE_PAYPLANNM = "choicePayPlanNm";
	/** 画面選択情報保持マップ 進捗特記事項1(オプション設定)  */
	private static final String PRG_TKJK_1_OPTION = "prgTkjk1Option";
	/** 画面選択情報保持マップ 進捗特記事項1(機器契約変更タブレット)  */
	private static final String PRG_TKJK_1_KIKI_TB = "prgTkjk1kikiTb";
	/** 画面選択情報保持マップ 進捗特記事項1(機器契約変更クレードル)  */
	private static final String PRG_TKJK_1_KIKI_CL = "prgTkjk1KikiCl";
	/** 画面選択情報保持マップ 進捗特記事項1(機器送付先郵便番号・住所)  */
	private static final String PRG_TKJK_1_KIKI_SOHUS = "prgTkjk1KikiSohus";
	/** 画面選択情報保持マップ 進捗特記事項2(機器送付先郵便番号・住所)  */
	private static final String PRG_TKJK_2_KIKI_SOHUS = "prgTkjk2KikiSohus";
	/** 画面選択情報保持マップ 進捗特記事項1(安心補償オプション)  */
	private static final String PRG_TKJK_1_ANSIN_COMPS = "prgTkjk1AnsinComps";
	/** 画面選択情報保持マップ 機器付加情報コード  */
	private static final String KIKI_HUKA_INFO_CD = "kikiHukaInfoCd";
	/** 画面選択情報保持マップ eoスマートリンクタブレット購入する  */
	private static final String CHOICE_KOUNYU = "kounyu";
	/** 画面選択情報保持マップ eoスマートリンクプレミアムパック申し込む  */
	private static final String CHOICE_PREMIUM_MSKM = "premiumMskm";
	/** 画面選択情報保持マップ タブレット登録数  */
	private static final String CHOICE_TABLET_TOROKU_CNT = "tabletTorokuCnt";
	/** 画面選択情報保持マップ 端末補償登録数  */
	private static final String CHOICE_COMPS_TOROKU_CNT = "compsTorokuCnt";
	/** 画面選択情報保持マップ 端末補償の機器オプション料金プランコード  */
	private static final String CHOICE_KKOP_PPLAN_CD = "kkopPplanCd";

	/** 申し込む端末ごとの情報を設定するマップのキー  */
	private static final String IN_MSKM_TNMT_MAP = "mskmTnmtMap";

	/** マップキー データ移送 データ移送キー */
	private static final String KEY_CNT = "key_cnt";
	/** マップキー データ移送 データ移送数：FUSV025704CC */
	private static final String TRANCE_CNT_FUSV025704CC = "4";
	/** マップキー データ移送 データ移送数：FUSV025705CC */
	private static final String TRANCE_CNT_FUSV025705CC = "3";
	// ANK-3484-00-00 ADD START
	/** マップキー データ移送 データ移送数：FUSV025708CC */
	private static final String TRANCE_CNT_FUSV025708CC = "2";
	// ANK-3484-00-00 ADD END
	/** マップキー データ移送 データ移送先名 */
	private static final String TRANCE_NM = "tranNm";

	// ※クエリキー → "key_"(固定) + 連番
	/** マップキー データ移送 移送データキー１ */
	private static final String TRANCE_DT_1 = "key_1";
	/** マップキー データ移送 移送データキー２ */
	private static final String TRANCE_DT_2 = "key_2";
	/** マップキー データ移送 移送データキー３ */
	private static final String TRANCE_DT_3 = "key_3";
	/** マップキー データ移送 移送データキー４ */
	private static final String TRANCE_DT_4 = "key_4";

	// ※クエリ文字列 → 取得元名:取得元リスト名:取得元項目名,移送先リスト名:移送先マップ名:移送先項目名
	/** マップキー データ移送 移送データ１(FUSV025704CC) */
	private static final String TRANCE_DT_VAL_FUSV025704CC_1 = "FUSV025701CC::mskm_dtl_no,add_info_list::mskm_dtl_no";
	/** マップキー データ移送 移送データ２(FUSV025704CC) */
	private static final String TRANCE_DT_VAL_FUSV025704CC_2 = "FUSV025701CC::upd_dtm_bf,add_info_list::upd_dtm_bf";
	/** マップキー データ移送 移送データ１(FUSV025704CC) */
	private static final String TRANCE_DT_VAL_FUSV025704CC_3 = "FUSV025701CC::mskm_dtl_no,cancel_info_list::mskm_dtl_no";
	/** マップキー データ移送 移送データ２(FUSV025704CC) */
	private static final String TRANCE_DT_VAL_FUSV025704CC_4 = "FUSV025701CC::upd_dtm_bf,cancel_info_list::upd_dtm_bf";

	/** マップキー データ移送 移送データ１(FUSV025705CC) */
	private static final String TRANCE_DT_VAL_FUSV025705CC_1 = "FUSV025701CC::mskm_dtl_no,::mskm_dtl_no";
	/** マップキー データ移送 移送データ２(FUSV025705CC) */
	private static final String TRANCE_DT_VAL_FUSV025705CC_2 = "FUSV025701CC::operator_id_key,::upd_user_id";
	/** マップキー データ移送 移送データ３(FUSV025705CC) */
	private static final String TRANCE_DT_VAL_FUSV025705CC_3 = "FUSV025701CC::operator_id_key,::upd_user";
	
	// ANK-3484-00-00 ADD START
	/** マップキー データ移送 移送データ１(FUSV025708CC) */
	private static final String TRANCE_DT_VAL_FUSV025708CC_1 = "FUSV025701CC::mskm_dtl_no,add_info_list::mskm_dtl_no";
	/** マップキー データ移送 移送データ２(FUSV025708CC) */
	private static final String TRANCE_DT_VAL_FUSV025708CC_2 = "FUSV025701SC:EKK0081A010CBSMsg1List:last_upd_dtm,add_info_list::upd_dtm_bf";
	// ANK-3484-00-00 ADD END

	// セキュリティパック操作CC
	// セキュリティパック申込他オプション更新CC
	/** IN項目:機能コード  */
	private static final String IN_FUNC_CD = "func_code";
	/** IN項目:引継有無  */
	private static final String IN_HIKITUGI_UM = "hikitugi_um";
	/** IN項目:異動区分  */
	private static final String IN_IDO_DIV = "ido_div";
	/** IN項目:登録用情報リスト  */
	private static final String IN_ADD_INFO_LIST = "add_info_list";
	/** IN項目:SYSID  */
	private static final String IN_SYSID = "sysid";
	/** IN項目:サービス契約番号  */
	private static final String IN_SVC_KEI_NO = "svc_kei_no";
	/** IN項目:プレミアムパック対象フラグ  */
	private static final String IN_PREMIUM_PACK_TG_FLG = "premium_pack_tg_flg";
	/** IN項目:解約用情報リスト  */
	private static final String IN_CANCEL_INFO_LIST = "cancel_info_list";
	/** IN項目:セキュリティーパック対象フラグ  */
	private static final String IN_SEC_PACK_TG_FLG = "security_pack_tg_flg";
	/** IN項目:セキュリティーパック課金非課金コード  */
	private static final String IN_SEC_PACK_CHRG_HICHRG_CD = "security_pack_chrg_hichrg_cd";
	/** IN項目:異動理由明細  */
	private static final String IN_EKK1091D010CBSMSG1LIST = "EKK1091D010CBSMsg1List";
	/** IN項目:異動理由コード  */
	private static final String IN_IDO_RSN_CD = "ido_rsn_cd";
	/** IN項目:ファミリーパック解約有無  */
	private static final String IN_FP_DSL_UM = "fp_dsl_um";
	/** IN項目:ウイルスバスター解約有無  */
	private static final String IN_VB_DSL_UM = "vb_dsl_um";
	/** IN項目:多機能ルーター処理パターン  */
	private static final String IN_TAKINORTTRNPTN = "takinortTrnPtn";
	/** IN項目:セキュリティパック操作CC文字列  */
	private static final String IN_SP_OP_CC_TXT = "sp_op_cc_txt";
	/** IN項目:進捗特記事項１（リモートサポートプラス登録用）  */
	private static final String IN_ADD_PRG_TKJK_1_RSP = "add_prg_tkjk_1_rsp";
	/** IN項目:進捗特記事項１（マカフィーマルチアクセス登録用）  */
	private static final String IN_ADD_PRG_TKJK_1_MCF = "add_prg_tkjk_1_mcf";
	/** IN項目:進捗特記事項１（セキュリティパック解約用）  */
	private static final String IN_DSL_PRG_TKJK_1_SP = "dsl_prg_tkjk_1_sp";
	/** IN項目:進捗特記事項１（リモートサポートプラス解約用）  */
	private static final String IN_DSL_PRG_TKJK_1_RSP = "dsl_prg_tkjk_1_rsp";
	/** IN項目:進捗特記事項１（マカフィーマルチアクセス解約用）  */
	private static final String IN_DSL_PRG_TKJK_1_MCF = "dsl_prg_tkjk_1_mcf";
	
	// ANK-3484-00-00 ADD START
	// 端末保障操作CC
	/** IN項目:機能コード  */
	private static final String FUNC_CD = "func_cd";
	/** IN項目:申込年月日  */
	private static final String IN_MSKM_YMD = "mskm_ymd";
	/** IN項目:処理区分  */
	private static final String IN_SHORI_DIV = "shori_div";
	/** IN項目:申込明細番号  */
	private static final String IN_MSKM_DTL_NO = "mskm_dtl_no";
	/** IN項目:更新年月日時分秒（サービス契約）  */
	private static final String IN_UPD_DTM_BF = "upd_dtm_bf";
	/** IN項目:ＰＣプラン対象フラグ  */
	private static final String IN_PC_PLAN_TG_FLG = "pc_plan_tg_flg";
	/** IN項目:ＰＣプラン申込日  */
	private static final String IN_PC_PLAN_MKSM_YMD = "pc_plan_mksm_ymd";
	/** IN項目:ＰＣワイドプラン対象フラグ  */
	private static final String IN_PC_WIDE_PLAN_TG_FLG = "pc_wide_plan_tg_flg";
	/** IN項目:ＰＣワイドプラン申込日  */
	private static final String IN_PC_WIDE_PLAN_MKSM_YMD = "pc_wide_plan_mksm_ymd";
	/** IN項目:ＴＶプラン対象フラグ  */
	private static final String IN_TV_PLAN_TG_FLG = "tv_plan_tg_flg";
	/** IN項目:ＴＶプラン申込日  */
	private static final String IN_TV_PLAN_MKSM_YMD = "tv_plan_mksm_ymd";
	/** IN項目:端末補償操作CC文字列  */
	private static final String IN_TEMP_OP_CC_TXT = "sp_temp_cc_txt";
	/** 処理区分：登録モード */
	private static final String ADD_MODE = "2";
	/** プラン対象フラグ：登録有 */
	private static final String ADD_ARI = "1";
	/** プラン対象フラグ：登録無 */
	private static final String ADD_NASI = "0";
	/** 特記事項１要素を取得する際のidの値(PCプラン情報登録) */
	private static final String PRGADD_ID_ADD_PC_PLAN = "10";
	/** 特記事項１要素を取得する際のidの値(PCワイドプラン情報登録) */
	private static final String PRGADD_ID_ADD_PC_WID_PLAN = "11";
	/** 特記事項１要素を取得する際のidの値(TVプラン情報登録) */
	private static final String PRGADD_ID_ADD_TV_PLAN = "12";
	/** IN項目:進捗特記事項１（PCプラン情報登録用）  */
	private static final String IN_ADD_PRG_TKJK_1_PC_PLAN = "add_prg_tkjk_1_pc_plan";
	/** IN項目:進捗特記事項１（PCワイドプラン情報登録用）  */
	private static final String IN_ADD_PRG_TKJK_1_PC_WID_PLAN = "add_prg_tkjk_1_pc_wid_plan";
	/** IN項目:進捗特記事項１（TVプラン情報登録用）  */
	private static final String IN_DSL_PRG_TKJK_1_TV_PLAN = "dsl_prg_tkjk_1_tv_plan";
	/** ＰＣプラン申込状態識別コード:ＰＣプラン契約  */
	private static final String PC_PLAN_CONTRACT = "5";
	// ANK-3484-00-00 ADD END

	/** SYSID */
	private static final String SYSID = "sysid";
	/** サービス契約番号 */
	private static final String SVC_KEI_NO = "svc_kei_no";

	// チケット利用申請依頼CC
	/** 施策コード  */
	private static final String SISAK_CD = "sisak_cd";
	/** キャンペーン登録契機コード  */
	private static final String CMP_ADD_OPTNTY_CD = "cmp_add_optnty_cd";
	/** チケット利用申請依頼リスト  */
	private static final String TICKET_USE_SHIN_IRAI_LIST = "ticket_use_shin_irai_list";

	/**
	 * コンストラクタ
	 */
	public FUSV0257_FUSV0257OPDBMapper()
	{
	}

	/**
	 * eoスマートリンク登録コモンコンポーネントCCの上りマッピングをします。
	 * @param bean
	 * @param outputMap マップ
	 * @param funcCode 機能コード
	 * @param choiseMap 画面で選択されたタブレットに紐づく情報を保持するマップ
	 * @param choiseList 画面で選択されたタブレットに紐づく情報を保持するリスト
	 * @return HashMap 結果マップ
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025701CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode, HashMap<String, Object> choiseMap,
			ArrayList<Object> choiseList)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		HashMap<String, Object> childMap = new HashMap<String, Object>();
		
		// 申し込み情報
		// 共通情報のマッピング
		childMap.put(FUNC_CODE, funcCode);
		// IN項目:ＳＹＳＩＤ
		childMap.put(IN_PARAM_SYSID, bean[INFO_IDX_SSO_INFO].sendMessageString(CommonInfoCFConst.SYSID_21, 
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約情報.サービス契約番号
		childMap.put(IN_PARAM_KEY_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約情報.サービス契約ステータス
		childMap.put(IN_PARAM_SVC_KEI_STAT, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_STAT_23,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約情報.サービスコード
		childMap.put(IN_PARAM_SVC_CD, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_CD_23, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約情報.料金グループコード
		childMap.put(IN_PARAM_PRC_GRP_CD, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.PRC_GRP_CD_23,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約情報.最終更新年月日時分秒
		// 初期表示最終更新年月日時分秒
		String lastUpdDtm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.INIT_DISP_LAST_UPD_DTM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_LAST_UPD_DTM, lastUpdDtm);
		// IN項目:サービス契約回線内訳情報.サービス契約回線内訳番号
		childMap.put(IN_PARAM_SVC_KEI_KAISEN_UCWK_NO, bean[INFO_IDX_SVC_KEI_KAI_UCWK].sendMessageString(CommonInfoCFConst.SVC_KEI_KAISEN_UCWK_NO_26,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約回線内訳情報.マンション物件番号
		childMap.put(IN_PARAM_MANSION_BUKKEN_NO, bean[INFO_IDX_SVC_KEI_KAI_UCWK].sendMessageString(CommonInfoCFConst.MANSION_BUKKEN_NO_26,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.お客様名
		childMap.put(IN_PARAM_CUST_NM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.CUST_NM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.お客様カナ名
		childMap.put(IN_PARAM_CUST_KANA, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.CUST_KANA_22, 
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者住所コード
		childMap.put(IN_PARAM_KEISHA_AD_CD, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_AD_CD_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者郵便番号
		childMap.put(IN_PARAM_KEISHA_PCD, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_PCD_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者都道府県名
		childMap.put(IN_PARAM_KEISHA_STATE_NM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_STATE_NM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者市区町村名
		childMap.put(IN_PARAM_KEISHA_CITY_NM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_CITY_NM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者大字通称名
		childMap.put(IN_PARAM_KEISHA_OAZTSU_NM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_OAZTSU_NM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者字丁目名
		childMap.put(IN_PARAM_KEISHA_AZCHO_NM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_AZCHO_NM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者番地号
		childMap.put(IN_PARAM_KEISHA_BNCHIGO, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_BNCHIGO_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者住所補記・建物名
		childMap.put(IN_PARAM_KEISHA_ADRTTM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_ADRTTM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者住所補記・部屋番号
		childMap.put(IN_PARAM_KEISHA_ADRRM, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_ADRRM_22,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:現顧客契約情報.契約者電話番号
		childMap.put(IN_PARAM_KEISHA_TELNO, bean[INFO_IDX_GEN_KOKYAKU].sendMessageString(CommonInfoCFConst.KEISHA_TELNO_22, 
				X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:請求契約情報.請求契約番号
		childMap.put(IN_PARAM_SEIKY_KEI_NO, bean[INFO_IDX_SEIKY_KEI].sendMessageString(CommonInfoCFConst.SEIKY_KEI_NO_32,
				X31CWebConst.DATABEAN_GET_VALUE));
// ANK-3152-00-00 ADD START
		// IN項目:サービス契約情報.機器送付先名
		String kikiSohusNm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_NM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_NM, kikiSohusNm);
		// IN項目:サービス契約情報.機器送付先カナ名
		String kikiSohusKana = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_KANA, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_KANA, kikiSohusKana);
		// IN項目:サービス契約情報.機器送付先住所コード
		String kikiSohusAdCd = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_AD_CD, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_AD_CD, kikiSohusAdCd);
		// IN項目:サービス契約情報.機器送付先郵便番号
		String kikiSohusPcd = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_PCD, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_PCD, kikiSohusPcd);
		// IN項目:サービス契約情報.機器送付先都道府県名
		String kikiSohusStateNm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_STATE_NM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_STATE_NM, kikiSohusStateNm);
		// IN項目:サービス契約情報.機器送付先市区町村名
		String kikiSohusCityNm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_CITY_NM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_CITY_NM, kikiSohusCityNm);
		// IN項目:サービス契約情報.機器送付先大字通称名
		String kikiSohusOaztsuNm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_OAZTSU_NM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_OAZTSU_NM, kikiSohusOaztsuNm);
		// IN項目:サービス契約情報.機器送付先字丁目名
		String kikiSohusAzchoNm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_AZCHO_NM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_AZCHO_NM, kikiSohusAzchoNm);
		// IN項目:サービス契約情報.機器送付先番地号
		String kikiSohusBnchigo = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_BNCHIGO, kikiSohusBnchigo);
		// IN項目:サービス契約情報.機器送付先住所補記・建物名
		String kikiSohusAdrttm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_ADRTTM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_ADRTTM, kikiSohusAdrttm);
		// IN項目:サービス契約情報.機器送付先住所補記・部屋番号
		String kikiSohusAdrrm = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_ADRRM, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_ADRRM, kikiSohusAdrrm);
		// IN項目:サービス契約情報.機器送付先電話番号
		String kikiSohusTelNo = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.KIKI_SOHUS_TELNO, X31CWebConst.DATABEAN_GET_VALUE);
		childMap.put(IN_PARAM_KIKI_SOHUS_TELNO, kikiSohusTelNo);
// ANK-3152-00-00 ADD END
		// IN項目:進捗特記事項1(オプション設定) 
		String prgTkjk1Option = (String)choiseMap.get(PRG_TKJK_1_OPTION);
		childMap.put(IN_PARAM_PRG_TKJK_1_OPTION, prgTkjk1Option);
		// IN項目:eoスマートリンクタブレット購入する
		childMap.put(IN_PARAM_KOUNYU, (String)choiseMap.get(CHOICE_KOUNYU));
		// IN項目:eoスマートリンクプレミアムパック申し込む
		childMap.put(IN_PARAM_PREMIUM_MSKM, (String)choiseMap.get(CHOICE_PREMIUM_MSKM));

		// マップに設定
		parentMap.put(IN_PARAM_KEY, childMap);
		
		// 申し込む端末ごとの情報
		// 割賦プランコード単位（割賦プランコードは、端末のお支払い方法単位に採番されている）
		ArrayList<Object> childList = new ArrayList<Object>();

		for (int i = 0; i < choiseList.size(); i++)
		{
			ArrayList<Object> setList = (ArrayList<Object>)choiseList.get(i);
		
			for (int j = 0; j < setList.size(); j++)
			{
				HashMap<String, Object> choiseitemMap = (HashMap<String, Object>)setList.get(j);

				HashMap<String, Object> childMapMulti = new HashMap<String, Object>();
			
				// IN項目:割賦プランコード
				String choiceKapPlanCd = (String)choiseitemMap.get(CHOICE_KAPPLANCD);
				childMapMulti.put(IN_PARAM_KAP_PLAN_CD, choiceKapPlanCd);
				// IN項目:割賦販売形態コード名
				String choicePayPlanNm = (String)choiseitemMap.get(CHOICE_PAYPLANNM);
				childMapMulti.put(IN_PARAM_KAP_HAMBAI_FORM_CD_NM, choicePayPlanNm);
				// IN項目:割賦支払い残回数
				String choicePayCnt = (String)choiseitemMap.get(CHOICE_PAYCNT);
				childMapMulti.put(IN_PARAM_KAP_PAY_ZAN_CNT, choicePayCnt);
				// IN項目:選択宅内機器型式コード
				String taknkikiModelCd = (String)choiseitemMap.get(CHOISE_TAKNKIKIMODELCD);
				childMapMulti.put(IN_PARAM_TAKNKIKI_MODEL_CD, taknkikiModelCd);
				// IN項目:機器付加情報コード 
				String kikiHukaInfoCd = (String)choiseitemMap.get(KIKI_HUKA_INFO_CD);
				childMapMulti.put(IN_PARAM_KIKI_HUKA_INFO_CD, kikiHukaInfoCd);
				// IN項目:タブレット登録数
				String tabletTorokuCnt = (String)choiseitemMap.get(CHOICE_TABLET_TOROKU_CNT);
				childMapMulti.put(IN_PARAM_TABLET_TOROKU_CNT, tabletTorokuCnt);
				// IN項目:端末補償登録数
				String compsTorokuCnt = (String)choiseitemMap.get(CHOICE_COMPS_TOROKU_CNT);
				childMapMulti.put(IN_PARAM_COMPS_TOROKU_CNT, compsTorokuCnt);
				// IN項目:端末補償の機器オプション料金プランコード
				String kkopPplanCd = (String)choiseitemMap.get(CHOICE_KKOP_PPLAN_CD);
				childMapMulti.put(IN_PARAM_KKOP_PPLAN_CD, kkopPplanCd);
				// IN項目:進捗特記事項1(機器契約変更タブレット) 
				String prgTkjk1kikiTb = (String)choiseitemMap.get(PRG_TKJK_1_KIKI_TB);
				childMapMulti.put(IN_PARAM_PRG_TKJK_1_KIKI_TB, prgTkjk1kikiTb);
				// IN項目:進捗特記事項1(機器契約変更クレードル) 
				String prgTkjk1KikiCl = (String)choiseitemMap.get(PRG_TKJK_1_KIKI_CL);
				childMapMulti.put(IN_PARAM_PRG_TKJK_1_KIKI_CL, prgTkjk1KikiCl);
				// IN項目:進捗特記事項1(機器送付先郵便番号・住所) 
				String prgTkjk1KikiSohus = (String)choiseitemMap.get(PRG_TKJK_1_KIKI_SOHUS);
				childMapMulti.put(IN_PARAM_PRG_TKJK_1_KIKI_SOHUS, prgTkjk1KikiSohus);
				// IN項目:進捗特記事項2(機器送付先郵便番号・住所) 
				String prgTkjk2KikiSohus = (String)choiseitemMap.get(PRG_TKJK_2_KIKI_SOHUS);
				childMapMulti.put(IN_PARAM_PRG_TKJK_2_KIKI_SOHUS, prgTkjk2KikiSohus);
				// IN項目:進捗特記事項1(安心補償オプション) 
				String prgTkjk1AnsnComps = (String)choiseitemMap.get(PRG_TKJK_1_ANSIN_COMPS);
				childMapMulti.put(IN_PARAM_PRG_TKJK_1_ANSIN_COMPS, prgTkjk1AnsnComps);
				
				childList.add(childMapMulti);
			}
		}
		
		// マップに設定
		parentMap.put(IN_MSKM_TNMT_MAP, childList);
		
		// 返却マップに設定
		outputMap.put(FUSV025701CC, parentMap);

		return outputMap;
	}

	/**
	 * データ移送(セキュリティパック操作CC)の設定をします。
	 * <br>
	 * @param outputMap
	 * @param bl
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025702CC(HashMap outputMap)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// データ移送数
		parentMap.put(KEY_CNT, TRANCE_CNT_FUSV025704CC);

		// データ移送先
		parentMap.put(TRANCE_NM, FUSV025704CC);

		// クエリ文字列の例
		// クエリキー：クエリ文字列
		parentMap.put(TRANCE_DT_1, TRANCE_DT_VAL_FUSV025704CC_1);
		parentMap.put(TRANCE_DT_2, TRANCE_DT_VAL_FUSV025704CC_2);
		parentMap.put(TRANCE_DT_3, TRANCE_DT_VAL_FUSV025704CC_3);
		parentMap.put(TRANCE_DT_4, TRANCE_DT_VAL_FUSV025704CC_4);

		// 共通情報のマッピング
		outputMap.put(FUSV025702CC, parentMap);

		return outputMap;
	}

	/**
	 * データ移送(セキュリティパック申込他オプション更新CC)の設定をします。
	 * <br>
	 * @param outputMap
	 * @param bl
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025703CC(HashMap outputMap)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// データ移送数
		parentMap.put(KEY_CNT, TRANCE_CNT_FUSV025705CC);

		// データ移送先
		parentMap.put(TRANCE_NM, FUSV025705CC);

		// クエリ文字列の例
		// クエリキー：クエリ文字列
		parentMap.put(TRANCE_DT_1, TRANCE_DT_VAL_FUSV025705CC_1);
		parentMap.put(TRANCE_DT_2, TRANCE_DT_VAL_FUSV025705CC_2);
		parentMap.put(TRANCE_DT_3, TRANCE_DT_VAL_FUSV025705CC_3);

		// 共通情報のマッピング
		outputMap.put(FUSV025703CC, parentMap);

		return outputMap;
	}

	/**
	 * セキュリティパック操作CCの上りマッピング処理です。
	 * <br>
	 * @param bean データ配列
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025704CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// IN項目:機能コード
		parentMap.put(IN_FUNC_CD, funcCode);

		// IN項目:引継有無
		if(JFUStrConst.CD00002_1.equals(bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.SP_KEI_UM, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			// セキュリティーパック契約中の場合
			parentMap.put(IN_HIKITUGI_UM, JFUStrConst.CD00002_1);
		}
		else
		{
			// セキュリティーパック未契約の場合
			parentMap.put(IN_HIKITUGI_UM, JFUStrConst.CD00002_0);
		}

		// IN項目:異動区分
		parentMap.put(IN_IDO_DIV, JFUStrConst.CD00576_00031);

		// 登録用情報リスト
		ArrayList addList = new ArrayList();
		HashMap addMap = new HashMap();

		// IN項目:SYSID
		addMap.put(IN_SYSID, bean[INFO_IDX_SSO_INFO].sendMessageString(CommonInfoCFConst.SYSID_21, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約番号
		addMap.put(IN_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));

		// IN項目:プレミアムパック対象フラグ
		if(bean[INFO_IDX_SVC_INFO].sendMessageBoolean(FUW10701SFConst.PREMIUM_MSKM, X31CWebConst.DATABEAN_GET_VALUE))
		{
			addMap.put(IN_PREMIUM_PACK_TG_FLG, JFUStrConst.CD00002_1);
		}
		else
		{
			addMap.put(IN_PREMIUM_PACK_TG_FLG, JFUStrConst.CD00002_0);
		}

		addList.add(addMap);
		parentMap.put(IN_ADD_INFO_LIST, addList);

		// 解約用情報リスト
		ArrayList canList = new ArrayList();
		HashMap canMap = new HashMap();

		// IN項目:SYSID
		canMap.put(IN_SYSID, bean[INFO_IDX_SSO_INFO].sendMessageString(CommonInfoCFConst.SYSID_21, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:サービス契約番号
		canMap.put(IN_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));

		if(JFUStrConst.CD00002_1.equals(bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.SP_KEI_UM, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			// セキュリティーパック対象フラグ
			canMap.put(IN_SEC_PACK_TG_FLG, JFUStrConst.CD00002_1);
			// セキュリティーパック課金非課金コード
			canMap.put(IN_SEC_PACK_CHRG_HICHRG_CD, JFUStrConst.CD00001_1);
		}

		canList.add(canMap);
		parentMap.put(IN_CANCEL_INFO_LIST, canList);

		// 共通情報のマッピング
		outputMap.put(FUSV025704CC, parentMap);

		return outputMap;
	}

	/**
	 * セキュリティパック申込他オプション更新CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025705CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// IN項目:機能コード
		parentMap.put(IN_FUNC_CD, funcCode);
		// IN項目:サービス契約番号
		parentMap.put(IN_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:異動区分
		parentMap.put(IN_IDO_DIV, JFUStrConst.CD00576_00031);

		// 異動理由明細
		ArrayList eKK1091D010CBSMsg1List = new ArrayList();
		HashMap eKK1091D010CBSMsg1Map = new HashMap();

		// 異動理由コード
		eKK1091D010CBSMsg1Map.put(IN_IDO_RSN_CD, JFUStrConst.CD00846_F3);

		eKK1091D010CBSMsg1List.add(eKK1091D010CBSMsg1Map);
		parentMap.put(IN_EKK1091D010CBSMSG1LIST, eKK1091D010CBSMsg1List);

		// IN項目:ファミリーパック解約有無
		parentMap.put(IN_FP_DSL_UM, bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.FP_CHOICE, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:ウイルスバスター解約有無
		parentMap.put(IN_VB_DSL_UM, bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.VB_CHOICE, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:多機能ルーター処理パターン
		parentMap.put(IN_TAKINORTTRNPTN, getTknRtShoriPt(bean));

		// 共通情報のマッピング
		outputMap.put(FUSV025705CC, parentMap);

		return outputMap;
	}

	/**
	 * セキュリティパック進捗登録CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025706CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 各特記事項1を取得
		String dslSp = JFUStrConst.EMPTY;
		String addRsp = JFUStrConst.EMPTY;
		String addMcf = JFUStrConst.EMPTY;
		String dslRsp = JFUStrConst.EMPTY;
		String dslMcf = JFUStrConst.EMPTY;

		try
		{
			dslSp = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_DSL_SP);
			addRsp = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_ADD_RSP);
			addMcf = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_ADD_MCF);
			dslRsp = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_DSL_RSP);
			dslMcf = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_DSL_MCF);
		}
		catch (Exception e)
		{
			// 定義から取得できない場合は空で登録
			DEBUG_LOG.info("★★★ FUSV0257_FUSV0257OPDBMapper setFUSV025706CC 特記事項1取得不可 ★★★");
		}

		// IN項目:機能コード
		parentMap.put(IN_FUNC_CD, funcCode);
		// IN項目:セキュリティパック操作CC文字列
		parentMap.put(IN_SP_OP_CC_TXT, FUSV025704CC);
		// IN項目:進捗特記事項１（リモートサポートプラス登録用）
		parentMap.put(IN_ADD_PRG_TKJK_1_RSP, addRsp);
		// IN項目:進捗特記事項１（マカフィーマルチアクセス登録用）
		parentMap.put(IN_ADD_PRG_TKJK_1_MCF, addMcf);
		// IN項目:進捗特記事項１（セキュリティパック解約用）
		parentMap.put(IN_DSL_PRG_TKJK_1_SP, dslSp);
		// IN項目:進捗特記事項１（リモートサポートプラス解約用）
		parentMap.put(IN_DSL_PRG_TKJK_1_RSP, dslRsp);
		// IN項目:進捗特記事項１（マカフィーマルチアクセス解約用）
		parentMap.put(IN_DSL_PRG_TKJK_1_MCF, dslMcf);

		// 異動理由明細
		ArrayList eKK1091D010CBSMsg1List = new ArrayList();
		HashMap eKK1091D010CBSMsg1Map = new HashMap();

		// 異動理由コード
		eKK1091D010CBSMsg1Map.put(IN_IDO_RSN_CD, JFUStrConst.CD00846_F3);

		eKK1091D010CBSMsg1List.add(eKK1091D010CBSMsg1Map);
		parentMap.put(IN_EKK1091D010CBSMSG1LIST, eKK1091D010CBSMsg1List);

		// 共通情報のマッピング
		outputMap.put(FUSV025706CC, parentMap);

		return outputMap;
	}

	/**
	 * 多機能ルーター処理パターン取得処理です。
	 * 
	 * <br>
	 * @param bean データBean配列
	 * @return 多機能ルーター処理パターン
	 */
	private String getTknRtShoriPt(X31SDataBeanAccess[] bean)
	{
		String pt = JFUStrConst.EMPTY;

		String fpDspPtn = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.FP_DSP_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		String fpChoice = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.FP_CHOICE, X31CWebConst.DATABEAN_GET_VALUE);
		String fpConDsp = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.FP_CON_DSP_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		String fpCanDsp = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.FP_CAN_DSP_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		String tknRtChoice = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.TKN_RT_CHOICE, X31CWebConst.DATABEAN_GET_VALUE);
		String tknRtVaKbn = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.TAKINORT_VA_KBN, X31CWebConst.DATABEAN_GET_VALUE);
		boolean tknRtMskm = bean[INFO_IDX_SVC_INFO].sendMessageBoolean(FUW10701SFConst.TKN_RT_MSKM, X31CWebConst.DATABEAN_GET_VALUE);

		if(FP_CHOICE_1.equals(fpChoice) && FP_CAN_2.equals(fpCanDsp))
		{
			// 「ファミリーパック選択＝"1"(解約する)」かつ「FP解約ルーター表示パターン＝"2"(多機能ルーター(無線))」
			if(TKN_RT_CHOICE_0.equals(tknRtChoice))
			{
				// 「多機能ルータ選択＝"0"(無線機能を継続して利用する)」
				pt = TKN_RT_SHORI_PT[0];
			}
			else
			{
				// 上記以外
				pt = TKN_RT_SHORI_PT[1];
			}
		}
		else if((DSP_PTN_0.equals(fpDspPtn) || FP_CHOICE_0.equals(fpChoice)) && FP_CON_2.equals(fpConDsp) && tknRtMskm)
		{
			// 「ファミリーパック表示パターン＝"0"表示なし」または「ファミリーパック選択＝"0"(併用利用する)」かつ
			// 「FP継続ルーター表示パターン＝"2"(多機能ルーター（有線 または VAのみ）)」かつ
			// 「申し込む(多機能ルータ)＝true」
			if(TKN_RT_VA_KBN_1.equals(tknRtVaKbn))
			{
				// 「多機能ルーターVA区分＝"1"(VAのみ)」
				pt = TKN_RT_SHORI_PT[3];
			}
			else
			{
				// 上記以外
				pt = TKN_RT_SHORI_PT[2];
			}
		}
		else
		{
			// 上記以外
			pt = TKN_RT_SHORI_PT[0];
		}

		DEBUG_LOG.info("★★★多機能ルーター処理パターン：[" + pt + "]★★★");

		return pt;
	}
	
	// ANK-3484-00-00 ADD START
	/**
	 * 上りマッピングをします。(サービス契約一意照会)
	 * 
	 * <br>
	 * @param bean  [0]：eoスマートリンク申込  [1]：共有フォームビーン
	 * @param outputMap
	 * @param func_code  機能コード
	 * @return HashMap
	 */
	public HashMap<String, Object> setFUSV025701SC(X31SDataBeanAccess[] bean, HashMap<String, Object> outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put(JCMConstants.FUNC_CODE_KEY, func_code);
		
		// ＫＥＹ＿サービス契約番号
		parentMap.put(IN_PARAM_KEY_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put(FUSV025701SC, parentMap);

		return outputMap;
	}
	
	/**
	 * データ移送(端末保障操作CC)の設定をします。
	 * <br>
	 * @param outputMap
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025707CC(HashMap outputMap)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// データ移送数
		parentMap.put(KEY_CNT, TRANCE_CNT_FUSV025708CC);

		// データ移送先
		parentMap.put(TRANCE_NM, FUSV025708CC);

		// クエリ文字列の例
		// クエリキー：クエリ文字列
		parentMap.put(TRANCE_DT_1, TRANCE_DT_VAL_FUSV025708CC_1);
		parentMap.put(TRANCE_DT_2, TRANCE_DT_VAL_FUSV025708CC_2);

		// 共通情報のマッピング
		outputMap.put(FUSV025707CC, parentMap);

		return outputMap;
	}
	
	/**
	 * 端末補償操作CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025708CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode, String opeDate)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// ●ＰＣプラン申し込み確認を取得
		Boolean mskmPcPlan = bean[INFO_IDX_SVC_INFO].sendMessageBoolean(FUW10701SFConst.MSKM_PC_PLAN, X31CWebConst.DATABEAN_GET_VALUE);
		// ●ＰＣワイドプラン申し込み確認を取得
		Boolean mskmPcWidPlan = bean[INFO_IDX_SVC_INFO].sendMessageBoolean(FUW10701SFConst.MSKM_PC_WID_PLAN, X31CWebConst.DATABEAN_GET_VALUE);
		// ●ＰＣプラン申込状態識別コードを取得
		String pcPlanStatSkcd = bean[INFO_IDX_SVC_INFO].sendMessageString(FUW10701SFConst.PC_PLAN_STAT_SKCD, X31CWebConst.DATABEAN_GET_VALUE);
		
		// IN項目:機能コード
		parentMap.put(FUNC_CD, funcCode);
		// IN項目:申込年月日
		parentMap.put(IN_MSKM_YMD, opeDate);
		// IN項目:処理区分
		parentMap.put(IN_SHORI_DIV, ADD_MODE);
		// IN項目:サービス契約番号
		parentMap.put(IN_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));
		// IN項目:異動区分
		parentMap.put(IN_IDO_DIV, JFUStrConst.CD00576_00031);
		
		// 登録用情報リスト
		List<Map<String, String>> addInfoList = new ArrayList<Map<String, String>>();

		Map<String, String> addInfo = new HashMap<String, String>();
		// IN項目:サービス契約番号
		addInfo.put(IN_SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));
		
		if(mskmPcWidPlan)
		{
			// ＰＣワイドプラン申し込みの場合、
			if(PC_PLAN_CONTRACT.equals(pcPlanStatSkcd))
			{
				// ＰＣプランが既に申し込みされている場合、
				// ＰＣプラン対象フラグ："0"登録無、ＰＣワイドプラン対象フラグ："1"登録有を設定する。
				// IN項目:ＰＣプラン対象フラグ
				addInfo.put(IN_PC_PLAN_TG_FLG, ADD_NASI);
				// IN項目:ＰＣプラン申込日
				addInfo.put(IN_PC_PLAN_MKSM_YMD, opeDate);
				// IN項目:ＰＣワイドプラン対象フラグ
				addInfo.put(IN_PC_WIDE_PLAN_TG_FLG, ADD_ARI);
				// IN項目:ＰＣワイドプラン申込日
				addInfo.put(IN_PC_WIDE_PLAN_MKSM_YMD, opeDate);
			}
			else
			{
				// ＰＣプラン・ＰＣワイドプランともにプラン対象フラグ："1"登録有を設定する。
				// IN項目:ＰＣプラン対象フラグ
				addInfo.put(IN_PC_PLAN_TG_FLG, ADD_ARI);
				// IN項目:ＰＣプラン申込日
				addInfo.put(IN_PC_PLAN_MKSM_YMD, opeDate);
				// IN項目:ＰＣワイドプラン対象フラグ
				addInfo.put(IN_PC_WIDE_PLAN_TG_FLG, ADD_ARI);
				// IN項目:ＰＣワイドプラン申込日
				addInfo.put(IN_PC_WIDE_PLAN_MKSM_YMD, opeDate);
			}
		}
		else if(mskmPcPlan)
		{
			// ＰＣプラン申し込みの場合、
			// ＰＣプラン対象フラグ："1"登録有、ＰＣワイドプラン対象フラグ："0"登録無を設定する。
			// IN項目:ＰＣプラン対象フラグ
			addInfo.put(IN_PC_PLAN_TG_FLG, ADD_ARI);
			// IN項目:ＰＣプラン申込日
			addInfo.put(IN_PC_PLAN_MKSM_YMD, opeDate);
			// IN項目:ＰＣワイドプラン対象フラグ
			addInfo.put(IN_PC_WIDE_PLAN_TG_FLG, ADD_NASI);
			// IN項目:ＰＣワイドプラン申込日
			addInfo.put(IN_PC_WIDE_PLAN_MKSM_YMD, opeDate);
		}
		else
		{
			// ＰＣプラン・ＰＣワイドプラン申し込み無しの場合、
			// ＰＣプラン・ＰＣワイドプランともにプラン対象フラグ："0"登録無を設定する。
			// IN項目:ＰＣプラン対象フラグ
			addInfo.put(IN_PC_PLAN_TG_FLG, ADD_NASI);
			// IN項目:ＰＣプラン申込日
			addInfo.put(IN_PC_PLAN_MKSM_YMD, opeDate);
			// IN項目:ＰＣワイドプラン対象フラグ
			addInfo.put(IN_PC_WIDE_PLAN_TG_FLG, ADD_NASI);
			// IN項目:ＰＣワイドプラン申込日
			addInfo.put(IN_PC_WIDE_PLAN_MKSM_YMD, opeDate);
		}
		// IN項目:ＴＶプラン対象フラグ
		addInfo.put(IN_TV_PLAN_TG_FLG, ADD_NASI);
		// IN項目:ＴＶプラン申込日
		addInfo.put(IN_TV_PLAN_MKSM_YMD, opeDate);

		addInfoList.add(addInfo);
		parentMap.put("add_info_list", addInfoList);

		// 共通情報のマッピング
		outputMap.put(FUSV025708CC, parentMap);

		return outputMap;
	}
	
	/**
	 * 端末補償進捗登録CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025709CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 各特記事項1を取得
		String addPcPlan = JFUStrConst.EMPTY;
		String addPcWidPlan = JFUStrConst.EMPTY;
		String addTvPlan = JFUStrConst.EMPTY;

		try
		{
			addPcPlan = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_ADD_PC_PLAN);
			addPcWidPlan = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_ADD_PC_WID_PLAN);
			addTvPlan = JFUWebCommon.getPrgAddTkjkFst(JFUScreenConst.SCREEN_ID_FUW10702, PRGADD_ID_ADD_TV_PLAN);
		}
		catch (Exception e)
		{
			// 定義から取得できない場合は空で登録
			DEBUG_LOG.info("★★★ FUSV0257_FUSV0257OPDBMapper setFUSV025709CC 特記事項1取得不可 ★★★");
		}

		// IN項目:機能コード
		parentMap.put(IN_FUNC_CD, funcCode);
		// IN項目:端末補償操作CC文字列
		parentMap.put(IN_TEMP_OP_CC_TXT, FUSV025708CC);
		// IN項目:進捗特記事項１（PCプラン情報登録用）
		parentMap.put(IN_ADD_PRG_TKJK_1_PC_PLAN, addPcPlan);
		// IN項目:進捗特記事項１（PCワイドプラン情報登録用）
		parentMap.put(IN_ADD_PRG_TKJK_1_PC_WID_PLAN, addPcWidPlan);
		// IN項目:進捗特記事項１（TVプラン情報登録用）
		parentMap.put(IN_DSL_PRG_TKJK_1_TV_PLAN, addTvPlan);

		// 異動理由明細
		ArrayList eKK1091D010CBSMsg1List = new ArrayList();
		HashMap eKK1091D010CBSMsg1Map = new HashMap();

		// 異動理由コード
		eKK1091D010CBSMsg1Map.put(IN_IDO_RSN_CD, JFUStrConst.CD00846_F3);

		eKK1091D010CBSMsg1List.add(eKK1091D010CBSMsg1Map);
		parentMap.put(IN_EKK1091D010CBSMSG1LIST, eKK1091D010CBSMsg1List);

		// 共通情報のマッピング
		outputMap.put(FUSV025709CC, parentMap);

		return outputMap;
	}
	// ANK-3484-00-00 ADD END

	/**
	 * チケット利用申請依頼CCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列 <br>
	 * [0]：サービスフォームBean、[1]：ＳＳＯ情報、[2]：サービス契約情報、[3]：請求契約情報、<br>
	 * [4]：サービス契約回線内訳情報、[5]：現顧客契約情報
	 * @param outputMap アウトマップ
	 * @param funcCode 機能コード
	 * @return マッピング結果
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV025710CC(X31SDataBeanAccess[] bean, HashMap outputMap, String funcCode)
	{
		// 登録でない場合は実行しない
		if (!FUNC_CD_1.equals(funcCode))
		{
			return null;
		}

		if (bean == null)
		{
			return null;
		}

		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		ArrayList list = new ArrayList();

		// SYSID →チケット利用申請依頼マップ.SYSID
		parentMap.put(SYSID, bean[INFO_IDX_SSO_INFO].sendMessageString(CommonInfoCFConst.SYSID_21, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号 →チケット利用申請依頼マップ.サービス契約番号
		parentMap.put(SVC_KEI_NO, bean[INFO_IDX_SVC_KEI].sendMessageString(CommonInfoCFConst.SVC_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE));

		X31SDataBeanAccessArray arraybean = bean[0].getDataBeanArray(FUW10701SFConst.TICKET_USE_SHIN_IRAI_LIST);

		int cnt = 0;
		if (arraybean != null && arraybean.getCount() > 0)
		{
			// チケット利用選択
			String ticUseSelect = bean[0].sendMessageString(FUW10701SFConst.TIC_USE_SELECT, X31CWebConst.DATABEAN_GET_VALUE);
			int sel = Integer.parseInt(ticUseSelect);

			// cnt=0はeoチケット申請無しなので削除
			arraybean.removeDataBean(cnt);
			sel--;
			while (cnt < arraybean.getCount())
			{
				X31SDataBeanAccess subbean = arraybean.getDataBean(cnt);

				// 選ばれていないチケットは削除
				if (subbean == null || cnt != sel)
				{
					// 選択してないデータをリストから削除する
					arraybean.removeDataBean(cnt);
					sel--;

					continue;
				}
				else
				{
					cnt++;
				}

				// チケット利用申請依頼マップ.チケット利用申請依頼リスト
				if (subbean != null)
				{
					// 施策コード
					String sisakCd = subbean.sendMessageString(FUW10701SFConst.SISAK_CD_17, X31CWebConst.DATABEAN_GET_VALUE);
					// キャンペーン登録契機コード
					String cmpAddOptntyCd = subbean.sendMessageString(FUW10701SFConst.CMP_ADD_OPTNTY_CD_17, X31CWebConst.DATABEAN_GET_VALUE);

					String[] sisakcdL = sisakCd.split(JFUStrConst.COMMA);
					String[] cmpAddOptntyCdL = cmpAddOptntyCd.split(JFUStrConst.COMMA);
					// ■複合チケットも含まれているので繰り返し実行
					for (int idx = 0; idx < sisakcdL.length; idx++)
					{
						HashMap childMap = new HashMap();
						// 各種通信機器申込み登録マップ.チケット利用申請依頼リスト.施策コード → チケット利用申請依頼リスト.施策コード
						childMap.put(SISAK_CD, sisakcdL[idx]);
						// 各種通信機器申込み登録マップ.チケット利用申請依頼リスト.キャンペーン登録契機コード → チケット利用申請依頼リスト.キャンペーン登録契機コード
						childMap.put(CMP_ADD_OPTNTY_CD, cmpAddOptntyCdL[idx]);
						list.add(childMap);
					}
				}
			}
		}
		parentMap.put(TICKET_USE_SHIN_IRAI_LIST, list);

		// 連携パラメータ
		outputMap.put(CC_TITLE_FUSV025710CC, parentMap);
		// 共通CCチェック用にマップを設定
		outputMap.put(CHK_TITLE_FUSV025710, parentMap);

		return outputMap;
	}

}