/*********************************************************************
 *	All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *	システム名		：顧客契約
 *	モジュール名	：KKW02301SFLogic
 *	ソースファイル名：KKW02301SFLogic.java
 *	作成者			：富士通
 *	日付			：2011年05月24日
 *＜機能概要＞
 *	オプションサービス契約一覧照会機能のビューロジッククラスです。
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	v1.00.00	2011/05/24	富士通		新規作成
 *	v3.00.00	2012/05/23	FJ)尾崎		【ANK-0099-00-00】(eoモバイルへのeo64移行用料金プラン追加)
 *	v4.00.00	2012/08/17	FJ)横井		【ANK-0524-00-00】(ワンストップ対応)
 *	v4.00.01	2012/10/11	FJ)木村		【IT1-2012-0001232】スマートリンクプレミアムを追加
 *	v4.00.02	2012/11/19	FJ)藤本		【ANK-1289-00-00】サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移
 *	v5.00.00	2013/01/15	FJ)横井		【ANK-1173-00-00】スマートリンクプレミアムパックＯＰの非課金解約対応
 *	v5.00.01	2013/02/28  FJ) 江藤	【IT1-2012-0002413】 サービス契約共通ヘッダに予約状況追加
 *	v5.00.02	2013/04/08	FJ）坂本	TAI-2013-0000012 画面設計規約の実装チェック
 *	v5.00.03	2013/04/23	FJ）坂本	IT1-2013-0001038 品質向上対応
 *	v5.00.04	2013/04/27	FJ）坂本	IT1-2013-0001038 品質向上対応
 *	V5.00.05	2013/05/24	FJ)藤川		【ANK-1521-00-00】オプション一覧ボタン追加（課金開始日変更）
 *	v5.00.06	2013/08/07	FJ)砂川		【IT1-2013-0001558】通話明細照会ボタン追加
 *	v8.00.00	2014/01/10	FJ)齋藤		【ANK-1586-00-00】フェムトセル対応(docomo)
 *	v8.01.00	2014/03/12	FJ)松尾		【ANK-1855-00-00】【有償OM対応】契約形態が「締結済」の場合に開通前の番ポ無⇒番ポ有などの登録不可
 *	v8.02.00	2014/04/11	FJ)北谷		【OM-2014-0001362】戻るボタン制御誤り
 *	v8.03.00	2014/05/06	FJ)藤本		【OM-2014-0001744】回復可能期間の最大日付の場合にオプションが回復できない
 *	v8.04.00	2014/06/05	FJ)田中		【OM-2014-0001976】スターチャンネルの利用開始日が反映されていない
 *	v8.05.00	2014/06/09	FJ)田中		【OM-2014-0001976】スターチャンネルの利用開始日が反映されていない
 *	v9.00.00	2014/05/02	FJ)齋藤		【ANK-2056-00-00】電話セレクトオプションパック
 *	v9.01.00	2014/05/12	FJ)齋藤		IT1-2014-0000122
 *	v9.02.00	2014/05/18	FJ)阮		【IT1-2014-0000155】
 *	v9.02.01	2014/05/19	FJ)齋藤		【IT1-2014-0000155】IT1-2014-0000155 水平展開対応
 *	v9.03.00	2014/06/16  FJ)松本		【IT2-2014-0000236】
 *	v9.04.00	2014/06/24  FJ)寺田		【ANK-2121-00-00】【ＮＯ．１４８４】フッター揃え対応
 * v11.00.00	2014/11/10  FJ)伊藤		【ANK-2184-00-00】【ＮＯ．１５８４】新型フェムトセル対応
 * v16.00.00	2015/06/29  FJ)中原		【ANK-2480-00-00】新電力対応
 * v23.00.00	2015/11/24  FJ)山岡		【ANK-2693-00-00】 オーダリング対応（STEP2）
 * v25.00.00	2016/05/26  FJ)柳		【ANK-2754-00-00】お客様情報タブへのコンテンツ契約情報表示
 * v26.00.00	2016/06/10  FJ)笠川     【ANK-2687-00-00】 プレミアムサポート施策
 * v28.00.00	2016/12/07  FJ)三原		【ANK-3034-00-00】【eoプレミアムクラブ】eo画面へのチケット残枚数追加表示
 * v32.00.00	2017/04/10  FJ)中原		【ANK-3149-00-00】新セキュリティパック導入
 * v35.00.00	2017/12/26  FJ)麻生		【ANK-3346-01-00】【解約レター機能関連】改善要望　Ｓｔｅｐ１
 * v37.00.00	2018/03/15	FJ)三原		【ANK-3366-00-00】eo光設備卸対応
 * v39.00.00    2018/09/26  FJ)前田		【ANK-3484-00-00】端末補償サービス導入対応
 * v48.00.00	2020/01/24  FJ)中野		【ANK-3796-00-00】テレビリースサービス導入対応
 * v49.00.00	2020/06/10	FJ)荒木		【ANK-3840-00-00】テレビリースサービス新規申込対応
 * v50.00.00	2020/07/01	FJ)平野		【ANK-3754-00-00】トビラフォン対応
 * v52.00.00	2021/01/25	FJ)吉村		【ANK-3987-00-00】Netflix導入対応（STEP2）
 * v55.00.00	2021/11/08	FJ)吉村		【OM-2021-0001538】オプション一覧画面の「照会」ボタンが非活性になる
 * v57.00.00	2022/01/13	FJ)杉本		【ANK-4075-00-00】マンション卸回線(WI-FIスキーム)の不備対応
 * v66.00.00	2023/03/09  FJ)吉川		【ANK-4307-00-00】【eo定期】プレミアムクラブリニューアル対応
 * v73.00.00	2024/08/29  FJ)中川		【ANK-4427-00-00】NTT卸対応
 * v73.01.00	2025/01/14	FJ) 星野	【IT1-2025-0000002】
 * v74.00.00	2024/12/13  GDC)v.auditor【ANK-4592-00-00】テレビ新コース（スカパー用）導入対応
 **********************************************************************/
package eo.web.webview.KKW02301SF;

import static eo.web.webview.common.JKKKeiNewCmnLogicUtil.CCSV0006;
import static eo.web.webview.common.JKKKeiNewCmnLogicUtil.PROP_SIMS_MAP_SYS_ID;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;

import com.fujitsu.futurity.common.JSYwebLog;
import com.fujitsu.futurity.model.common.JCMAPLConstMgr;
import com.fujitsu.futurity.web.x00.JCCWebServiceException;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;
import com.fujitsu.futurity.web.x31.X31SRuntimeException;

import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.util.JPCUtilCommon;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.KKW21811SF.KKW21811SFConst;
import eo.web.webview.common.JACCommonConst;
import eo.web.webview.common.JACScreenConst;
import eo.web.webview.common.JCCScreenConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCHCommonConst;
import eo.web.webview.common.JCRScreenConst;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.common.JKKTabCommonLogic;
import eo.web.webview.common.JKKWebCommon;
import eo.web.webview.mapping.CCSV0006_CCSV0006OPDBMapper;
import eo.web.webview.mapping.KKSV0042_KKSV0042OPDBMapper;
import eo.web.webview.mapping.KKSV0043_KKSV0043OPDBMapper;
import eo.web.webview.mapping.KKSV0793_KKSV0793OPDBMapper;

/**
 * <dd>クラス名：オプションサービス契約一覧照会ビューロジック
 * <dd>クラス説明：画面上のボタン押下時の各処理を記述します。
 * <dd>備考：
 * @version  1.0 2011/05/19
 * @author   富士通
 */
@SuppressWarnings("serial")
public class KKW02301SFLogic extends JCCWebBusinessLogic 
{

	/**
	 *  顧客契約引継情報項目キー
	 */	
	private static final String[] CUST_KEI_HKTGI_KEYS = {
		//*-<< ANK-2693-00-00 ADD START >>-*//
		KKW02301SFConst.SYSCD_03,	
		//*-<< ANK-2693-00-00 ADD  END  >>-*//
		KKW02301SFConst.SYSID_03,	
		KKW02301SFConst.SVC_KEI_NO_03,
		KKW02301SFConst.IDO_DIV_03,
		KKW02301SFConst.IDO_RSN_CD_03,
		KKW02301SFConst.OP_SVC_KEI_NO_03,
		KKW02301SFConst.TRAN_DIV_03,
		KKW02301SFConst.MSKM_NO_03,
		KKW02301SFConst.MSKM_DTL_NO_03,
		KKW02301SFConst.SVC_KEI_UCWK_NO_03,
		JKKCommonConst.HKTGI_POPUP_MODE,
		KKW02301SFConst.SBOP_SVC_KEI_NO_03,
		KKW02301SFConst.TELNO_JUN_03,
		KKW02301SFConst.IDO_RSN_MEMO_03,
		KKW02301SFConst.IDO_DIV_SENI_PTN_03,
		//↓↓↓2013-01-31追加　ロット２ST2-2013-0000285（照会種別を引継項目に追加）↓↓↓
		JKKCommonConst.HKTGI_SHOKAI_SBT
		//↑↑↑2013-01-31追加　ロット２ST2-2013-0000285（照会種別を引継項目に追加）↑↑↑
	};

	/** 押下ボタン */
	public static final String ACTION_BTN_RIREKI_SHOKAI = "Rireki_Shokai";	// 履歴照会
	public static final String ACTION_BTN_SHOKAI        = "Shokai";			// 照会
	public static final String ACTION_BTN_ADD           = "Add";				// 追加
	public static final String ACTION_BTN_CHGE          = "Chge";				// 変更
	public static final String ACTION_BTN_KAIHK         = "Kaihk";			// 回復
	public static final String ACTION_BTN_DSL           = "Dsl";				// 解約
	public static final String ACTION_BTN_RSV_CL        = "Rsv_Cl";			// 予約取消
	public static final String ACTION_BTN_CHRG_STA_CHG  = "Chrg_Sta_Chg";			// 課金開始日変更
	//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
	public static final String ACTION_BTN_OP_PACK       = "Op_Pack";			// オプションパック
	//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
	/**コードリストの定数*/
	private static final String CD_DIV_LIST = "サービス契約内訳番号";
	/**コード名リストの定数*/
	private static final String CD_DIV_NM_LIST = "電話番号";
	/**コードステータスリストの定数*/
	private static final String CD_DIV_STAT_LIST = "サービス契約内訳ステータス";

	/** どこにも遷移できないオプションサービスコード **/
	public static final String[] OPSVCCDS_DONTSENI = 
		new String[]{"B006","B007","B008","B009","B017","B019","B030","B031"};

	// IT1-2012-0001507 2012/10/20 start
	// ANK-3149-00-00 2017/04/10 MOD START
//	/** 変更できないオプションサービスコード   これ＋オプションチャンネル */
//	public static final String[] OPSVCCDS_DONTHENKO = 
//		new String[]{"B004","B021","B070","B075","B077"};
//	/** 回復できないオプションサービスコード   これ＋オプションチャンネル */
//	public static final String[] OPSVCCDS_DONTKAIHK = 
//		new String[]{"B068","B069","B077"};
	// ANK-3484-00-00 2018/09/26 MOD START
//	/** 変更できないオプションサービスコード   これ＋オプションチャンネル */
//	public static final String[] OPSVCCDS_DONTHENKO = 
//		new String[]{"B004","B021","B070","B075","B077","B130","B131","B132"};
	/** 変更できないオプションサービスコード   これ＋オプションチャンネル */
	public static final String[] OPSVCCDS_DONTHENKO = 
		new String[]{"B004","B021","B070","B075","B077","B130","B131","B132","B134"};
	// ANK-3484-00-00 2018/09/26 MOD END
	/** 回復できないオプションサービスコード   これ＋オプションチャンネル */
	public static final String[] OPSVCCDS_DONTKAIHK = 
	// ANK-4427-00-00 MOD START
//		new String[]{"B068","B069","B077","B130","B131","B132"};
		new String[]{"B068","B069","B077","B130","B131","B132","B138"};
	// ANK-4427-00-00 MOD END
	// ANK-3149-00-00 2017/04/10 MOD END
	/** 照会できないオプションサービスコード */
	public static final String[] OPSVCCDS_DONTSHOKAI = 
		new String[]{"B075","B077"};
	/** 予約取消できないオプションサービスコード */
	public static final String[] OPSVCCDS_DONTYYKTRI = 
		new String[]{"B075"};
	// IT1-2012-0001507 2012/10/20 end
	
	// OM-2014-0001976対応 田中 ADD START
	/** スターチャンネルセットのオプションサービスコード */
	private final String OP_SVC_CD_STA_CHN_SET = "B034";
	/** スターチャンネル（半年）のオプションサービスコード */
	private final String OP_SVC_CD_STA_CHN_HALF_YEAR = "B083";
	/** スターチャンネル（ＣＰ）のオプションサービスコード */
	private final String OP_SVC_CD_STA_CHN_CP = "B104";
	/** スターチャンネル（ＢＳパススル）のオプションサービスコード */
	private final String OP_SVC_CD_STA_CHN_BS_PAS = "B109";
	// OM-2014-0001976対応 田中 ADD END
// 20140624 ANK-2121-00-00 Add Start
	/** 顧客契約引継リスト 異動区分選択画面遷移パターン：親画面遷移パターン(一時的) */
	private static final String IDO_DIV_SENI_PTN_TMP_OYA_SENI = "99";
// 20140624 ANK-2121-00-00 Add End

	/**
	 * 照会画面初期表示処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	public boolean actionInit() throws Exception
	{

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 共通Bean アクセスクラスの取得
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();

		// セッション情報取得
		getSessionData(svcFormBean);

		// 運用日を設定
		String unyo_ymd = JCCWebCommon.getOpeDate(this, null);
		svcFormBean.sendMessageString(KKW02301SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyo_ymd);

		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// HashMap定義
		HashMap<String, Object> paramMap  = new HashMap<String, Object>();		// パラメタマップ生成
		HashMap<String, Object> inputMap  = new HashMap<String, Object>();		// インプットマップ生成
		HashMap<String, Object> outputMap = new HashMap<String, Object>();		// アウトプットマップ生成

		// サービスパラメタ設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID,   JKKCommonConst.UCID_KKSV0042);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0042OP);

		// 上りマッピング(サービス項目-DataBean項目マッピング)
		KKSV0042_KKSV0042OPDBMapper mapper = new KKSV0042_KKSV0042OPDBMapper();
		inputMap = mapper.setKKSV004201SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);		// サービス契約一意照会
		inputMap = mapper.setKKSV004202SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// サービス契約共通情報一覧照会
		inputMap = mapper.setKKSV004203SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);		// 督促一意照会
		inputMap = mapper.setKKSV004204SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// コード名称管理一意照会：異動区分名称
		inputMap = mapper.setKKSV004205SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// コード名称管理一意照会：サービス契約ステータス名称
		inputMap = mapper.setKKSV004206SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// 割引サービス契約一覧照会
		//ANK-1855-00-00 20140312 START
		//inputMap = mapper.setKKSV004207SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// サービス契約内訳<eo光電話>一覧照会
		//番号変更中に新旧電話番号に対してオプションの操作が行えるように契約手続中フラグをみないように修正
		inputMap = mapper.setKKSV004207SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_4);		// サービス契約内訳<eo光電話>一覧照会
		//ANK-1855-00-00 20140312 END
		// ▼▼▼▼▼ ANK-0524-00-0007 2012/08/17 ADD START ▼▼▼▼▼
		inputMap = mapper.setKKSV004208SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// サービス契約内訳一覧照会
		// ▲▲▲▲▲ ANK-0524-00-0007 2012/08/17 ADD E N D ▲▲▲▲▲
		// ▼▼▼▼▼ 2012/12/06 IT2-2012-0001931 ADD START ▼▼▼▼▼
		inputMap = mapper.setKKSV004209SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// オプションチャンネル情報一覧照会
		// ▲▲▲▲▲ 2012/12/06 IT2-2012-0001931 ADD E N D ▲▲▲▲▲
	// 2016/06/10 ANK-2687-00-00 ADD START
		inputMap = mapper.setKKSV004211CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// お客様ランク情報一意照会
	// 2016/06/10 ANK-2687-00-00 ADD END
// ANK-3840-00-00 ADD START
		inputMap = mapper.setKKSV004212CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);		// 定額サービス契約情報一意照会
// ANK-3840-00-00 ADD END

		// サービス契約内訳＜eo光電話＞一覧照会サービス実行
		invokeService(paramMap, inputMap, outputMap);

		// 取得情報の下りマッピング
		mapper.getKKSV004201SC(paramBean, outputMap);
		mapper.getKKSV004202SC(paramBean, outputMap);
		mapper.getKKSV004203SC(paramBean, outputMap);
		mapper.getKKSV004204SC(paramBean, outputMap);
		mapper.getKKSV004205SC(paramBean, outputMap);
		mapper.getKKSV004206SC(paramBean, outputMap);
//		mapper.getKKSV004207SC(paramBean, outputMap);
		// ▼▼▼▼▼ ANK-0524-00-0007 2012/08/17 ADD START ▼▼▼▼▼
		mapper.getKKSV004208SC(paramBean, outputMap);
		// ▲▲▲▲▲ ANK-0524-00-0007 2012/08/17 ADD E N D ▲▲▲▲▲
		// ▼▼▼▼▼ 2012/12/06 IT2-2012-0001931 ADD START ▼▼▼▼▼
		mapper.getKKSV004209SC(paramBean, outputMap);
		// ▲▲▲▲▲ 2012/12/06 IT2-2012-0001931 ADD E N D ▲▲▲▲▲

		// ▼▼▼▼▼ 2013/02/15 OT-2013-0000145 UPD START ▼▼▼▼▼
		setPulldownList(
				svcFormBean,
				outputMap,
				KKW02301SFConst.TELNO_LIST,
				"KKSV004207SC",
				false,
				"EKK0191B001CBSMsg1List",
				"svc_kei_ucwk_no",
				"telno",
				"svc_kei_ucwk_stat",
				true
		);
		// ▲▲▲▲▲ 2013/02/15 OT-2013-0000145 UPD E N D ▲▲▲▲▲

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		// 初期表示用、サービスフォームBean設定
		editServiceFormBean(svcFormBean);

		// オプションサービス契約一覧検索
		searchList(paramBean, true);

		// 共通ヘッダ情報の設定
		HashMap<String, Object> dataMap = getSvckeiCommonMap(outputMap,paramBean);
		JKKWebCommon.setSvckeiInfo(this, dataMap);

		// JSP側ボタン活性・非活性・非表示制御区分設定
		setKbnButtonVisible(paramBean);

		//↓↓↓2013-01-31追加　ロット２ST2-2013-0000285（照会種別を引継項目に追加）↓↓↓
		// ワンストップメニューからの遷移か否かを取得
		String onestop_seni_flg = svcFormBean.sendMessageString(KKW02301SFConst.ONESTOP_SENI_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		onestop_seni_flg = ("1".equals(onestop_seni_flg) ? onestop_seni_flg : null);
		X31SDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SHOKAI_SBT, X31CWebConst.DATABEAN_SET_VALUE, onestop_seni_flg);
		//↑↑↑2013-01-31追加　ロット２ST2-2013-0000285（照会種別を引継項目に追加）↑↑↑

		// ▼▼▼▼▼ 2013/05/30 IT2-2013-0000475 ADD START ▼▼▼▼▼
		// 顧客契約引継リスト取得
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
// 20140624 ANK-2121-00-00 Add Start
		// 地図画面を開くための設定
		setMapGmnData(svcFormBean);
		
		// 地図ボタン、利用不可期間履歴ボタンの表示区分取得・設定
		setFooterBtnDispFlg(svcFormBean);
		
		// 異動区分選択画面遷移パターン
		String idoDivSeniPtn = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		// 一時的な親画面遷移パターンの場合
		if (IDO_DIV_SENI_PTN_TMP_OYA_SENI.equals(idoDivSeniPtn))
		{
			// 自画面遷移パターンに戻す
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)hktgiDataMap.get(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
			dataList.get(0).put(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI);
		}
// 20140624 ANK-2121-00-00 Add End

		// 戻り時の情報を保持
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, hktgiDataMap);
		// ▲▲▲▲▲ 2013/05/30 IT2-2013-0000475 ADD E N D ▲▲▲▲▲

		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW02301);

		return true;
	}

	/**
	 * JSP側ボタン活性・非活性・非表示制御区分設定
	 * @param  paramBean  DataBeanアクセスクラス
	 */
	private void setKbnButtonVisible(X31SDataBeanAccess[] paramBean)
	{
		String onestop_seni_flg;   // ワンストップから遷移（0:NO 1:YES）

		// サービスCDの取得
		String svc_cd = paramBean[0].sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);
		// 異動区分の取得
		String ido_div = paramBean[0].sendMessageString(KKW02301SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);

		// オプションサービス情報を取得
		X31SDataBeanAccessArray op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
		String op_svc_cd = "";
		//▼▼▼▼▼【ANK-1586-00-00】フェムトセル対応(docomo) ADD START▼▼▼▼▼
		String fmtcel_jgs_cd	= "" ;
		//▲▲▲▲▲【ANK-1586-00-00】フェムトセル対応(docomo) ADD END ▲▲▲▲▲
		if (op_svc_kei_list.getCount() != 0)
		{
			// 2013/04/09 TAI-2013-0000012_画面設計規約の実装チェック START
			//X31SDataBeanAccess subbean = op_svc_kei_list.getDataBean(0);
			String idx =paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_GET_VALUE);
			if(null == idx || "".equals(idx))
			{
				idx = "0";
			}
			X31SDataBeanAccess subbean = op_svc_kei_list.getDataBean(Integer.parseInt(idx));
			// 2013/04/09 TAI-2013-0000012_画面設計規約の実装チェック END
			op_svc_cd = subbean.sendMessageString(KKW02301SFConst.OP_SVC_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
			//▼▼▼▼▼【ANK-1586-00-00】フェムトセル対応(docomo) ADD START▼▼▼▼▼
			fmtcel_jgs_cd = subbean.sendMessageString(KKW02301SFConst.FMTCEL_JGS_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
			//▲▲▲▲▲【ANK-1586-00-00】フェムトセル対応(docomo) ADD END ▲▲▲▲▲
		}

		// オプションサービス契約有無フラグ（有ならTRUE）
		boolean op_svc_kei_list_ari = (op_svc_kei_list.getCount() > 0);

		// サービス契約内訳ステータス確認（解約済、キャンセル済なら、TRUE）
		boolean svc_kei_ucwk_dsl_flg = false;
		if (JKKCommonConst.SVC_CD_02.equals(svc_cd))
		{
			// 電話番号プルダウンの選択を取得
			X31SDataBeanAccessArray telno_list = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);
			// 添え字の取得
			String telnoPos          = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02,       X31CWebConst.DATABEAN_GET_VALUE);
			String svc_kei_ucwk_stat = telno_subbean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(telnoPos));

			svc_kei_ucwk_dsl_flg = ("910".equals(svc_kei_ucwk_stat) || "920".equals(svc_kei_ucwk_stat));
		}

		// ▼▼▼▼▼ 2012/10/25 IT1-2012-0001634 UPD START ▼▼▼▼
		// ワンストップメニューから遷移した場合、ボタンの非活性化
		if (JCRScreenConst.SCREEN_ID_CRW10601.equals(JCCWebCommon.getScreenId(this)))
		{
			// IT2-2012-0001915 2012/12/07 start
			onestop_seni_flg               = "1";	// ワンストップメニューから遷移した
			// IT2-2012-0001915 2012/12/07 end

			String rireki_shokai_btn_v_kbn = "1";	// 履歴照会
			String shokai_btn_v_kbn        = "1";	// 照会
			String add_btn_v_kbn           = "0";	// 追加
			String chg_btn_v_kbn           = "0";	// 変更
			String dsl_btn_v_kbn           = "1";	// 解約
			String kaihk_btn_v_kbn         = "0";	// 回復
			String rsv_cl_btn_v_kbn        = "0";	// 予約取消
			String bk_btn_v_kbn            = "2";	// 戻る
			//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
			String op_pack_btn_v_kbn       = "0";	// OPパック
			//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
			paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN,            X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.RSV_CL_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, rsv_cl_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.KAIHK_BTN_V_KBN,         X31CWebConst.DATABEAN_SET_VALUE, kaihk_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.DSL_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, dsl_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.CHG_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, chg_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.ADD_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, add_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.SHOKAI_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, shokai_btn_v_kbn);
			paramBean[0].sendMessageString(KKW02301SFConst.RIREKI_SHOKAI_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, rireki_shokai_btn_v_kbn);
			//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
			paramBean[0].sendMessageString(KKW02301SFConst.OP_PACK_BTN_V_KBN,       X31CWebConst.DATABEAN_SET_VALUE, op_pack_btn_v_kbn);
			//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
		}
		else
		{
			onestop_seni_flg        = "0";	// ワンストップメニューから遷移していない

			// +++++++++++++++++++++++++++++++++++ //
			// ネットサービス                      //
			// +++++++++++++++++++++++++++++++++++ //
			if (JKKCommonConst.SVC_CD_NET.equals(svc_cd))
			{
				setBtnVisibleAtNet(paramBean, ido_div, op_svc_cd, fmtcel_jgs_cd, op_svc_kei_list_ari);
			}
			// +++++++++++++++++++++++++++++++++++ //
			// 電話サービス                        //
			// +++++++++++++++++++++++++++++++++++ //
			else if (JKKCommonConst.SVC_CD_02.equals(svc_cd))
			{
				setBtnVisibleAtTel(paramBean, ido_div, op_svc_cd, op_svc_kei_list_ari, svc_kei_ucwk_dsl_flg);
			}
			// +++++++++++++++++++++++++++++++++++ //
			// テレビサービス                      //
			// +++++++++++++++++++++++++++++++++++ //
			else if (JKKCommonConst.SVC_CD_TV.equals(svc_cd))
			{
				setBtnVisibleAtTv(paramBean, ido_div, op_svc_cd, op_svc_kei_list_ari);
			}
			// 20140624 ANK-2121-00-00 Add Start
			// +++++++++++++++++++++++++++++++++++ //
			// mineo                               //
			// +++++++++++++++++++++++++++++++++++ //
			else if (JKKStrConst.CD00130_51.equals(svc_cd))
			{
				if (ido_div == null || "".equals(ido_div))
				{
					// 戻るボタン表示区分
					String bk_btn_v_kbn = "3";
					paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
				}
			}
			// 20140624 ANK-2121-00-00 Add End
			//2015-06-29 中原 ANK-2480-00-00 新電力対応 ADD START
			// +++++++++++++++++++++++++++++++++++ //
			// eo電気                               //
			// +++++++++++++++++++++++++++++++++++ //
			else if (JKKStrConst.CD00130_05.equals(svc_cd))
			{
				if (ido_div == null || "".equals(ido_div))
				{
					// 戻るボタン表示区分
					String bk_btn_v_kbn = "3";
					paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
				}
			}
			//2015-06-29 中原 ANK-2480-00-00 新電力対応 ADD END
		}
		// ▲▲▲▲▲ 2012/10/25 IT1-2012-0001634 UPD E N D ▲▲▲▲▲

		// IT2-2012-0001915 2012/12/07 start
		// ワンストップメニューから遷移したフラグ
		paramBean[0].sendMessageString(KKW02301SFConst.ONESTOP_SENI_FLG,        X31CWebConst.DATABEAN_SET_VALUE, onestop_seni_flg);
		// IT2-2012-0001915 2012/12/07 end
	}

	/**
	 * KKSV0042サービス実行結果を設定
	 * @param svcFormBean
	 */
	private void editServiceFormBean(X31SDataBeanAccess svcFormBean)
	{
		// KAD-2012-00000087 ADD Start
		// 電話番号プルダウンの選択を取得
		X31SDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);
		// 添え字の取得
		String telnoPos = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
		// KAD-2012-00000087 ADD End

		// サービス契約一意照会明細
		X31SDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);

		// サービスコード
		String svc_cd = svcKeiBean.sendMessageString(KKW02301SFConst.SVC_CD_04, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, svc_cd);

		// 料金グループコード
		String prg_grp_cd = svcKeiBean.sendMessageString(KKW02301SFConst.PRC_GRP_CD_04, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.PRC_GRP_CD, X31CWebConst.DATABEAN_SET_VALUE, prg_grp_cd);

		// IT1-2012-0001507 2012/10/17 start
		X31SDataBeanAccessArray svcKeiList = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		X31SDataBeanAccess svcKeiListElement = svcKeiList.getDataBean(0);		
		// サービス契約ステータス
		String svc_kei_stat = svcKeiListElement.sendMessageString(KKW02301SFConst.SVC_KEI_STAT_05, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_STAT, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_stat);
		// IT1-2012-0001507 2012/10/17 end

		// サービス契約内訳番号（前画面で選択された電話番号のものを使用、初期表示のため）
		String svc_kei_ucwk_no = "";
		String svc_kei_ucwk_stat = "";
		if (JKKCommonConst.SVC_CD_02.equals(svc_cd))
		{
			// サービス契約内訳<eo光電話>一覧照会明細
			X31SDataBeanAccessArray telnoListArr = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			if (telnoListArr != null && 0 < telnoListArr.getCount())
			{
				X31SDataBeanAccess telnoListBean = telnoListArr.getDataBean(0);
				svc_kei_ucwk_no = telnoListBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_02, X31CWebConst.DATABEAN_GET_VALUE, 
						Integer.parseInt(telnoPos));
				svc_kei_ucwk_stat = telnoListBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE, 
						Integer.parseInt(telnoPos));
			}
		}
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_ucwk_no);
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_ucwk_stat);

		// ソートの初期値設定
		svcFormBean.sendMessageString(KKW02301SFConst.SORT_NUM, X31CWebConst.DATABEAN_SET_VALUE, "1");

	}

	/**
	 * <dd>メソッド名：サービス契約共通マップ取得
	 * <dd>メソッド説明：サービス契約共通マップの生成を行う。
	 * <dd>備考：なし。
	 * @param outputMap サービスI/Fからの取得データマップ
	 * @return HashMap サービス契約共通マップ
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> getSvckeiCommonMap(HashMap<String, Object> outputMap, X31SDataBeanAccess[] paramBean)
	{
		HashMap<String, Object> svckeiCommonMap = new HashMap<String, Object>();

		{
			// サービス契約共通情報照会明細から取得
			String adslTab = "0";		//非表示
			HashMap<String, ArrayList<HashMap<String, String>>> svcKeiMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV004202SC");
			if(svcKeiMap != null) 
			{
				ArrayList<HashMap<String, String>> svcKeiChildList = (ArrayList<HashMap<String, String>>)svcKeiMap.get("EKK0081B010CBSMsg1List");
				if (svcKeiChildList != null && 0 < svcKeiChildList.size())
				{
					HashMap<String, String> svcKeiChildMap = (HashMap<String, String>)svcKeiChildList.get(0);
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SVC_KEI_STAT, (String)svcKeiChildMap.get("svc_kei_stat_nm"));
					// OM-2014-0000091 サービス契約情報共通画面ヘッダ部のM-IDが誤っている 2014/01/21 START
//					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID , (String)svcKeiChildMap.get("mansion_id"));
					String pcrsSpeedCd = (String)svcKeiChildMap.get("pcrs_speed_cd");
					// 料金コース速度コードが1G以上の場合
// IT1-2025-0000002対応 20250114 星野 MOD START
//					if (JKKStrConst.CD00688_1G.equals(pcrsSpeedCd))
					if (JKKStrConst.CD00688_OVER1G_LIST.contains(pcrsSpeedCd))
// IT1-2025-0000002対応 20250114 星野 MOD END
					{
						// ペアIDを表示
						svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID, (String)svcKeiChildMap.get("pairid"));
					}
					else
					{
						// マンションIDを表示
						svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID, (String)svcKeiChildMap.get("mansion_id"));
					}
					// OM-2014-0000091 サービス契約情報共通画面ヘッダ部のM-IDが誤っている 2014/01/21 END
					// 20121009 KAD-2012-0000331 マンション名称に回線使用契約物件名を設定するよう変更 MOD START
//					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_NM , (String)svcKeiChildMap.get("mansion_nm"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_NM , (String)svcKeiChildMap.get("kisnusekei_bkn_nm"));
					// 20121009 KAD-2012-0000331 マンション名称に回線使用契約物件名を設定するよう変更 MOD END
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_KEISHA_NM , (String)svcKeiChildMap.get("cust_nm"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TELNO , (String)svcKeiChildMap.get("keisha_telno"));
					String keishaAd = JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_state_nm")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_city_nm")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_oaztsu_nm")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_azcho_nm")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_bnchigo")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_adrttm")) +
					JPCUtilCommon.trim((String)svcKeiChildMap.get("keisha_adrrm"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_KEISHA_AD , keishaAd);
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SVC_KEI_NO , (String)svcKeiChildMap.get("svc_kei_no"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SEIKY_KEI_NO , (String)svcKeiChildMap.get("seiky_kei_no"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SYSID , (String)svcKeiChildMap.get("sysid"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_EOID , (String)svcKeiChildMap.get("eoid"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_PRC_GRP , (String)svcKeiChildMap.get("prc_grp_nm"));
					//↓↓↓2012-07-17変更、ST2-2012-00001357対応↓↓↓
					//svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_PCRS , (String)svcKeiChildMap.get("pcrs_nm"));
					//ロット１より、料金プラン名
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_PCRS , (String)svcKeiChildMap.get("pplan_nm"));
					//↑↑↑2012-07-17変更、ST2-2012-00001357対応↑↑↑

					String prc_grp_cd = svcKeiChildMap.get("prc_grp_cd");
					if (prc_grp_cd.equals(JKKCommonConst.PRC_GRP_CD_05)||prc_grp_cd.equals(JKKCommonConst.PRC_GRP_CD_06))
					{
						adslTab = "1";
					}
					// 20121009 KAD-2012-0000331 P-IDを追加 ADD START
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_P_ID , (String)svcKeiChildMap.get("pid"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_CAT_ID , (String)svcKeiChildMap.get("catid"));
					// 20121009 KAD-2012-0000331 P-IDを追加 ADD END
					// 20130228 IT1-2012-0002413 ADD START
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_RSV_JOKYO , (String)svcKeiChildMap.get("rsv_jokyo"));
					// 20130228 IT1-2012-0002413 ADD END
					// ANK-3366-00-00 ADD START
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ORSJGS_NM, (String)svcKeiChildMap.get("orsjgs_nm"));
					// ANK-3366-00-00 ADD END
					// ANK-4075-00-00 ADD START
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SCM_TYPE_NM, (String)svcKeiChildMap.get("scm_type_nm"));
					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SCM_JGS_NM, (String)svcKeiChildMap.get("scm_jgs_nm"));
					// ANK-4075-00-00 ADD END
				}
			}
			svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ADSL_DSP_FLG , adslTab);
		}
		{
			//異動区分名称
			String idoDivNm = "";
			HashMap<String, ArrayList<HashMap<String, String>>> idoDivMap = 
				(HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV004204SC");
			if (idoDivMap != null)
			{
				ArrayList<HashMap<String, String>> childList = 
					(ArrayList<HashMap<String, String>>)idoDivMap.get("EZM0171A010CBSMsg1List");
				if (childList != null && 0 < childList.size())
				{
					idoDivNm = childList.get(0).get("cd_div_nm");
				}
			}
			svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_IDO_DIV, idoDivNm);
		}
//		{
//			//サービス契約ステータス名称
//			String svcKeiStatNm = "";
//			HashMap<String, ArrayList<HashMap<String, String>>> idoDivMap = 
//				(HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV004205SC");
//			if (idoDivMap != null)
//			{
//				ArrayList<HashMap<String, String>> childList = 
//					(ArrayList<HashMap<String, String>>)idoDivMap.get("EZM0171A010CBSMsg1List");
//				if (childList != null && 0 < childList.size())
//				{
//					svcKeiStatNm = childList.get(0).get("cd_div_nm");
//				}
//			}
//			svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SVC_KEI_STAT, svcKeiStatNm);
//		}

		// ▼▼▼▼▼ 2012/11/13 IT1-2012-0001795 UPD START ▼▼▼▼▼
//		{
//			// 割引サービス契約情報
//			HashMap<String, ArrayList<HashMap<String, String>>> wribSvcKeiMap = 
//				(HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV004206SC");
//			if(wribSvcKeiMap != null) 
//			{
//				ArrayList<HashMap<String, String>> wribSvcKeiChildList = (ArrayList<HashMap<String, String>>)wribSvcKeiMap.get("EKK0451B010CBSMsg1List");
//				if (wribSvcKeiChildList != null && 0 < wribSvcKeiChildList.size())
//				{
//					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_FAMILY_PACK_UM , "有");
//				}
//				else
//				{
//					svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_FAMILY_PACK_UM , "無");
//				}
//			}
//		}
		HashMap<?, ?> kksv004203cc = (HashMap<?, ?>) outputMap.get("KKSV004203CC");
		String family_pack_um = (String) kksv004203cc.get("family_pack_um");
		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_FAMILY_PACK_UM, family_pack_um);
		// ▲▲▲▲▲ 2012/11/13 IT1-2012-0001795 UPD E N D ▲▲▲▲▲

		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_NEXT_TAB ,"Tab5");

		//↓↓↓2012-03-08 ST2-2012-0000326対応↓↓↓
		//督促状態
		String tokusoku_stat_nm = (String) kksv004203cc.get("tokusoku_stat_nm");
		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TOKUSOKU_STAT, tokusoku_stat_nm);
		//↑↑↑2012-03-08 ST2-2012-0000326対応↑↑↑

		//↓↓↓2012-05-01巻@ルータ有無表示対応↓↓↓
		String router_sbt_nm = (String) kksv004203cc.get("router_sbt_nm");
		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ROUTER_SBT, router_sbt_nm);
		//↑↑↑2012-05-01巻@ルータ有無表示対応↑↑↑

		// 2016/06/10 ANK-2687-00-00 ADD START
		// サービス契約情報
		HashMap<String, ArrayList<HashMap<String, String>>> rankMap = (HashMap<String, ArrayList<HashMap<String, String>>>) outputMap.get("KKSV004211CC");
		if (rankMap != null)
		{
			ArrayList<HashMap<String, String>> rankChildList = (ArrayList<HashMap<String, String>>) rankMap.get("EKKA0050001CBSMsg1List");
			if (rankChildList != null && 0 < rankChildList.size()) 
			{
				HashMap<String, String> rankChildMap = (HashMap<String, String>) rankChildList.get(0);
				svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_RANK_NM,
						(String) rankChildMap.get("rnk_nm"));
				// 2016/12/07 ANK-3034-00-00 ADD START
				// 2023/03/09 ANK-4307-00-00 MOD START
				//svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TIC_NUM, (String) rankChildMap.get("tic_num"));		//チケット残枚数
				// 2016/12/07 ANK-3034-00-00 ADD END
				svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TIC_NUM, (String) rankChildMap.get("total_hoyu_pt_su"));		//保有eoポイント数
				// 2023/03/09 ANK-4307-00-00 MOD END
			}
		}
		// 2016/06/10 ANK-2687-00-00 ADD END

// ANK-3840-00-00 ADD START
		// 定額サービス契約情報有無
		HashMap<String, ArrayList<HashMap<String, String>>> tegakSvcMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV004212CC");
		if(tegakSvcMap != null) 
		{
			ArrayList<HashMap<String, String>> tegakSvcChildList = (ArrayList<HashMap<String, String>>)tegakSvcMap.get("tegak_svc_list");
			if (tegakSvcChildList != null && 0 < tegakSvcChildList.size())
			{
				HashMap<String, String> tegakSvcChildMap = (HashMap<String, String>)tegakSvcChildList.get(0);
				svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TEGAK_SVC_UM , (String)tegakSvcChildMap.get("tegak_svc_um"));
			}
		}
// ANK-3840-00-00 ADD END

		return svckeiCommonMap;
	}


	/**
	 * 一覧検索サービス呼出処理
	 * @param  paramBean  DataBeanアクセスクラス
	 * @param  firstflg   初期表示フラグ
	 * @throws Exception 
	 */
	private void searchList(X31SDataBeanAccess[] paramBean, boolean firstflg) throws Exception
	{
		// HashMap定義
		HashMap<String, Object> paramMap = null;
		HashMap<String, Object> inputMap = null;
		HashMap<String, Object> outputMap = null;

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスの呼び出し
		paramMap  = new HashMap<String, Object>();		// パラメタマップ生成
		inputMap  = new HashMap<String, Object>();		// インプットマップ生成
		outputMap = new HashMap<String, Object>();		// アウトプットマップ生成

		// ANK-2121-00-00 フッター揃え対応 2014/06/26 藤田 ADD START
		// 地図を開くフラグのクリア
		paramBean[0].sendMessageString(KKW02301SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// ANK-2121-00-00 フッター揃え対応 2014/06/26 藤田 ADD END
		
		// TAI-2012-0002159 暫定ロジック対応_ソート機能実装 2012/12/10 START

		// ソート番号の取得
		String sort_num = paramBean[0].sendMessageString(KKW02301SFConst.SORT_NUM, X31CWebConst.DATABEAN_GET_VALUE);

		// ソート番号に対応するソート項目を取得
		String sort_item = getSortItem(sort_num); 

		// ソート項目の設定
		paramBean[0].sendMessageString(KKW02301SFConst.SORT_ITEM, X31CWebConst.DATABEAN_SET_VALUE, sort_item);

		// ソート番号に対応するソート区分を取得
		String sort_kbn = getSortFuncCode(sort_num); 

		// ソート区分
		paramBean[0].sendMessageString(KKW02301SFConst.SORT_KBN, X31CWebConst.DATABEAN_SET_VALUE, sort_kbn);

		// TAI-2012-0002159 暫定ロジック対応_ソート機能実装 2012/12/10 END

		// サービスパラメタ設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0043);

		// 上りマッピング(サービス項目-DataBean項目マッピング)
		KKSV0043_KKSV0043OPDBMapper mapper = new KKSV0043_KKSV0043OPDBMapper();

		// サービスコードの取得
		String svcCd = paramBean[0].sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);

		// ▼▼▼▼▼ 2012/10/26 IT1-2012-0001634 UPD START ▼▼▼▼▼
		mapper.setKKSV004301SC(paramBean, inputMap, getKKSV004301SCFuncCd(paramBean));
		// ▲▲▲▲▲ 2012/10/26 IT1-2012-0001634 UPD E N D ▲▲▲▲▲

		// ▼▼▼▼▼ ANK-0524-00-0007 2012/08/16 ADD START ▼▼▼▼▼
		// 設置済ＳＴＢ一覧照会セット
		mapper.setKKSV004303CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトオプションパックADD START▼▼▼▼▼
		if(JKKCommonConst.SVC_CD_02.equals(svcCd))
		{
		mapper.setKKSV004304CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		//IT1-2014-0000122 ADD START
		// 一旦オプションパック情報のリストをクリア
		paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0451A010CBSMSG1LIST).clearArray();
		//IT1-2014-0000122 ADD END
		}
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトオプションパック ADD E N D▲▲▲▲▲
		// サービスコードが「テレビ」の場合のみ、処理を実行する
		if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
		{
			// 設置済ＳＴＢのリストをクリア
			paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST).clearArray();
			paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST_DATA).clearArray();
		}
		// ▲▲▲▲▲ ANK-0524-00-0007 2012/08/16 ADD E N D ▲▲▲▲▲
		// ANK-3149-00-00 2017/04/10 ADD START
		// サービスコードが「ネット」の場合のみ、処理を実行する
		if(JKKCommonConst.SVC_CD_NET.equals(svcCd))
		{
			mapper.setKKSV004307SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		}
		// ANK-3149-00-00 2017/04/10 ADD END

		// 一旦オプションサービスのリストをクリア
		paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST).clearArray();
		// 2013/8/1 IT1-2013-0001558 Add Start
		// 一旦通話明細のリストをクリア
		paramBean[0].getDataBeanArray(KKW02301SFConst.TSUWA_DSL_LIST).clearArray();
		//IT1-2014-0000122 ADD START
		// 一旦オプションパック情報のリストをクリア
		paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0451A010CBSMSG1LIST).clearArray();
		//IT1-2014-0000122 ADD END
		// 2013/8/1 IT1-2013-0001558 Add End
		// オプションサービス契約一覧照会サービス実行
		invokeService(paramMap, inputMap, outputMap);

		// 取得情報の下りマッピング
		mapper.getKKSV004301SC(paramBean, outputMap, firstflg);
		// ▼▼▼▼▼ 2012/10/25 IT1-2012-0001634 ADD START ▼▼▼▼▼
		mapper.getKKSV004303CC(paramBean, outputMap);
		// ▲▲▲▲▲ 2012/10/25 IT1-2012-0001634 ADD E N D ▲▲▲▲▲
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトオプションパックADD START▼▼▼▼▼
		mapper.getKKSV004305SC(paramBean, outputMap);
		//IT1-2014-0000122 ADD START
		mapper.getKKSV004306SC(paramBean, outputMap);
		//IT1-2014-0000122 ADD END
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトオプションパック ADD E N D▲▲▲▲▲
		// 画面表示設定
		setDispInfo(paramBean, svcCd);

		// ▼▼▼▼▼ ANK-0524-00-0007 2012/08/16 ADD START ▼▼▼▼▼
		if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
		{
			// 設置済ＳＴＢ一覧照会明細セット
			setSTBInfoList(paramBean, outputMap);
		}
		// ▲▲▲▲▲ ANK-0524-00-0007 2012/08/16 ADD E N D ▲▲▲▲▲
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトオプションパックADD START▼▼▼▼▼
		// ANK-3149-00-00 2017/04/10 MOD START プレミアムパックもしくはセキュリティパックを表示
//		if (JKKCommonConst.SVC_CD_02.equals(svcCd))
		if (JKKCommonConst.SVC_CD_02.equals(svcCd) || JKKCommonConst.SVC_CD_NET.equals(svcCd))
		// ANK-3149-00-00 2017/04/10 MOD END
		{
			// 割引サービス契約一意照会明細セット(電話セレクトオプションパック表示用)
			setOpPackInfoList(paramBean, outputMap);
		}
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトオプションパック ADD E N D▲▲▲▲▲

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW02301);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW02301);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

	} 

	// ▼▼▼▼▼ 2012/10/25 IT1-2012-0001634 ADD START ▼▼▼▼▼
	/**
	 * 設置済ＳＴＢ一覧照会明細セット処理
	 * 
	 * @param	paramBean		DataBeanアクセスクラス
	 * @param	outputMap		アウトプットマップ
	 */
	@SuppressWarnings("unchecked")
	private void setSTBInfoList(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
		// 設置済ＳＴＢ一覧照会明細を取得する
		X31SDataBeanAccessArray stbInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST);

		// 選択されているサービス契約内訳番号を取得する
		// プルダウンリストの取得
		X31SDataBeanAccessArray pulldownInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		X31SDataBeanAccess pulldownInfoBean = pulldownInfoList.getDataBean(0);

		// 添え字の初期化
		String selectedSTBIndex = "0";
		// コードの初期化
		String selectedSTBValue = "なし";
		if (pulldownInfoBean != null)
		{
			// 添え字の取得
			selectedSTBIndex = pulldownInfoBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
			if (selectedSTBIndex == null || "".equals(selectedSTBIndex))
			{
				// 添え字が取得できない場合は、「0」を設定
				selectedSTBIndex = "0";
			}
			else
			{
				// 添え字からコードを取得
				selectedSTBValue = pulldownInfoBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedSTBIndex));
			}
		}

		// プルダウンリスト生成
		setPulldownListTV(paramBean[0], stbInfoList, KKW02301SFConst.TELNO_LIST, true, "なし", true , "svc_kei_ucwk_stat");

		// 選択行の再設定
		pulldownInfoBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_SET_VALUE, Integer.parseInt(selectedSTBIndex));

		// ＳＴＢ番号が「なし」の場合は、全件表示する
		boolean stbSelectFlg = false;
		if ("なし".equals(selectedSTBValue))
		{
			stbSelectFlg = true;
		}

		// 出力するＳＴＢ情報を選別する
		for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
		{
			// 行データを取得する
			X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);

			if (stbInfo == null)
			{
				continue;
			}

			if (! stbSelectFlg)
			{
				// ＳＴＢ番号を取得
				String stbNo = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_STB, X31CWebConst.DATABEAN_GET_VALUE);
				// ＳＴＢ番号が「なし」の場合以外は、選択されたＳＴＢ番号のみのＳＴＢを出力する
				if (! selectedSTBValue.equals(stbNo))
				{
					// ＳＴＢ番号が一致しないデータは削除する
					stbInfoList.removeDataBean(cnt);
					cnt--;
				}
			}
		}

		// リストの番号
		int listNo = 1;

		// 行表示フラグの設定
		for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
		{
			// 行データを取得する
			X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);

			if (stbInfo == null)
			{
				continue;
			}

			// 行表示フラグ
			if (listNo % 2 == 0) 
			{
				stbInfo.sendMessageString(KKW02301SFConst.GYO_DISP_FLG_01, X31CWebConst.DATABEAN_SET_VALUE, "1");
			} 
			else 
			{
				stbInfo.sendMessageString(KKW02301SFConst.GYO_DISP_FLG_01, X31CWebConst.DATABEAN_SET_VALUE, "2");
			}

			listNo++;
		}
	}
	// ▲▲▲▲▲ 2012/10/25 IT1-2012-0001634 ADD E N D ▲▲▲▲▲
	//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトオプションパックADD START▼▼▼▼▼
	/**
	 * 割引サービス契約一意照会明細セット処理(電話セレクトオプションパック情報)
	 * 
	 * @param	paramBean		DataBeanアクセスクラス
	 * @param	outputMap		アウトプットマップ
	 */
	@SuppressWarnings("unchecked")
	private void setOpPackInfoList(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
	// サービス契約一意照会明細
		X31SDataBeanAccessArray opPackInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0451A010CBSMSG1LIST);
		//IT1-2014-0000122 ADD START
		if(opPackInfoList.getCount() > 0)
		{
		//IT1-2014-0000122 ADD END
			// 終了年月日が最大の場合は、表示しない
			X31SDataBeanAccess subbean = null;
			subbean = opPackInfoList.getDataBean(0);
			String svcEndYmd = subbean.sendMessageString(KKW02301SFConst.WRIB_CHRG_ENDYMD_13,X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.MAX_YMD.equals(svcEndYmd))
			{
				subbean.sendMessageString(KKW02301SFConst.WRIB_CHRG_ENDYMD_13, X31CWebConst.DATABEAN_SET_VALUE, "");
			}
		//IT1-2014-0000122 ADD START
		}
		//IT1-2014-0000122 ADD END
	}
	//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトオプションパック ADD E N D▲▲▲▲▲
	/**
	 * 検索ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionSearch() throws Exception
	{
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(paramBean[0]);
		// KAD-2012-00000087 ADD End

		String svcCd = svcFormBean.sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);

		if (JKKCommonConst.SVC_CD_02.equals(svcCd) || JKKCommonConst.SVC_CD_TV.equals(svcCd))
		{
			// 電話番号プルダウンの選択を取得
			X31SDataBeanAccessArray telno_list = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);

			// 添え字の取得
			String telno_index = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);

			// 添え字からサービス契約内訳NOを取得
			String telno_svc_kei_ucwk_no = telno_subbean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_02, 
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(telno_index));

			// サービス契約内訳NOをDataBeanに設定
			paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, telno_svc_kei_ucwk_no);

			// 添え字からサービス契約内訳ステータスを取得
			String telno_svc_kei_ucwk_stat = telno_subbean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, 
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(telno_index));

			// サービス契約内訳ステータスをDataBeanに設定
			paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT, X31CWebConst.DATABEAN_SET_VALUE, telno_svc_kei_ucwk_stat);
		}

		// ソートの初期値設定
		paramBean[0].sendMessageString(KKW02301SFConst.SORT_NUM, X31CWebConst.DATABEAN_SET_VALUE, "1");

		// オプションサービス契約一覧検索
		// 2014/06/16 IT2-2014-0000236 Mod Start 
		//検索ボタン押下時も初期表示と同じく｢通話料上限通知｣オプションを最上段に移すため
		//初期表示フラグをtrueに変更
		//searchList(paramBean, false);
		searchList(paramBean, true);
		// 2014/06/16 IT2-2014-0000236 Mod End 

		// IT1-2012-0000676 ADD_START
		//JSP側ボタン活性・非活性・非表示制御区分設定
		setKbnButtonVisible(paramBean);
		// IT1-2012-0000676 ADD_END

		return true;
	}


	/**
	 * ページングリンク押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionPaging() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(bean);
		// KAD-2012-00000087 ADD End

		// オプションサービス契約一覧検索
		searchList(paramBean, false);

		return true;
	}


	/**
	 * ソートリンク押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionSort() throws Exception
	{
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(bean);
		// KAD-2012-00000087 ADD End

		// オプションサービス契約一覧検索
		searchList(paramBean, false);

		return true;
	}

// TAI-2012-0002159 2012/12/11 ADD START
	/**
	 * ソート番号に対応するソート項目を取得
	 * @param  sort_num  ソート番号
	 * @return ソート項目
	 */
	private String getSortItem(String sort_num)
	{	
		if ("1".equals(sort_num) || "2".equals(sort_num)) 
		{
			return KKW02301SFConst.SORT_ITEM_OPT_SVC_CD_NM;			// オプションサービス名
		}
		else if ("3".equals(sort_num) || "4".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_OPT_SVC_KEI_STAT_NM;	// DBカラム確認 状態
		}
		else if ("5".equals(sort_num) || "6".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_OPT_NAIYO;				// DBカラム確認 オプション内容
		}
		else if ("7".equals(sort_num) || "8".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_SVC_STAYMD;			// DBカラム確認 利用開始日
		}
		else if ("9".equals(sort_num) || "10".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_RIYO_ENDYMD;			// DBカラム確認 利用終了予定日
		}
		else if ("11".equals(sort_num) || "12".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_SVC_ENDYMD;			// DBカラム確認 利用終了日
		}
		else if ("13".equals(sort_num) || "14".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_OPT_SVC_KEI_NO;		// DBカラム確認 オプション契約番号
		}
		else if ("15".equals(sort_num) || "16".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_OPT_SVC_CD;			// DBカラム確認 サービスコード
		}
		else if ("17".equals(sort_num) || "18".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_SVC_CHRG_STAYMD;			// DBカラム確認 課金開始年月日
		}
		else if ("19".equals(sort_num) || "20".equals(sort_num))
		{
			return KKW02301SFConst.SORT_ITEM_SVC_CHRG_ENDYMD;			// DBカラム確認 課金終了年月日
		}
		
		return KKW02301SFConst.SORT_ITEM_OPT_SVC_CD_NM;
	}

	
	/**
	 * ソート番号に対応する機能コードを取得
	 * @param  sort_num  ソート番号
	 * @return 機能コード
	*/
	private String getSortFuncCode(String sort_num)
	{	
		// SI未対応のため、固定で返す
		if (Integer.parseInt(sort_num) % 2 == 0)
		{
			return KKW02301SFConst.SORT_KBN_ASC;		// 昇順
		}
		else
		{
			return KKW02301SFConst.SORT_KBN_DESC;		// 降順
		}
	}
// TAI-2012-0002159 2012/12/11 ADD END

	/**
	 * 履歴照会ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionRirekiShokai() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_RIREKI_SHOKAI);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * 照会ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionShokai() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_SHOKAI);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		return true;
	}

	/**
	 * 追加ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionAdd() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_ADD);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 変更ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionChge() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_CHGE);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * 回復ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionKaihk() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_KAIHK);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * 解約ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionDsl() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_DSL);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * 予約取消ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionRsvCl() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_RSV_CL);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
	/**
	 * OPパックボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionOpPack() throws Exception
	{
		// 画面遷移処理
		setSessionData(ACTION_BTN_OP_PACK);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
	//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
// ANK-1521-00-00 2013-05-21 ADD_START
	/**
	 * 課金開始日変更ボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionChrgStaChg() throws Exception
	{
		
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		// 画面遷移処理
		setSessionData(ACTION_BTN_CHRG_STA_CHG);
		

		
		// オプションサービス契約一覧の選択行の位置を取得
		String sel = paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_GET_VALUE);
		
		// オプションサービス契約番号
		String[] op_svc_kei_no = new String[1];
		
		X31SDataBeanAccessArray op_svc_kei_list = null;
		
		if (sel != null && !"".equals(sel))
		{
			// 選択値より、オプションサービス契約の情報を取得
			op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
			X31SDataBeanAccess subbean = op_svc_kei_list.getDataBean(Integer.parseInt(sel));
			op_svc_kei_no[0]  = subbean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_01,   X31CWebConst.DATABEAN_GET_VALUE);
		}
		
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();
		// 引継情報を取得
		X31SDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		
		// 異動理由
		int maxIndex = (Integer)custKeiHktgiInf.sendMessage(JKKCommonConst.HKTGI_IDO_RSN_CD,
				X31CWebConst.DATABEAN_GET_COUNT);

		String[] idoRsnCd = new String[maxIndex];
		
		for (int i = 0; i < maxIndex; i++)
		{
			idoRsnCd[i] = custKeiHktgiInf
					.sendMessageString(KKW02301SFConst.IDO_RSN_CD_03, X31CWebConst.DATABEAN_GET_VALUE, i);
		}

		// sysid
		String sysid = custKeiHktgiInf.sendMessageString(KKW02301SFConst.SYSID_03, X31CWebConst.DATABEAN_GET_VALUE);
		String svcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
		String idoDiv = custKeiHktgiInf.sendMessageString(KKW02301SFConst.IDO_DIV_03, X31CWebConst.DATABEAN_GET_VALUE);
		String idoRsnMemo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.IDO_RSN_MEMO_03, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 引継情報をHashMapに設定
		HashMap<String, Object> hktgiDataMap = new HashMap<String, Object>();
		
		hktgiDataMap.put(KKW02301SFConst.SYSID_03, sysid);
		hktgiDataMap.put(KKW02301SFConst.SVC_KEI_NO_03, svcKeiNo);
		hktgiDataMap.put(KKW02301SFConst.IDO_DIV_03, idoDiv);
		hktgiDataMap.put(KKW02301SFConst.IDO_RSN_CD_03, idoRsnCd);
		hktgiDataMap.put(KKW02301SFConst.IDO_RSN_MEMO_03, idoRsnMemo);
		hktgiDataMap.put(KKW02301SFConst.OP_SVC_KEI_NO_03, op_svc_kei_no);
		
		dataList.add(hktgiDataMap);
		
		dataMap.put(KKW02301SFConst.CUST_KEI_HKTGI_LIST, dataList);
		
		// 遷移先に渡す情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW18701, dataMap);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
// ANK-1521-00-00 2013-05-21 ADD_END
	
	// 2013/8/5 IT1-2013-0001558 Add Start
	/**
	 * 通話明細紹介ボタン押下イベントハンドラ
	 * @return 処理結果
	 * @throws Exception 
	 */
	public boolean actionForwardTwDtl() throws Exception
	{
		
		String nextScreenId = JACScreenConst.SCREEN_ID_ACW00601;
		String nextScreenName = JACScreenConst.SCREEN_NAME_ACW00601;
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// ANK-2121-00-00 フッター揃え対応 2014/06/26 藤田 ADD START
		// 地図を開くフラグのクリア
		paramBean[0].sendMessageString(KKW02301SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// ANK-2121-00-00 フッター揃え対応 2014/06/26 藤田 ADD END
		
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		String svcKeiNo;
		String seikyKeiNo;
		ArrayList<HashMap<String, String>> telnoList = new ArrayList<HashMap<String, String>>();
		ArrayList<HashMap<String, String>> telnoList2 = new ArrayList<HashMap<String, String>>();
		HashMap<String, String> telnoInfo = null;

		svcKeiNo = svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);

		// サービス契約共通情報一覧照会明細
		X31SDataBeanAccessArray svcKeiCommonInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		X31SDataBeanAccess subbean = svcKeiCommonInfoList.getDataBean(0);
		seikyKeiNo = subbean.sendMessageString(KKW02301SFConst.SEIKY_KEI_NO_05, X31CWebConst.DATABEAN_GET_VALUE);

		// 通話明細情報一覧照会明細
		X31SDataBeanAccessArray twadtlInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TSUWA_DSL_LIST);
		X31SDataBeanAccess subbean2 = null;
		String telno = "";
		String svcStaYmd = "";
		String svcEndYmd = "";
		
		// 通話明細情報一覧照会明細をリスト化（ソート前）
		for(int i = 0; i < twadtlInfoList.getCount(); i++)
		{
			subbean2 = twadtlInfoList.getDataBean(i);
			telnoInfo = new HashMap<String, String>();
			
			telno = subbean2.sendMessageString(KKW02301SFConst.KOSHUMO_TELNO_12, X31CWebConst.DATABEAN_GET_VALUE);
			svcStaYmd = subbean2.sendMessageString(KKW02301SFConst.SVC_STA_YMD_12, X31CWebConst.DATABEAN_GET_VALUE);
			svcEndYmd = subbean2.sendMessageString(KKW02301SFConst.SVC_END_YMD_12, X31CWebConst.DATABEAN_GET_VALUE);
			
			telnoInfo.put(JACCommonConst.SCREEN_HKTGI_KOSHUMO_TELNO, telno);
			telnoInfo.put(JACCommonConst.SCREEN_HKTGI_SVC_STAYMD, svcStaYmd);
			telnoInfo.put(JACCommonConst.SCREEN_HKTGI_SVC_ENDYMD, svcEndYmd);
			
			telnoList.add(telnoInfo);
		}
		
		// 通話明細情報一覧照会明細をサービス開始日の降順にソート
		sortTelList(telnoList, telnoList2);
		
		// 遷移先から戻る際に必要な情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, dataMap);
		
		// 画面引き継ぎ
		dataMap.put(JACCommonConst.SCREEN_HKTGI_SVC_KEI_NO, svcKeiNo);
		dataMap.put(JACCommonConst.SCREEN_HKTGI_SEIKY_KEI_NO, seikyKeiNo);
		dataMap.put(JACCommonConst.SCREEN_HKTGI_TELNO_LIST, telnoList2);
		
		// 遷移先情報設定
		JCCWebCommon.setScreenInfo(this, nextScreenId, dataMap);

		JCCWebCommon.setScreenId(this, nextScreenId, JKKScreenConst.SCREEN_ID_KKW02301);

		// 遷移先の指定
		super.getCommonInfoBean().sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,   X31CWebConst.DATABEAN_SET_VALUE, nextScreenId);
		super.getCommonInfoBean().sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, nextScreenName);

		return true;
	}

	/**
	 * 通話明細情報一覧照会明細のソート処理
	 */
	private void sortTelList(ArrayList<HashMap<String, String>> telnoList,
			ArrayList<HashMap<String, String>> telnoList2) {
		String svcStaymd = "";
		String svcStaymd2 = "";
		HashMap<String, String> tmpTelnoInfo = null;
		HashMap<String, String> tmpTelnoInfo2 = null;
		int removeCnt = 0;
		
		// ソート前リストが空になるまで繰り返す
		while(null != telnoList && telnoList.size() > 0)
		{
			svcStaymd = "";
			svcStaymd2 = "";
			tmpTelnoInfo = null;
			tmpTelnoInfo2 = null;
			removeCnt = 0;
			
			for(int i = 0; i < telnoList.size(); i++)
			{
				// 一つ目の場合は取り出すだけで終了
				if(i == 0)
				{
					tmpTelnoInfo = telnoList.get(i);
					svcStaymd = tmpTelnoInfo.get(JACCommonConst.SCREEN_HKTGI_SVC_STAYMD);
				}
				// 二つ目以降の場合にサービス開始年月日の比較
				else
				{
					tmpTelnoInfo2 = telnoList.get(i);
					svcStaymd2 = tmpTelnoInfo2.get(JACCommonConst.SCREEN_HKTGI_SVC_STAYMD);
					
					// 先のサービス開始日より大きいサービス開始日をもつ明細である場合
					if(svcStaymd.compareTo(svcStaymd2) < 0)
					{
						tmpTelnoInfo = tmpTelnoInfo2;
						svcStaymd = svcStaymd2;
						removeCnt = i;
					}
				}
			}
			// ソート後リストに格納
			telnoList2.add(tmpTelnoInfo);
			// ソート前リストから対象明細を削除
			telnoList.remove(removeCnt);
		}
	}

	// 2013/8/5 IT1-2013-0001558 Add End
	
	/**
	 * 戻るボタン押下
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionBack() throws Exception
	{
		// 共有フォームBean設定
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();

		// KAD-2012-00000087 ADD Start
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getScreenId(this));

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * 引継情報を取得し、オプションサービス契約一覧照会サービスフォームBeanに設定する
	 * @param  svcFormBean  DataBeanアクセスクラス
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean getSessionData(X31SDataBeanAccess svcFormBean) throws Exception
	{
		//セッションデータ取得
		JCCWebCommon.getScreenInfo(this);

		// 引継情報を取得
		X31SDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

		// 引継情報をDataBeanに設定
		//*--<< ANK-2693-00-00 ADD START >>--*//
		svcFormBean.sendMessageString(KKW02301SFConst.SYSCD, X31CWebConst.DATABEAN_SET_VALUE,
				custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSCD, X31CWebConst.DATABEAN_GET_VALUE));
		//*--<< ANK-2693-00-00 ADD  END  >>--*//
		svcFormBean.sendMessageString(KKW02301SFConst.SYSID, X31CWebConst.DATABEAN_SET_VALUE,
				custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSID, X31CWebConst.DATABEAN_GET_VALUE));
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE,
				custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		svcFormBean.sendMessageString(KKW02301SFConst.IDO_DIV, X31CWebConst.DATABEAN_SET_VALUE,
				custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE));
		String popupMode = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_POPUP_MODE, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.POPUP_MODE, X31CWebConst.DATABEAN_SET_VALUE, popupMode);
		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 START
		String idoDivSeniPtn = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_SET_VALUE, idoDivSeniPtn);
		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 END
		
		return true;
	}

	/**
	 * 引継情報を設定する
	 * @param  actionBtn  押下ボタン
	 * @throws Exception 
	 */
	private void setSessionData(String actionBtn) throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		// オプションサービス契約一覧の選択行の位置を取得
		String sel = paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_GET_VALUE);

		String op_svc_cd      = "";	// オプションサービスコード
		String op_svc_kei_no  = "";	// オプションサービス契約番号
		String mskm_no        = "";	// 申込番号
		String mskm_dtl_no    = "";	// 申込明細番号
		String sbop_svc_cd    = "";	// サブオプションサービスコード
		// KAD-2012-00000087 ADD Start
		String telno_jun      = "";
		// KAD-2012-00000087 ADD End
		// ▼▼▼▼▼ ANK-0035-00-00 2012/08/16 ADD START ▼▼▼▼▼
		String max_op_svc_cnt = "";	// 最大オプションサービス数
		String kaihk_psb_prd  = "";	// 回復可能期間
		String op_svc_end_ymd = "";	// オプションサービス終了年月日
		//IT1-2014-0000122 ADD START
		String op_svc_sta_dtm = "";	//サービス開始年月日時分秒
		String op_pplan_cd    = "";	//オプションの料金プランコード
		//IT1-2014-0000122 ADD END
		// 20141110 ANK-2184-00-00 Add Start
		String op_pcrs_cd     = "";	// 料金コースコード
		// 20141110 ANK-2184-00-00 Add End
		X31SDataBeanAccessArray op_svc_kei_list = null;
		// ▲▲▲▲▲ ANK-0035-00-00 2012/08/16 ADD E N D ▲▲▲▲▲
		//IT1-2014-0000122 ADD START
		X31SDataBeanAccessArray op_pack_kousei_list = null;
		//IT1-2014-0000122 ADD END
		//IT1-2014-0000155 水平展開対応 ADD START
		X31SDataBeanAccessArray oppack_list = null;
		String packUseStaYmd = "";//セレクトオプションパックの利用開始年月日
		String packStat = "";
		//IT1-2014-0000155 水平展開対応 ADD END
		if (sel != null && !"".equals(sel))
		{
			// 選択値より、オプションサービス契約の情報を取得
			// ▼▼▼▼▼ ANK-0035-00-00 2012/08/16 MOD START ▼▼▼▼▼
			op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
			// ▲▲▲▲▲ ANK-0035-00-00 2012/08/16 MOD E N D ▲▲▲▲▲
			X31SDataBeanAccess subbean = op_svc_kei_list.getDataBean(Integer.parseInt(sel));
			op_svc_cd      = subbean.sendMessageString(KKW02301SFConst.OP_SVC_CD_01,       X31CWebConst.DATABEAN_GET_VALUE);
			op_svc_kei_no  = subbean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_01,   X31CWebConst.DATABEAN_GET_VALUE);
			mskm_no        = subbean.sendMessageString(KKW02301SFConst.MSKM_NO_01,         X31CWebConst.DATABEAN_GET_VALUE);
			mskm_dtl_no    = subbean.sendMessageString(KKW02301SFConst.MSKM_DTL_NO_01,     X31CWebConst.DATABEAN_GET_VALUE);
			sbop_svc_cd    = subbean.sendMessageString(KKW02301SFConst.SBOP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
			max_op_svc_cnt = subbean.sendMessageString(KKW02301SFConst.MAX_OP_SVC_CNT_01,  X31CWebConst.DATABEAN_GET_VALUE);
			kaihk_psb_prd  = subbean.sendMessageString(KKW02301SFConst.KAIHK_PSB_PRD_01,   X31CWebConst.DATABEAN_GET_VALUE);
			op_svc_end_ymd = subbean.sendMessageString(KKW02301SFConst.SVC_END_DTM_01,     X31CWebConst.DATABEAN_GET_VALUE);
			//IT1-2014-0000122 ADD START
			op_svc_sta_dtm = subbean.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01,     X31CWebConst.DATABEAN_GET_VALUE);
			op_pack_kousei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK2071B101CBSMSG1List);
			op_pplan_cd    = subbean.sendMessageString(KKW02301SFConst.PPLAN_CD_01,        X31CWebConst.DATABEAN_GET_VALUE);
			//IT1-2014-0000122 ADD END
			// 20141110 ANK-2184-00-00 Add Start
			op_pcrs_cd     = subbean.sendMessageString(KKW02301SFConst.PCRS_CD_01,        X31CWebConst.DATABEAN_GET_VALUE);		// 料金コースコード
			// 20141110 ANK-2184-00-00 Add Start
			//IT1-2014-0000155 水平展開対応 ADD START
			oppack_list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0451A010CBSMSG1LIST);
			X31SDataBeanAccess pack_subbean = null;
			pack_subbean = oppack_list.getDataBean(0);
			if (pack_subbean != null) {
				packUseStaYmd = pack_subbean.sendMessageString(KKW02301SFConst.SVC_USE_STA_YMD_13,X31CWebConst.DATABEAN_GET_VALUE);
				packStat = pack_subbean.sendMessageString(KKW02301SFConst.WRIB_SVC_KEI_STAT_13,X31CWebConst.DATABEAN_GET_VALUE);
			}
			//IT1-2014-0000155 水平展開対応 ADD END
			
		}

		// ▼▼▼▼▼ 2012/12/06 IT2-2012-0001931 ADD START ▼▼▼▼▼
		X31SDataBeanAccessArray ekk0821b001cbsmsg1list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0821B001CBSMSG1LIST);
		String[] OPSVCCDS_SENIKKW2525 = null;

		if (ekk0821b001cbsmsg1list != null && ekk0821b001cbsmsg1list.getCount() > 0)
		{
			// オプションチャンネル情報一覧照会で取得できた情報をセットする
			OPSVCCDS_SENIKKW2525 = new String[ekk0821b001cbsmsg1list.getCount()];

			for (int i = 0; i < ekk0821b001cbsmsg1list.getCount(); i++)
			{
				X31SDataBeanAccess opChannelInfo = ekk0821b001cbsmsg1list.getDataBean(i);
				OPSVCCDS_SENIKKW2525[i] = opChannelInfo.sendMessageString(KKW02301SFConst.OP_SVC_CD_11, X31CWebConst.DATABEAN_GET_VALUE);
			}
		}
		// ▲▲▲▲▲ 2012/12/06 IT2-2012-0001931 ADD E N D ▲▲▲▲▲

		// 照会ボタン押下時のチェック
		if(ACTION_BTN_SHOKAI.equals(actionBtn))
		{
			if(! actionBtnShokaiChk(op_svc_cd))
			{
				return;
			}
		}
		// 変更ボタン押下時のチェック
		else if (ACTION_BTN_CHGE.equals(actionBtn))
		{
			if(! actionBtnChgChk(op_svc_cd, OPSVCCDS_SENIKKW2525))
			{
				return;
			}
		}
		// 解約ボタン押下時のチェック
		else if (ACTION_BTN_DSL .equals(actionBtn))
		{
			if (! actionBtnDslChk(op_svc_cd))
			{
				return;
			}
		}
		// 回復ボタン押下時のチェック
		else if (ACTION_BTN_KAIHK .equals(actionBtn))
		{
			// 20141110 ANK-2184-00-00 Update Start
//			//IT1-2014-0000155 MOD START
////			//IT1-2014-0000122 MOD START
////			if (! actionBtnKaihkChk(op_svc_cd, OPSVCCDS_SENIKKW2525, op_svc_end_ymd, kaihk_psb_prd, op_svc_kei_list, max_op_svc_cnt, op_svc_sta_dtm,op_pack_kousei_list,op_pplan_cd))
////			//IT1-2014-0000122 MOD END
//			if (! actionBtnKaihkChk(op_svc_cd, OPSVCCDS_SENIKKW2525, op_svc_end_ymd, kaihk_psb_prd, op_svc_kei_list, max_op_svc_cnt, op_svc_sta_dtm,op_pack_kousei_list,op_pplan_cd,packUseStaYmd,packStat))
//			//IT1-2014-0000155 MOD END
			if (! actionBtnKaihkChk(op_svc_cd, OPSVCCDS_SENIKKW2525, op_svc_end_ymd, kaihk_psb_prd, op_svc_kei_list, max_op_svc_cnt, op_svc_sta_dtm,op_pack_kousei_list,op_pplan_cd,op_pcrs_cd,packUseStaYmd,packStat))
			// 20141110 ANK-2184-00-00 Update End
			{
				return;
			}
		}
		// 予約取消ボタン押下時のチェック
		else if (ACTION_BTN_RSV_CL.equals(actionBtn))
		{
			//IT1-2014-0000155 MOD START
//			//IT1-2014-0000122 MOD START
//			if (! actionBtnRsvClChk(op_svc_cd, op_svc_sta_dtm, op_svc_kei_list, op_pack_kousei_list,op_pplan_cd))
//			//IT1-2014-0000122 MOD END
			if (! actionBtnRsvClChk(op_svc_cd, op_svc_sta_dtm, op_svc_kei_list, op_pack_kousei_list,op_pplan_cd,packUseStaYmd,packStat))
			//IT1-2014-0000155 MOD END
			{
				return;
			}
		}

		String[] nextScreenInfo = getNextScreenInfo(actionBtn, op_svc_cd, OPSVCCDS_SENIKKW2525);
		// 遷移先画面IDの設定
		String nextScreenId    = nextScreenInfo[0];
		String nextScreenName  = nextScreenInfo[1];
		String nextEndScreenId = nextScreenInfo[2];

		// 引継情報を生成
		X31SDataBeanAccess custKeiHktgi = paramBean[0].getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);

		// オプションサービス契約番号
		custKeiHktgi.sendMessage(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_CLEAR);
		custKeiHktgi.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_ADD_VALUE, op_svc_kei_no);
		// 処理区分
		String tran_div = "";
		if (ACTION_BTN_SHOKAI.equals(actionBtn))
		{
			tran_div = JKKCommonConst.OP_TRAN_DIV_SHOKAI;
		}
		else if (ACTION_BTN_CHGE.equals(actionBtn))
		{
			tran_div = JKKCommonConst.OP_TRAN_DIV_CHGE;
		}
		else if (ACTION_BTN_DSL.equals(actionBtn))
		{
			tran_div = JKKCommonConst.OP_TRAN_DIV_DSL;
		}
		else if (ACTION_BTN_KAIHK.equals(actionBtn))
		{
			tran_div = JKKCommonConst.OP_TRAN_DIV_KAIHK;
		}
		else if (ACTION_BTN_RSV_CL.equals(actionBtn))
		{
			tran_div = JKKCommonConst.OP_TRAN_DIV_RSV_CL;
		}
		custKeiHktgi.sendMessageString(KKW02301SFConst.TRAN_DIV_03, X31CWebConst.DATABEAN_SET_VALUE, tran_div);
		// 申込番号
		custKeiHktgi.sendMessageString(KKW02301SFConst.MSKM_NO_03, X31CWebConst.DATABEAN_SET_VALUE, mskm_no);
		// 申込明細番号
		custKeiHktgi.sendMessageString(KKW02301SFConst.MSKM_DTL_NO_03, X31CWebConst.DATABEAN_SET_VALUE, mskm_dtl_no);

		// KAD-2012-00000087 ADD Start
		// 顧客契約引継リスト.電話番号順
		telno_jun = custKeiHktgi.sendMessageString(KKW02301SFConst.TELNO_JUN_03, X31CWebConst.DATABEAN_GET_VALUE);

		// 電話番号順
		custKeiHktgi.sendMessageString(KKW02301SFConst.TELNO_JUN_03, X31CWebConst.DATABEAN_SET_VALUE, telno_jun);
		// KAD-2012-00000087 ADD End

		// ▼▼▼▼▼ 2013/01/18 IT1-2013-0000030 UPD START ▼▼▼▼▼
		// サービスコード取得
		String svcCd = svcFormBean.sendMessageString(KKW02301SFConst.SVC_CD_04, X31CWebConst.DATABEAN_GET_VALUE);
		// サービス契約内訳番号
		String svc_kei_ucwk_no = getSvcKeiUcwkNo(svcFormBean, svcCd);
		custKeiHktgi.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_03, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_ucwk_no);
		// ▲▲▲▲▲ 2013/01/18 IT1-2013-0000030 UPD E N D ▲▲▲▲▲

		// サブオプションサービス契約番号
		custKeiHktgi.sendMessageString(KKW02301SFConst.SBOP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_SET_VALUE, sbop_svc_cd);

		// 引継情報をHashMapに設定
		HashMap<String, Object> hktgiDataMap = new HashMap<String, Object>();
		hktgiDataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 遷移先から戻る際に必要な情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, hktgiDataMap);

		// 引継情報再セット
		HashMap<String, Object> reHktgiDataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		reHktgiDataMap = reSetHktgData(svcFormBean, reHktgiDataMap, actionBtn, svcCd);

		JCCWebCommon.setScreenId(this, nextScreenId, JKKScreenConst.SCREEN_ID_KKW02301);
		if (nextEndScreenId != null) {
			JCCWebCommon.setScreenId(this, nextEndScreenId, JKKScreenConst.SCREEN_ID_KKW02301);
		}

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		// 遷移先に渡す情報を設定
		JCCWebCommon.setScreenInfo(this, nextScreenId, reHktgiDataMap);

		// 共有フォームBean設定
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, nextScreenId);
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, nextScreenName);

	}


	/**
	 * <dd>メソッド名：引継情報データマップ取得
	 * <dd>メソッド説明：引数のサービスフォームBeanより引継情報データマップの生成を行う。
	 * <dd>備考：引継情報データタイプの可変項目はString[]のみ対応。
	 * @param bean サービスフォームBean	
	 * @param hktgiKey 引継情報データタイプのキー
	 * @param hktgiPrmKeys 引継情報データタイプの項目キーリスト
	 * @return HashMap<String, Object> 引継情報データマップ
	 */
	private HashMap<String, Object> getHktgiDataMap(X31SDataBeanAccess bean, String hktgiKey , String[] hktgiPrmKeys)
	{
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();

		X31SDataBeanAccessArray infList =  bean.getDataBeanArray(hktgiKey);
		for (int i = 0 ; i < infList.getCount() ; i++)
		{
			HashMap<String, Object> inMap = new HashMap<String, Object>();

			X31SDataBeanAccess inf = infList.getDataBean(i);
			for (int j = 0 ; j < hktgiPrmKeys.length ; j++)	
			{
				try
				{
					inMap.put(hktgiPrmKeys[j], inf.sendMessageObject(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE));
				}
				catch (X31SRuntimeException ex)	
				{
					// 可変項目の場合(String[]のみ対応)
					int length = (Integer)inf.sendMessage(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_COUNT);
					String[] obj = new String[length];
					for (int k = 0 ; k < length ; k++)
					{
						obj[k] = inf.sendMessageString(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE, k);
					}
					inMap.put(hktgiPrmKeys[j], obj);
				}
			}
			dataList.add(inMap);
		}
		dataMap.put(hktgiKey, dataList);

		return dataMap;	
	}


	/**
	 * 「申込情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab1() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab1(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「サービス契約」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab2() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		// 料金グループコード取得
		String prcGrpCd = svcFormBean.sendMessageString(KKW02301SFConst.PRC_GRP_CD, X31CWebConst.DATABEAN_GET_VALUE);

		return JKKTabCommonLogic.actionTab2(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				new String[]{ prcGrpCd },
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「お客様情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab3() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab3(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「機器情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab4() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab4(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「オプション情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab5() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab5(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「請求契約情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab6() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab6(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「進捗情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab7() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab7(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「割引情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab8() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab8(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「住所情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab9() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab9(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}


	/**
	 * 「ADSL工事情報」タブ押下時処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionTab10() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// KAD-2012-00000087 ADD Start
		// 非活性オブジェクトの値設定
		editDisableObjectValue(svcFormBean);
		// KAD-2012-00000087 ADD End

		return JKKTabCommonLogic.actionTab10(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}
	
	// ANK-2754-00-00 2016/05/26 ADD START
	/**
	 * 「コンテンツ」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab11() throws Exception
	{
		return JKKTabCommonLogic.actionTab11(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW02301,
				CUST_KEI_HKTGI_KEYS);
	}
	// ANK-2754-00-00 2016/05/26 ADD END

	/**
	 * <dd>メソッド名	：setPulldownList
	 * <dd>メソッド説明	：下り情報Mapから取得したコードリスト、コード名リストを
	 *                    プルダウン情報Beanに設定します。
	 * 
	 * @param bean データBeanアクセスクラス
	 * @param outputMap 下り情報Map
	 * @param pulldownKey プルダウン情報取得キー
	 * @param outMapKey 下り情報Map取得キー
	 * @param blankFlag 1行目ブランク付与フラグ  true:付与する,false:付与しない
	 * @param msgKey 取得Msgキー
	 * @param cdKey 取得コードキー
	 * @param nmKey 取得名称キー
	 * @param indexNoFlg 添え字フラグ
	 * @exception Exceptionがスローされます。
	 */
	@SuppressWarnings("unchecked")
	private static void setPulldownList(
			X31SDataBeanAccess bean,
			HashMap<String, Object> outputMap,
			String pulldownKey,
			String outMapKey,
			boolean blankFlag,
			String msgKey,
			String cdKey,
			String nmKey,
			String statKey,
			boolean indexNoFlg
	) throws Exception
	{
		//データBeanアクセスクラスがNULLかどうか判定します
		if (bean == null)
		{
			//NULL、空の場合処理を終了します
			return ;
		}
		//下り情報MapがNULLか判定する
		if(outputMap == null)
		{
			//NULLの場合処理を終了します
			return ;
		}
		//プルダウンキーがNULLか空文字かどうか判定します
		if (pulldownKey == null || "".equals(pulldownKey))
		{
			//NULL、空文字の場合処理を終了します
			return ;
		}

		//下り情報Map取得キーがNULLか空文字かどうか判定します
		if (outMapKey == null || "".equals(outMapKey))
		{
			//NULL、空文字の場合処理を終了します
			return ;
		}
		//下り情報マップから対象の情報を取得します
		HashMap<String, Object> parentMap = (HashMap)outputMap.get(outMapKey);

		if(parentMap == null) 
		{
			//NULLの場合処理を終了します
			return ;
		}

		// 対象の発行ステータスDataBeanを取得し、データBeanアクセスクラスリストに設定します
		X31SDataBeanAccessArray pulldown_list = bean.getDataBeanArray(pulldownKey);

		//データBeanアクセスクラスに対象のプルダウン情報Beanを設定します
		X31SDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);


		//プルダウン情報Beanのコードリスト領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_LIST,      X31CWebConst.DATABEAN_CLEAR);
		//プルダウン情報Beanのコード名リスト領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_NM_LIST,   X31CWebConst.DATABEAN_CLEAR);
		//プルダウン情報Beanのコードステータスリスト領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_CLEAR);

		//Mapにコード名称管理一覧照会明細が含まれているか判定します
		//コード明細情報リストにコード名称管理一意照会明細を設定します
		ArrayList childList = (ArrayList)parentMap.get(msgKey);
		//コード明細情報リストがNULLか、空か判定します
		if (childList == null || 0 == childList.size())
		{
			//NULL、空の場合処理を終了します
			return ;
		}

		//先頭に空文字を設定するか判定します
		if(blankFlag)
		{
			// 先頭に空文字を設定
			pulldown_subbean.sendMessageString(CD_DIV_LIST,      X31CWebConst.DATABEAN_ADD_VALUE, "");
			pulldown_subbean.sendMessageString(CD_DIV_NM_LIST,   X31CWebConst.DATABEAN_ADD_VALUE, "");
			pulldown_subbean.sendMessageString(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_ADD_VALUE, "");
		}

		//添え字
		int index = 1;

		//コード明細情報リスト分コードリスト、コード名リストを取得します
		for (int i = 0; i < childList.size(); i++)
		{
			//コード明細情報リストをコード明細情報Mapに設定します
			HashMap childMap = (HashMap)childList.get(i);

			//プルダウン情報Beanにコード区分を設定する
			pulldown_subbean.sendMessageString(CD_DIV_LIST,      X31CWebConst.DATABEAN_ADD_VALUE, (String)childMap.get(cdKey));
			//プルダウン情報Beanにコード区分のステータスを設定する
			pulldown_subbean.sendMessageString(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_ADD_VALUE, (String)childMap.get(statKey));

			//対象のBeanにコード区分名を設定する
			String cd_div_nm = (String)childMap.get(nmKey);
			if (indexNoFlg)
			{
				//添え字、"."、コードリスト名の順にプルダウン情報Beanに設定する
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, (index) + ". " + cd_div_nm);
			}
			else
			{
				//コードリスト名の順にプルダウン情報Beanに設定する
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, cd_div_nm);	
			}
			//添え字のカウントアップ
			index++;
		}
	}

	// ▼▼▼▼▼ 2012/10/25 IT1-2012-0001634 ADD START ▼▼▼▼▼
	/**
	 * <dd>メソッド名	：setPulldownListTV
	 * <dd>メソッド説明	：下り情報Mapから取得したコードリスト、コード名リストを
	 *                    プルダウン情報Beanに設定します。（ＴＶ用）
	 * 
	 * @param	bean	データBeanアクセスクラス
	 * @param	stbInfoList			設置済ＳＴＢ一覧照会明細
	 * @param	pulldownKey			プルダウン情報取得キー
	 * @param	blankFlag			１行目ブランク付与フラグ  true[付与する] false[付与しない]
	 * @param	blankNm				１行目ブランク付与時表示内容
	 * @param	indexNoFlg			添え字フラグ
	 * @exception Exceptionがスローされます。
	 */
	private static void setPulldownListTV(
			X31SDataBeanAccess bean,
			X31SDataBeanAccessArray  stbInfoList,
			String             pulldownKey,
			boolean           blankFlag,
			String             blankNm,
			boolean           indexNoFlg,
			String             statKey
	)
	{
		// データBeanアクセスクラスがNULLかどうか判定します
		if (bean == null)
		{
			// NULL、空の場合処理を終了します
			return ;
		}
		// プルダウンキーがNULLか空文字かどうか判定します
		if (pulldownKey == null || "".equals(pulldownKey))
		{
			// NULL、空文字の場合処理を終了します
			return ;
		}

		// 対象の発行ステータスDataBeanを取得し、データBeanアクセスクラスリストに設定します
		X31SDataBeanAccessArray pulldown_list = bean.getDataBeanArray(pulldownKey);

		// データBeanアクセスクラスに対象のプルダウン情報Beanを設定します
		X31SDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);

		// プルダウン情報Beanのコードリスト領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_LIST,    X31CWebConst.DATABEAN_CLEAR);
		// プルダウン情報Beanのコードリスト名領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_CLEAR);
		//プルダウン情報Beanのコードステータスリスト領域のクリアを行います
		pulldown_subbean.sendMessage(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_CLEAR);

		// 先頭に空文字を設定するか判定します
		if(blankFlag)
		{
			// 先頭に空文字を設定
			if (blankNm == null || "".equals(blankNm))
			{
				pulldown_subbean.sendMessageString(CD_DIV_LIST,    X31CWebConst.DATABEAN_ADD_VALUE, "");
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, "");
				pulldown_subbean.sendMessageString(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_ADD_VALUE, "");
			}
			else
			{
				pulldown_subbean.sendMessageString(CD_DIV_LIST,    X31CWebConst.DATABEAN_ADD_VALUE, blankNm);
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, blankNm);
				pulldown_subbean.sendMessageString(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_ADD_VALUE, "");
			}

		}

		// 設置済ＳＴＢ一覧照会明細の行数が０か判定します
		if (stbInfoList.getCount() == 0)
		{
			return;
		}

		// 添え字
		int index = 1;

		// 設置済ＳＴＢ一覧照会明細分、処理を繰り返します
		for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
		{
			// 設置済ＳＴＢ一覧照会明細の行データを取得します
			X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
			// ＳＴＢ番号を取得します
			String stbNo = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_STB, X31CWebConst.DATABEAN_GET_VALUE);
			String svcKeiUcwkStat = stbInfo.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE);
			// プルダウン情報Beanにコード区分を設定する
			pulldown_subbean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_ADD_VALUE, stbNo);
			//プルダウン情報Beanにコード区分のステータスを設定する
			pulldown_subbean.sendMessageString(CD_DIV_STAT_LIST, X31CWebConst.DATABEAN_ADD_VALUE, svcKeiUcwkStat);

			if (indexNoFlg)
			{
				// 添え字、"."、コードリスト名の順にプルダウン情報Beanに設定する
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, String.valueOf(index) + ". " + stbNo);
			}
			else
			{
				// コードリスト名の順にプルダウン情報Beanに設定する
				pulldown_subbean.sendMessageString(CD_DIV_NM_LIST, X31CWebConst.DATABEAN_ADD_VALUE, stbNo);
			}
			// 添え字のカウントアップ
			index++;
		}
	}
	// ▲▲▲▲▲ 2012/10/25 IT1-2012-0001634 ADD E N D ▲▲▲▲▲

	// KAD-2012-00000087 ADD Start
	/**
	 * 画面項目で非活性となっているオブジェクトの値を再設定する
	 * @param svcFormBean
	 */
	private void editDisableObjectValue(X31SDataBeanAccess svcFormBean)
	{

		// 電話番号プルダウンの選択を取得
		X31SDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);
		// 添え字の取得
		String telno_index = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);

		// サービス契約一意照会明細
		X31SDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);

		// サービスコード
		String svcCd = svcKeiBean.sendMessageString(KKW02301SFConst.SVC_CD_04, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, svcCd);

		// サービスコードが電話の場合で、非活性時に電話番号プルダウンの値が取得できない対応
		if (JKKCommonConst.SVC_CD_02.equals(svcCd) && (telno_index == null || "".equals(telno_index)))
		{
			// IT1-2012-0000710 2012-06-08 EDIT_START
			// 照査前登録画面からの遷移時のみ電話番号順がわたってくる
			if (
					JKKScreenConst.SCREEN_ID_KKW00125.equals(JCCWebCommon.getScreenId(this)) 
					|| JKKScreenConst.SCREEN_ID_KKW00179.equals(JCCWebCommon.getScreenId(this))
			)
			{
				// IT1-2012-0000710 2012-06-08 EDIT_END

				// 顧客契約引継リスト.電話番号順
				X31SDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
				X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
				String telno_jun = custKeiHktgiInf.sendMessageString(KKW02301SFConst.TELNO_JUN_03, X31CWebConst.DATABEAN_GET_VALUE);

				if("2".equals(telno_jun))
				{
					// 前画面で選択された電話番号順を使用
					telno_index = "1";
				}
				else
				{
					telno_index = "0";
				}
			}
			else
			{
				telno_index = "0";
			}

			// 選択されている電話番号リストの添え字を再セット
			telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_SET_VALUE, telno_index);
		}
	}
	// KAD-2012-00000087 ADD End

	/**
	 * 検索処理時の機能コードを取得します<br>
	 * <br>
	 * @param	paramBean
	 * @return	String		機能コード
	 */
	private String getKKSV004301SCFuncCd(X31SDataBeanAccess[] paramBean)
	{
		String funcCd = "";

		// サービスコードの取得
		String svcCd = paramBean[0].sendMessageString(KKW02301SFConst.SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);

		// 電話の場合だけサブオプションも取得
		if(JKKCommonConst.SVC_CD_02.equals(svcCd))
		{
			funcCd = JPCModelConstant.FUNC_CD_2;
		}
		// ＴＶの場合
		else if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
		{
			// プルダウンリストの取得
			X31SDataBeanAccessArray pulldownInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			X31SDataBeanAccess pulldownInfoBean = pulldownInfoList.getDataBean(0);
			// 添え字の取得
			String selectedSTBIndex = pulldownInfoBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
			if (selectedSTBIndex != null && ! "".equals(selectedSTBIndex))
			{
				if (Integer.parseInt(selectedSTBIndex) == 0)
				{
					funcCd = JPCModelConstant.FUNC_CD_1;

					// サービス契約内訳番号をクリアする
					paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
				}
				else
				{
					// ＳＴＢが選択されている場合は、ＳＴＢに紐づく情報のみ
					funcCd = JPCModelConstant.FUNC_CD_1;      //IT1-2012-0002026 2012/11/14 修正

					// 添え字からコードを取得
					String selectedSTBValue = pulldownInfoBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedSTBIndex));

					// 設置済ＳＴＢ一覧照会明細を取得する
					X31SDataBeanAccessArray stbInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST_DATA);

					String svcKeiUcwkNo = "";
					for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
					{
						// プルダウンで選択されているＳＴＢ番号と一致する行を取得する
						X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
						String stbNo = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_STB, X31CWebConst.DATABEAN_GET_VALUE);
						if (stbNo.equals(selectedSTBValue))
						{
							svcKeiUcwkNo = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_SVC_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
							break;
						}
					}

					// 検索するサービス契約内訳番号をセットする
					paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, svcKeiUcwkNo);
				}
			}
			else
			{
				funcCd = JPCModelConstant.FUNC_CD_1;

				// サービス契約内訳番号をクリアする
				paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
			}
		}
		else
		{
			funcCd = JPCModelConstant.FUNC_CD_1;

			// サービス契約内訳番号をクリアする
			paramBean[0].sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
		}

		return funcCd;
	}
	/**
	 * 表示データを成型します<br>
	 * <br>
	 * @param	paramBean
	 * @param	svcCd			サービスコード
	 */
	private void setDispInfo(X31SDataBeanAccess[] paramBean, String svcCd)
	{
		X31SDataBeanAccessArray op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);

		// ワンストップメニューから遷移の場合は、「オプションチャンネル」のみを表示する
		if (JCRScreenConst.SCREEN_ID_CRW10601.equals(JCCWebCommon.getScreenId(this)))
		{
			if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
			{
				// オプションチャンネル情報一覧
				X31SDataBeanAccessArray ekk0821b001cbsmsg1list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0821B001CBSMSG1LIST);

				if (
						(op_svc_kei_list != null && op_svc_kei_list.getCount() > 0)
						&& (ekk0821b001cbsmsg1list != null && ekk0821b001cbsmsg1list.getCount() > 0)
				)
				{
					// オプションサービス契約一覧、オプションチャンネル情報一覧ともに
					// 存在する場合は、オプションチャンネル以外のオプションを削除する
					for (int i = 0; i < op_svc_kei_list.getCount(); i++)
					{
						X31SDataBeanAccess opSvcKeiInfo = op_svc_kei_list.getDataBean(i);
						// オプションサービスコード取得
						String opSvcCd = opSvcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_CD_01, X31CWebConst.DATABEAN_GET_VALUE);

						// リスト削除フラグ（TRUE=>削除）
						boolean listDelFlg = true;

						// オプションチャンネル情報一覧確認
						for (int j = 0; j < ekk0821b001cbsmsg1list.getCount(); j++)
						{
							X31SDataBeanAccess opChannelInfo = ekk0821b001cbsmsg1list.getDataBean(j);
							if (opSvcCd.equals(opChannelInfo.sendMessageString(KKW02301SFConst.OP_SVC_CD_11, X31CWebConst.DATABEAN_GET_VALUE)))
							{
								listDelFlg = false;
								break;
							}
						}

						if (listDelFlg)
						{
							// 一覧から削除
							op_svc_kei_list.removeDataBean(i);
						}
					}
				}
			}
		}

		int listCount = op_svc_kei_list.getCount();
		for (int i = 0; i < listCount; i++)
		{
			X31SDataBeanAccess subbean = null;
			subbean = op_svc_kei_list.getDataBean(i);
			// 利用開始日と利用終了日の設定（S-IF申請中）
			String ymd = "99991231";
			String op_svc_kei_stat =subbean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
			if (
					JKKCommonConst.SVC_KEI_STAT_010.equals(op_svc_kei_stat) ||
					JKKCommonConst.SVC_KEI_STAT_020.equals(op_svc_kei_stat) ||
					JKKCommonConst.SVC_KEI_STAT_030.equals(op_svc_kei_stat)
			)
			{
				// 2014/06/05 OM-2014-0001976 田中 MOD START
//				ymd = subbean.sendMessageString(KKW02301SFConst.RSV_TSTA_KIBO_YMD_01, X31CWebConst.DATABEAN_GET_VALUE);
				
				// 2014/06/09 OM-2014-0001976 田中 MOD START
				// サービス開始年月日時分秒を設定（ＤＢの表示用サービス提供開始年月日が設定されているため）
//				ymd = subbean.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
				// 表示用サービス開始年月日を設定
				ymd = subbean.sendMessageString(KKW02301SFConst.DSP_SVCTK_STAYMD_01, X31CWebConst.DATABEAN_GET_VALUE);
				// 2014/06/09 OM-2014-0001976 田中 MOD START
				
				//オプションサービスコードがスターチャンネルの場合
				String opSvcCd =subbean.sendMessageString(KKW02301SFConst.OP_SVC_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
				if (opSvcCd != null 
					&& (OP_SVC_CD_STA_CHN_SET.equals(opSvcCd) 
						|| OP_SVC_CD_STA_CHN_HALF_YEAR.equals(opSvcCd) 
						|| OP_SVC_CD_STA_CHN_CP.equals(opSvcCd)
						|| OP_SVC_CD_STA_CHN_BS_PAS.equals(opSvcCd))) {
					
					//サービス利用開始希望年月日を利用開始日とする
					ymd = subbean.sendMessageString(KKW02301SFConst.SVC_USE_STA_KIBO_YMD_01, X31CWebConst.DATABEAN_GET_VALUE);
				}
				//2014/06/05 OM-2014-0001976 田中 MOD END
			}
			else
			{
				// 2014/06/09 OM-2014-0001976 田中 MOD START
//				ymd = subbean.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
				
				//オプションサービスコードがスターチャンネルの場合
				String opSvcCd =subbean.sendMessageString(KKW02301SFConst.OP_SVC_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
				if (opSvcCd != null 
					&& (OP_SVC_CD_STA_CHN_SET.equals(opSvcCd) 
						|| OP_SVC_CD_STA_CHN_HALF_YEAR.equals(opSvcCd) 
						|| OP_SVC_CD_STA_CHN_CP.equals(opSvcCd)
						|| OP_SVC_CD_STA_CHN_BS_PAS.equals(opSvcCd))) {
					
					//サービス開始年月日を利用開始日とする
					ymd = subbean.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
				}
				// それ以外の場合
				else
				{
					// 表示用サービス開始日を設定する
					ymd = subbean.sendMessageString(KKW02301SFConst.DSP_SVCTK_STAYMD_01, X31CWebConst.DATABEAN_GET_VALUE);
				}
				// 2014/06/09 OM-2014-0001976 田中 MOD END
			}
			subbean.sendMessageString(KKW02301SFConst.USE_STA_YMD_01, X31CWebConst.DATABEAN_SET_VALUE, ymd);

			// 行表示フラグ
			if (i % 2 == 0) 
			{
				subbean.sendMessageString(KKW02301SFConst.GYO_DISP_FLG_01, X31CWebConst.DATABEAN_SET_VALUE, "1");
			} 
			else 
			{
				subbean.sendMessageString(KKW02301SFConst.GYO_DISP_FLG_01, X31CWebConst.DATABEAN_SET_VALUE, "2");
			}

			// 終了年月日が最大の場合は、表示しない
			String svcEndYmd = subbean.sendMessageString(KKW02301SFConst.SVC_END_DTM_01,
					X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.MAX_YMD.equals(svcEndYmd))
			{
				subbean.sendMessageString(KKW02301SFConst.SVC_END_DTM_01, X31CWebConst.DATABEAN_SET_VALUE, "");
			}
		}

		if (listCount > 0)
		{
			// 初期選択
			paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_SET_VALUE, "0");

			// 2013/04/08 TAI-2013-0000012_画面設計規約の実装チェック START
			// 戻る処理にて戻ってきた際の前回情報を取得する
			// 引継情報を取得
			X31SDataBeanAccessArray custKeiHktgiList =  paramBean[0].getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
			X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

			X31SDataBeanAccess subbean = null;

			// オプションサービス契約番号　引継数
			int opHktgCnt = (Integer)custKeiHktgiInf.sendMessage(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_COUNT);

			if (opHktgCnt > 0)
			{
				// オプションサービス契約番号取得
				String opSvcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE, 0);

				for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
				{
					// オプションサービス契約リストの行データの取得
					subbean = op_svc_kei_list.getDataBean(cnt);

					// 現在行のオプションサービス契約
					String nowOpSvcKeiNo = subbean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_01, X31CWebConst.DATABEAN_GET_VALUE);

					if (opSvcKeiNo.equals(nowOpSvcKeiNo))
					{
						// オプションサービス契約が一致する場合、選択行であると認識
						paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(cnt));
						break;
					}
				}
			}
			// 2013/04/08 TAI-2013-0000012_画面設計規約の実装チェック END
		}
		//↓↓↓2012-04-18更新　ST2-2012-0000740対応↓↓↓
		else
		{
			//リストが無いので選択位置を(空)にする
			paramBean[0].sendMessageString(KKW02301SFConst.OP_SVC_KEI_SEL, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
	}

	/**
	 * 
	 * @param strYmd
	 * @return
	 */
	private Calendar setCalendar(String strYmd)
	{
		Calendar cal = Calendar.getInstance();
		cal.set(Integer.parseInt(strYmd.substring(0, 4)), Integer.parseInt(strYmd.substring(4, 6)) - 1, Integer.parseInt(strYmd.substring(6, 8)));

		return cal;
	}

	/************************************************************************/
	/** 各ボタンチェック機能                                               **/
	/************************************************************************/
	/**
	 * 照会ボタンチェック
	 */
	private boolean actionBtnShokaiChk(String op_svc_cd)
	{
		boolean ret = true;

		for(int i = 0 ; i < OPSVCCDS_DONTSENI.length ; i++)
		{
			// 遷移できない系
			if(OPSVCCDS_DONTSENI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "照会"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		for(int i = 0 ; i < OPSVCCDS_DONTSHOKAI.length ; i++)
		{
			// 照会できない系
			if(OPSVCCDS_DONTSHOKAI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "照会"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		return ret;
	}

	/**
	 * 変更ボタンチェック
	 */
	private boolean actionBtnChgChk(String op_svc_cd, String[] OPSVCCDS_SENIKKW2525)
	{
		boolean ret = true;

		// 変更機能がないオプション（※１）を選択していた場合エラー
		// ※１　詳細は「UIA28_KK_05_サービス契約状態とオーダー投入可否」を参照　、　それぞれの変更画面も
		if (
				// 20130225 IT2-2013-0000213 MOD START
				//op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_MLLIST)
				//|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0040)
				op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0040)
				// 20130225 IT2-2013-0000213 MOD END
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_SOHOPACK10)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DPAD)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EONETPHONE)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DAIKOSHINSEI)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DNS)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_TELVISION)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_YGSITEBLCK)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_GRPCOM)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_RMTSPRT_PLUS)
				|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_IPV6_AD))
		{
			String[] str = {"オプション", "変更"};
			JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
			ret = false;
		}

		for(int i = 0 ; i < OPSVCCDS_DONTSENI.length ; i++)
		{
			// 遷移できない系
			if(OPSVCCDS_DONTSENI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "変更"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		for(int i = 0 ; i < OPSVCCDS_DONTHENKO.length ; i++)
		{
			// 変更できない系
			if(OPSVCCDS_DONTHENKO[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "変更"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		if (OPSVCCDS_SENIKKW2525 != null)
		{
			for(int i = 0 ; i < OPSVCCDS_SENIKKW2525.length ; i++)
			{
				// 変更できない系
				if(OPSVCCDS_SENIKKW2525[i].equals(op_svc_cd))
				{
					String[] str = {"オプション", "変更"};
					JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
					ret = false;
				}
			}
		}

		return ret;
	}

	/**
	 * 解約ボタンチェック
	 */
	private boolean actionBtnDslChk(String op_svc_cd)
	{
		boolean ret = true;

		for(int i = 0 ; i < OPSVCCDS_DONTSENI.length ; i++)
		{
			// 遷移できない系
			if(OPSVCCDS_DONTSENI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "解約"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		return ret;
	}

	/**
	 * 回復ボタンチェック
	 */
	private boolean actionBtnKaihkChk(
			String op_svc_cd,
			String[] OPSVCCDS_SENIKKW2525,
			String op_svc_end_ymd,
			String kaihk_psb_prd,
			X31SDataBeanAccessArray op_svc_kei_list,
			String max_op_svc_cnt,
			//IT1-2014-0000122 ADD START
			String op_svc_sta_dtm,
			X31SDataBeanAccessArray op_pack_kousei_list,
			String op_pplan_cd,
			//IT1-2014-0000122 ADD END
			// 20141110 ANK-2184-00-00 Add Start
			String op_pcrs_cd,
			// 20141110 ANK-2184-00-00 Add End
			//IT1-2014-0000155 水平展開対応 ADD START
			String packUseStaYmd,
			String packStat)
			//IT1-2014-0000155 水平展開対応 ADD END
	{
		boolean ret = true;

		for(int i = 0 ; i < OPSVCCDS_DONTSENI.length ; i++)
		{
			// 遷移できない系
			if(OPSVCCDS_DONTSENI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "回復"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}
		// IT1-2012-0001507 2012/10/20 start
		for(int i = 0 ; i < OPSVCCDS_DONTKAIHK.length ; i++)
		{
			// 回復できない系
			if(OPSVCCDS_DONTKAIHK[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "回復"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}
		if (OPSVCCDS_SENIKKW2525 != null)
		{
			for(int i = 0 ; i < OPSVCCDS_SENIKKW2525.length ; i++)
			{
				// 回復できない系
				if(OPSVCCDS_SENIKKW2525[i].equals(op_svc_cd))
				{
					String[] str = {"オプション", "回復"};
					JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
					ret = false;
				}
			}
		}
		// IT1-2012-0001507 2012/10/20 end

		// ▼▼▼▼▼ 2013/01/04 IT1-2013-0000005 ADD START ▼▼▼▼▼
		// 運用日取得
		String unyo_ymd = JCCWebCommon.getOpeDate(this, null);
		// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 START
//		Calendar cal_unyo_ymd = setCalendar(unyo_ymd);
		// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 END

		// オプションサービス終了年月日取得
		Calendar cal_op_svc_end_ymd = setCalendar(op_svc_end_ymd);

		// 回復可能期間をプラス
		if (kaihk_psb_prd != null && !"".equals(kaihk_psb_prd))
		{
			// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 START
//			cal_op_svc_end_ymd.add(Calendar.DATE, Integer.parseInt(kaihk_psb_prd) - 1);
			cal_op_svc_end_ymd.add(Calendar.DATE, Integer.parseInt(kaihk_psb_prd));
			// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 END
		}

		// 運用日が「オプションサービス終了日＋回復可能期間」より未来であれば
		// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 START
		// 現在時刻を含めた比較となっているため、年月日のみで比較するよう修正
//		if (cal_unyo_ymd.compareTo(cal_op_svc_end_ymd) > 0)
		String kaihkEndYmd = (new SimpleDateFormat("yyyyMMdd")).format(cal_op_svc_end_ymd.getTime());
		if (unyo_ymd.compareTo(kaihkEndYmd) > 0)
		// OM-2014-0001744 回復可能期間の最大日付の場合にオプションが回復できない 2014/05/06 END
		{
			JCCWebCommon.setMessageInfo(this, "EKB1530-JW");
			ret = false;
		}
		// ▲▲▲▲▲ 2013/01/04 IT1-2013-0000005 ADD E N D ▲▲▲▲▲

		// ▼▼▼▼▼ ANK-0035-00-00 2012/08/16 ADD START ▼▼▼▼▼
		if (JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL.equals(op_svc_cd))
		{
			if (op_svc_kei_list != null)
			{
				// サービス提供中のオプション「フェムトセル」のカウント数
				int opSvcCdFmtcelCnt = 0;
				// 20141110 ANK-2184-00-00 Add Start
				// サービス提供中のオプション「フェムトセル（LTE）」のカウント数
				int opSvcCdFmtcelLTECnt = 0;
				// 20141110 ANK-2184-00-00 Add Start
				for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
				{
					X31SDataBeanAccess svcKeiInfo = op_svc_kei_list.getDataBean(cnt);
					// オプションサービスコード
					String opSvcCd       = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_CD_01,       X31CWebConst.DATABEAN_GET_VALUE);
					// オプションサービス契約ステータス
					String opSvcKeiState = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
					// 20141110 ANK-2184-00-00 Add Start
					// 料金コースコード
					String pcrsCd = svcKeiInfo.sendMessageString(KKW02301SFConst.PCRS_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
					// 20141110 ANK-2184-00-00 Add End
					// オプションサービスコードが「フェムトセル」、かつステータスが「サービス提供中」の数をカウントする
					if (
							JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL.equals(opSvcCd)
							&& JKKCommonConst.SVC_KEI_STAT_100.equals(opSvcKeiState)
					)
					{
						// 20141110 ANK-2184-00-00 Add Start
						// 料金コースコード＝「フェムトセル（LTE）」の件数
						if (JKKStrConst.CD00134_BC5.equals(pcrsCd)) {
							opSvcCdFmtcelLTECnt++;
						} else {
						// 20141110 ANK-2184-00-00 Add End
							
							opSvcCdFmtcelCnt++;
							
						// 20141110 ANK-2184-00-00 Add Start
						}
						// 20141110 ANK-2184-00-00 Add End
					}
				}
				// サービス提供中のオプション「フェムトセル」 ＋ 回復を行おうとするオプションが
				// 最大オプションサービス数より大きい場合、エラーとする
				if (! (max_op_svc_cnt == null || "".equals(max_op_svc_cnt)))
				{
					// 20141110 ANK-2184-00-00 Add Start
					// 回復対象のオプションサービス＝「フェムトセル（LTE）」の場合
					if (JKKStrConst.CD00134_BC5.equals(op_pcrs_cd)) {
						// 既に登録済みの場合、エラーとする
						if (opSvcCdFmtcelLTECnt >= 1) {
							String[] str = {"フェムトセル", "回復"};
							JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
							ret = false;
						}
					} else 
					// 20141110 ANK-2184-00-00 Add End
					if (opSvcCdFmtcelCnt + 1 > Integer.parseInt(max_op_svc_cnt))
					{
						String[] str = {"フェムトセル", "回復"};
						JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
						ret = false;
					}
				}
			}
		}
		// ▲▲▲▲▲ ANK-0035-00-00 2012/08/16 ADD E N D ▲▲▲▲▲
		//IT1-2014-0000122 ADD START
		
		//パック・オプションの未来チェック処理開始
		if (op_svc_kei_list != null&&op_pack_kousei_list != null)
		{	
			//メッセージ表示フラグ
			boolean pack_mirai_msg_flg = false;
			//IT1-2014-0000155 水平展開対応 ADD START
			//パックの利用開始日が未来日の場合
			
			// パックが解約の場合は何もしない
			if (packStat != null && !"".equals(packStat)
					&& !"910".equals(packStat) && !"920".equals(packStat)) {
				if(packUseStaYmd != null || !"".equals(packUseStaYmd))
				{
					if(packUseStaYmd.compareTo(unyo_ymd)>0)
					{
					//メッセージ表示フラグをオンにする
					pack_mirai_msg_flg=true;
					}
				}
			}
			
			//IT1-2014-0000155 水平展開対応 ADD END
			//電話セレクトパックを構成するオプション数だけループ
			outside:for(int i = 0 ; i < op_pack_kousei_list.getCount() ; i++)
			{
				X31SDataBeanAccess opPackKouseiInfo = op_pack_kousei_list.getDataBean(i);
				// パックを構成する料金プランコード
				String kouseiOpPPlanCd = opPackKouseiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD14,       X31CWebConst.DATABEAN_GET_VALUE);
				//選択されたオプションが電話セレクトパックを構成するオプションの場合
				
// IT1-2014-0000155 2014/05/18 ADD START
				if(kouseiOpPPlanCd.equals(op_pplan_cd))	
				{
					//選択されたオプションの利用開始年月日が運用日より大きい
					if(op_svc_sta_dtm.compareTo(unyo_ymd)>0)			
					{	
						//メッセージ表示フラグをオンにし、処理を抜ける
						 pack_mirai_msg_flg=true;					
						 break outside;
					}
				}
// IT1-2014-0000155 2014/05/18 ADD END
// IT1-2014-0000155 2014/05/18 DEL START
//				if(kouseiOpPPlanCd.equals(op_pplan_cd))	
//				{
//					//選択されたオプションの利用開始年月日が運用日より大きい
//					if(op_svc_sta_dtm.compareTo(unyo_ymd)>0)			
//					{	
//						//メッセージ表示フラグをオンにし、処理を抜ける
//						 pack_mirai_msg_flg=true;					
//						 break outside;
//					}
//					//選択されたオプションの利用開始年月日が未来日ではない場合他のオプション一覧の利用開始日をチェック
//					else
//					{
//						for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
//						{
//							X31SDataBeanAccess svcKeiInfo = op_svc_kei_list.getDataBean(cnt);
//							// 他のオプションの料金プランコード
//							String opPPlanCd  = svcKeiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
//							// 他のオプションサービス契約ステータス
//							String opSvcKeiState = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
//							//他のオプションの利用開始年月日
//							String list_op_svc_sta_dtm = svcKeiInfo.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
//							for(int j = 0 ; j < op_pack_kousei_list.getCount() ; j++)
//							{
//								X31SDataBeanAccess opPackKouseiInfo1 = op_pack_kousei_list.getDataBean(j);
//								// パックを構成するオプションサービスコード
//								String kouseiOpPPlanCd1 = opPackKouseiInfo1.sendMessageString(KKW02301SFConst.PPLAN_CD14,  X31CWebConst.DATABEAN_GET_VALUE); 
//								//オプションが電話セレクトパックを構成するオプションの場合
//								if(kouseiOpPPlanCd1.equals(opPPlanCd))
//								{
//									//オプションサービス契約ステータスが「キャンセル済」「解約済み」以外で利用開始日が未来日
//									if((!"910".equals(opSvcKeiState) && !"920".equals(opSvcKeiState))
//										&&(list_op_svc_sta_dtm.compareTo(unyo_ymd)>0))
//									{
//										//メッセージ表示フラグをオンにし、処理を抜ける
//										 pack_mirai_msg_flg =true;
//										 break outside;
//									}
//										
//								}
//								
//							}	
//						}
//					}
//					
//				}
// IT1-2014-0000155 2014/05/18 DEL END
			}
			
// IT1-2014-0000155 2014/05/18 ADD START
			for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
			{
				X31SDataBeanAccess svcKeiInfo = op_svc_kei_list.getDataBean(cnt);
				// 他のオプションの料金プランコード
				String opPPlanCd  = svcKeiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
				// 他のオプションサービス契約ステータス
				String opSvcKeiState = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
				//他のオプションの利用開始年月日
				String list_op_svc_sta_dtm = svcKeiInfo.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
				for(int j = 0 ; j < op_pack_kousei_list.getCount() ; j++)
				{
					X31SDataBeanAccess opPackKouseiInfo1 = op_pack_kousei_list.getDataBean(j);
					// パックを構成するオプションサービスコード
					String kouseiOpPPlanCd1 = opPackKouseiInfo1.sendMessageString(KKW02301SFConst.PPLAN_CD14,  X31CWebConst.DATABEAN_GET_VALUE); 
					//オプションが電話セレクトパックを構成するオプションの場合
					if(kouseiOpPPlanCd1.equals(opPPlanCd))
					{
						//オプションサービス契約ステータスが「キャンセル済」「解約済み」以外で利用開始日が未来日
						if((!"910".equals(opSvcKeiState) && !"920".equals(opSvcKeiState))
							&&(list_op_svc_sta_dtm.compareTo(unyo_ymd)>0))
						{
							//メッセージ表示フラグをオンにし、処理を抜ける
							 pack_mirai_msg_flg =true;
							 break;
						}
							
					}
					
				}
				// メッセージ表示フラグがTRUEの場合、もう回す必要なし
				if (pack_mirai_msg_flg == true) {
					break;
				}
			}
// IT1-2014-0000155 2014/05/18 ADD END
			
			if(pack_mirai_msg_flg)
			{
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE130_KW);
			}
		}
		//IT1-2014-0000122 ADD END

		return ret;
	}

	/**
	 * 予約取消ボタンチェック
	 */
	private boolean actionBtnRsvClChk
					(String op_svc_cd,
					//IT1-2014-0000122 ADD START
					String op_svc_sta_dtm,
					X31SDataBeanAccessArray op_svc_kei_list,
					X31SDataBeanAccessArray op_pack_kousei_list,
					String op_pplan_cd,
					//IT1-2014-0000122 ADD END
					//IT1-2014-0000155 水平展開対応 ADD START
					String packUseStaYmd,
					String packStat)
	{				//IT1-2014-0000155 水平展開対応 ADD END
		boolean ret = true;

		for(int i = 0 ; i < OPSVCCDS_DONTSENI.length ; i++)
		{
			// 遷移できない系
			if(OPSVCCDS_DONTSENI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "予約取消"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}

		for(int i = 0 ; i < OPSVCCDS_DONTYYKTRI.length ; i++)
		{
			// 予約取消できない系
			if(OPSVCCDS_DONTYYKTRI[i].equals(op_svc_cd))
			{
				String[] str = {"オプション", "予約取消"};
				JCCWebCommon.setMessageInfo(this, "EKB5420-JW", str);
				ret = false;
			}
		}
		//IT1-2014-0000122 ADD START
		String unyo_ymd = JCCWebCommon.getOpeDate(this, null);
		
		//パック・オプションの未来チェック処理開始
		if (op_svc_kei_list != null&&op_pack_kousei_list != null)
		{	
			//メッセージ表示フラグ
			boolean pack_mirai_msg_flg = false;
			//IT1-2014-0000155 水平展開対応 ADD START
			//パックの利用開始日が未来日の場合
			if (packStat != null && !"".equals(packStat)
					&& !"910".equals(packStat) && !"920".equals(packStat)) {
				if(packUseStaYmd != null || !"".equals(packUseStaYmd))
				{
					if(packUseStaYmd.compareTo(unyo_ymd)>0)
					{
					//メッセージ表示フラグをオンにする
					pack_mirai_msg_flg=true;
					}
				}
			}
			//IT1-2014-0000155 水平展開対応 ADD END
			//電話セレクトパックを構成するオプション数だけループ
			outside:for(int i = 0 ; i < op_pack_kousei_list.getCount() ; i++)
			{
				X31SDataBeanAccess opPackKouseiInfo = op_pack_kousei_list.getDataBean(i);
				// パックを構成するオプションの料金プランコード
				String kouseiOpPPlanCd = opPackKouseiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD14, X31CWebConst.DATABEAN_GET_VALUE);
				
// IT1-2014-0000155 2014/05/18 ADD START
				//選択されたオプションが電話セレクトパックを構成するオプションの場合
				if(kouseiOpPPlanCd.equals(op_pplan_cd))	
				{
					//選択されたオプションの利用開始年月日が運用日より大きい
					if(op_svc_sta_dtm.compareTo(unyo_ymd)>0)			
					{	
						//メッセージ表示フラグをオンにし、処理を抜ける
						 pack_mirai_msg_flg=true;					
						 break outside;
					}
				}
// IT1-2014-0000155 2014/05/18 ADD END
				
// IT1-2014-0000155 2014/05/18 DEL START
//				//選択されたオプションが電話セレクトパックを構成するオプションの場合
//				if(kouseiOpPPlanCd.equals(op_pplan_cd))	
//				{
//					//選択されたオプションの利用開始年月日が運用日より大きい
//					if(op_svc_sta_dtm.compareTo(unyo_ymd)>0)			
//					{	
//						//メッセージ表示フラグをオンにし、処理を抜ける
//						 pack_mirai_msg_flg=true;					
//						 break outside;
//					}
//					//選択されたオプションの利用開始年月日が未来日ではない場合他のオプション一覧の利用開始日をチェック
//					else
//					{
//						for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
//						{
//							X31SDataBeanAccess svcKeiInfo = op_svc_kei_list.getDataBean(cnt);
//							//他のオプションの料金プランコード
//							String opPPlanCd       = svcKeiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD_01,       X31CWebConst.DATABEAN_GET_VALUE);
//							//他のオプションサービス契約ステータス
//							String opSvcKeiState = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
//							//他のオプションの利用開始年月日
//							String list_op_svc_sta_dtm = svcKeiInfo.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
//							for(int j = 0 ; j < op_pack_kousei_list.getCount() ; j++)
//							{
//								X31SDataBeanAccess opPackKouseiInfo1 = op_pack_kousei_list.getDataBean(j);
//								// パックを構成するオプションサービスコード
//								String kouseiOpPPlanCd1 = opPackKouseiInfo1.sendMessageString(KKW02301SFConst.PPLAN_CD14,  X31CWebConst.DATABEAN_GET_VALUE); 
//								//オプションが電話セレクトパックを構成するオプションの場合
//								if(kouseiOpPPlanCd1.equals(opPPlanCd))
//								{
//									//オプションサービス契約ステータスが「キャンセル済」「解約済み」以外で利用開始日が未来日
//									if((!"910".equals(opSvcKeiState) && !"920".equals(opSvcKeiState))
//										&&(list_op_svc_sta_dtm.compareTo(unyo_ymd)>0))
//									{
//										//メッセージ表示フラグをオンにし、処理を抜ける
//										 pack_mirai_msg_flg =true;
//										 break outside;
//									}
//										
//								}
//								
//							}	
//						}
//					}
//					
//				}
// IT1-2014-0000155 2014/05/18 DEL END
			}
// IT1-2014-0000155 2014/05/18 ADD START
			for (int cnt = 0; cnt < op_svc_kei_list.getCount(); cnt++)
			{
				X31SDataBeanAccess svcKeiInfo = op_svc_kei_list.getDataBean(cnt);
				//他のオプションの料金プランコード
				String opPPlanCd       = svcKeiInfo.sendMessageString(KKW02301SFConst.PPLAN_CD_01,       X31CWebConst.DATABEAN_GET_VALUE);
				//他のオプションサービス契約ステータス
				String opSvcKeiState = svcKeiInfo.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE);
				//他のオプションの利用開始年月日
				String list_op_svc_sta_dtm = svcKeiInfo.sendMessageString(KKW02301SFConst.SVC_STA_DTM_01, X31CWebConst.DATABEAN_GET_VALUE);
				for(int j = 0 ; j < op_pack_kousei_list.getCount() ; j++)
				{
					X31SDataBeanAccess opPackKouseiInfo1 = op_pack_kousei_list.getDataBean(j);
					// パックを構成するオプションサービスコード
					String kouseiOpPPlanCd1 = opPackKouseiInfo1.sendMessageString(KKW02301SFConst.PPLAN_CD14,  X31CWebConst.DATABEAN_GET_VALUE); 
					//オプションが電話セレクトパックを構成するオプションの場合
					if(kouseiOpPPlanCd1.equals(opPPlanCd))
					{
						//オプションサービス契約ステータスが「キャンセル済」「解約済み」以外で利用開始日が未来日
						if((!"910".equals(opSvcKeiState) && !"920".equals(opSvcKeiState))
							&&(list_op_svc_sta_dtm.compareTo(unyo_ymd)>0))
						{
							//メッセージ表示フラグをオンにし、処理を抜ける
							 pack_mirai_msg_flg =true;
							 break;
						}
							
					}
					
				}
				if (pack_mirai_msg_flg == true) {
					 break;
				}
			}
// IT1-2014-0000155 2014/05/18 DEL END
			
			//メッセージ表示処理
			if(pack_mirai_msg_flg)
			{
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE130_KW);
			}
		}
		///IT1-2014-0000122 ADD END

		return ret;
	}

	/**
	 * 次画面のＩＤ、名称を取得する<br>
	 * <br>
	 * @param	actionBtn				アクションボタンＩＤ
	 * @param	op_svc_cd				オプションサービスコード
	 * @param	OPSVCCDS_SENIKKW2525	オプションチャンネル一覧
	 */
	private String[] getNextScreenInfo(String actionBtn, String op_svc_cd, String[] OPSVCCDS_SENIKKW2525)
	{
		String[] retNextScreenInfo = new String[3];

		String nextScreenId    = null;
		String nextScreenName  = null;
		String nextEndScreenId = null;

		if (ACTION_BTN_RIREKI_SHOKAI.equals(actionBtn))
		{
			// 履歴照会の場合

			nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02304;
			nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02304;
		}
		else if (ACTION_BTN_ADD.equals(actionBtn))
		{
			// 追加の場合

			nextScreenId   = JKKScreenConst.SCREEN_ID_KKW00837;
			nextScreenName = JKKScreenConst.SCREEN_NAME_KKW00837;

			// 各オプション登録画面からの戻り先画面IDをセット
			// Eメール
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00803, JKKScreenConst.SCREEN_ID_KKW02301);
			// Myホームページ
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00806, JKKScreenConst.SCREEN_ID_KKW02301);
			// メーリングリスト
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00809, JKKScreenConst.SCREEN_ID_KKW02301);
			// 固定グローバルIPアドレス
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00812, JKKScreenConst.SCREEN_ID_KKW02301);
			// マルチセッション
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00818, JKKScreenConst.SCREEN_ID_KKW02301);
			// ダイヤルアップ接続
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00815, JKKScreenConst.SCREEN_ID_KKW02301);
			// リモートサポートプラス
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00824, JKKScreenConst.SCREEN_ID_KKW02301);
			// 電話オプション
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00827, JKKScreenConst.SCREEN_ID_KKW02301);
			// 050番号発番
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW03203, JKKScreenConst.SCREEN_ID_KKW02301);
			// eo光テレビケーブルテレビガイド誌
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00830, JKKScreenConst.SCREEN_ID_KKW02301);
			// eo光テレビオプションチャンネル
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00833, JKKScreenConst.SCREEN_ID_KKW02301);
			// 2012/10/11 【IT1-2012-0001232】スマートリンクプレミアムを追加 ADD-START
			// スマートリンクプレミアム
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00845, JKKScreenConst.SCREEN_ID_KKW02301);
			// 2012/10/11 【IT1-2012-0001232】スマートリンクプレミアムを追加 ADD-END
			// ANK-3149-00-00 2017/04/10 ADD START
			// マカフィー、インターネットサギウォール、ノートンファミリープレミア
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00848, JKKScreenConst.SCREEN_ID_KKW02301);
			// ANK-3149-00-00 2017/04/10 ADD END
			// ANK-3484-00-00 2018/09/26 ADD START
			// おうちの機器補償ＰＣプラン、ＰＣワイドプラン、ＴＶプラン
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00851, JKKScreenConst.SCREEN_ID_KKW02301);
			// ANK-3484-00-00 2018/09/26 ADD END
			// ANK-4427-00-00 ADD START
			// ｅｏ光電話（ｔｙｐｅ　Ｎ）
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00859, JKKScreenConst.SCREEN_ID_KKW02301);
			// ANK-4427-00-00 ADD END
		}
		else if (ACTION_BTN_KAIHK.equals(actionBtn) || ACTION_BTN_RSV_CL.equals(actionBtn))
		{
			// 回復、予約取消の場合

			if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EMAIL))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02502;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02502;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02503;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0020))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02505;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02505;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02506;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_MLLIST))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02402;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02402;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02403;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0040))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02405;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02405;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02406;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_MLTISE))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02511;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02511;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02512;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_YGSITEBLCK))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02514;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02514;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02515;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DUPCON))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02508;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02508;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02509;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_RMTSPRT_PLUS))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02517;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02517;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02518;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_IPV6_AD))
			{
				// 2012/06/30 IT2-2012-0001107 MOD START
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02408;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02408;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02409;
				// 2012/06/30 IT2-2012-0001107 MOD END
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0150)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0160)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0170)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0180)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0190)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0200)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0210)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0220)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0280)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// ANK-3754-00-00 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0230))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// ANK-3754-00-00 ADD END
			// 20120426 IT2-2012-0000458 START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_NUMDISP))
			{
				// 電話番号通知の場合
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// 20120426 IT2-2012-0000458 END
			// IT1-2012-0000688 2012-06-04 ADD_START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_KKSTEL_STOP))
			{
				// 国際電話停止の場合
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02520;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02520;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// IT1-2012-0000688 2012-06-04 ADD_END
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0270))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW03205;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW03205;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW03206;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_CABLE_GUIDE))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02523;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02523;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02524;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_NHK_GRP_IKT))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02538;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02538;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02539;
			}
			// IT1-2012-0001520 2012/10/20 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02410;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02410;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02411;
			}
			// IT1-2012-0001520 2012/10/20 ADD END
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_SMT_LINK_PREMIUM))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02412;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02412;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02413;
			}
			// ANK-3149-00-00 2017/04/10 ADD START
			else if (op_svc_cd.equals(JKKStrConst.OP_SVC_CD_MCAFEE_MULTI_ACCSS) || 
					op_svc_cd.equals(JKKStrConst.OP_SVC_CD_INETSGWL) || 
					op_svc_cd.equals(JKKStrConst.OP_SVC_CD_NTFMLPRM) )
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00846;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00846;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW00848;
			}
			// ANK-3149-00-00 2017/04/10 ADD END
			// ANK-3484-00-00 2018/09/26 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_PC_PLAN)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_TV_PLAN))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00853;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00853;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW00854;
			}
			// ANK-3484-00-00 2018/09/26 ADD END
			// ANK-4427-00-00 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EOHTL_TYPE_N))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00859;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00859;
			}
			// ANK-4427-00-00 ADD END

			if (OPSVCCDS_SENIKKW2525 != null)
			{
				for(int i = 0 ; i < OPSVCCDS_SENIKKW2525.length ; i++)
				{
					if(OPSVCCDS_SENIKKW2525[i].equals(op_svc_cd))
					{
						nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02526;
						nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02526;
						nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02527;
						break;
					}
				}
			}
		}
// ANK-1521-00-00 2013-05-21 ADD_START
		else if (ACTION_BTN_CHRG_STA_CHG.equals(actionBtn))
		{
			nextScreenId    = JKKScreenConst.SCREEN_ID_KKW18701;
			nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW18701;
			nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW18703;
		}
// ANK-1521-00-00 2013-05-21 ADD_END
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
		else if (ACTION_BTN_OP_PACK.equals(actionBtn))
		{
			nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00825;
			nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00825;
			//IT1-2014-0000122 ADD START
			nextEndScreenId  = JKKScreenConst.SCREEN_ID_KKW00827;
			//IT1-2014-0000122 ADD END
		}	
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
		else
		{
			// 上記以外(変更、解約、照会)の場合

			if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EMAIL))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02501;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02501;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02503;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0020))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02504;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02504;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02506;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_MLLIST))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02401;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02401;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02403;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0040))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02404;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02404;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02406;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_SOHOPACK10))
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02531;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02531;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DPAD))
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02536;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02536;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EONETPHONE)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_TELVISION)
			)
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02529;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02529;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DAIKOSHINSEI))
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02532;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02532;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DNS))
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02530;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02530;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_MLTISE))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02510;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02510;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02512;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_YGSITEBLCK))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02513;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02513;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02515;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_GRPCOM))
			{
				nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02535;
				nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02535;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_DUPCON))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02507;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02507;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02509;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_RMTSPRT_PLUS))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02516;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02516;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02518;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_IPV6_AD))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02407;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02407;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02409;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0150)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0160)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0170)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0180)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0190)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0200)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0210)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0220)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0280)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// ANK-3754-00-00 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0230))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			// ANK-3754-00-00 ADD END
			else if (JKKCommonConst.OP_SVC_CD_VALUE_NUMDISP.equals(op_svc_cd))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (
					op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_KKSTEL_STOP)
					|| op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_TWRYO_STIAM)
			)
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02519;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02519;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02521;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_0270))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW03204;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW03204;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW03206;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_CABLE_GUIDE))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02522;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02522;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02524;
			}
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_NHK_GRP_IKT))
			{
				if (ACTION_BTN_SHOKAI.equals(actionBtn))
				{
					nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02533;
					nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02533;
				}
				else if (ACTION_BTN_CHGE.equals(actionBtn))
				{
					nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02537;
					nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02537;
					nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02539;
				}
				else if (ACTION_BTN_DSL.equals(actionBtn))
				{
					nextScreenId   = JKKScreenConst.SCREEN_ID_KKW02540;
					nextScreenName = JKKScreenConst.SCREEN_NAME_KKW02540;
				}
			}
			// IT1-2012-0001520 2012/10/20 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02410;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02410;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02411;
			}
			// IT1-2012-0001520 2012/10/20 ADD END
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_SMT_LINK_PREMIUM))
			{
				// ANK-1173-00-00 2013/01/15 MOD START
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02416;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02416;
				// ANK-1173-00-00 2012/01/15 MOD END
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02413;
			}
			// ANK-3149-00-00 2017/04/10 ADD START
			else if (op_svc_cd.equals(JKKStrConst.OP_SVC_CD_MCAFEE_MULTI_ACCSS) || 
					op_svc_cd.equals(JKKStrConst.OP_SVC_CD_INETSGWL) || 
					op_svc_cd.equals(JKKStrConst.OP_SVC_CD_NTFMLPRM) )
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00846;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00846;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW00848;
			}
			// ANK-3149-00-00 2017/04/10 ADD END
			// ANK-3484-00-00 2018/09/26 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_PC_PLAN)
					  || op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_TV_PLAN))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00852;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00852;
				nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW00854;
			}
			// ANK-3484-00-00 2018/09/26 ADD END
			// ANK-4427-00-00 ADD START
			else if (op_svc_cd.equals(JKKCommonConst.OP_SVC_CD_VALUE_EOHTL_TYPE_N))
			{
				nextScreenId    = JKKScreenConst.SCREEN_ID_KKW00858;
				nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW00858;
			}
			// ANK-4427-00-00 ADD END

			if (OPSVCCDS_SENIKKW2525 != null)
			{
				for(int i = 0 ; i < OPSVCCDS_SENIKKW2525.length ; i++)
				{
					if(OPSVCCDS_SENIKKW2525[i].equals(op_svc_cd))
					{
						nextScreenId    = JKKScreenConst.SCREEN_ID_KKW02525;
						nextScreenName  = JKKScreenConst.SCREEN_NAME_KKW02525;
						nextEndScreenId = JKKScreenConst.SCREEN_ID_KKW02527;
						break;
					}
				}
			}

		}

		retNextScreenInfo[0] = nextScreenId;
		retNextScreenInfo[1] = nextScreenName;
		retNextScreenInfo[2] = nextEndScreenId;

		return retNextScreenInfo;
	}

	/**
	 * サービス契約内訳番号取得<br>
	 * <br>
	 * @param	svcFormBean
	 * @param	svcCd			サービスコード
	 * @return	String			サービス契約内訳番号
	 */
	private String getSvcKeiUcwkNo(X31SDataBeanAccess svcFormBean, String svcCd)
	{
		String svc_kei_ucwk_no = "";

		if(JKKCommonConst.SVC_CD_NET.equals(svcCd))
		{
			// サービス契約内訳番号は設定しない
		}
		else if(JKKCommonConst.SVC_CD_02.equals(svcCd))
		{
			X31SDataBeanAccess telnoListBean = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST).getDataBean(0);
			Integer telnoListCnt = (Integer)telnoListBean.sendMessage(KKW02301SFConst.SVC_KEI_UCWK_NO_02, X31CWebConst.DATABEAN_GET_COUNT);
			// 2012-05-02バグフィックス（サービス契約内訳番号リスト内容が１件以上の場合）
			if (0L < telnoListCnt)
			{
				// 選択行取得
				String selectedTelnoIndex = telnoListBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
				if (selectedTelnoIndex != null && !"".equals(selectedTelnoIndex))
				{
					// サービス契約内訳番号取得
					svc_kei_ucwk_no = telnoListBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_02, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedTelnoIndex));
				}
			}
		}
		else if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
		{
			// プルダウンリストの取得
			X31SDataBeanAccess stbListBean = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST).getDataBean(0);
			// 添え字の取得
			String selectedSTBIndex = stbListBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
			if (selectedSTBIndex != null && ! "".equals(selectedSTBIndex))
			{
				if (Integer.parseInt(selectedSTBIndex) > 0)
				{
					// 添え字からコードを取得
					String selectedSTBValue = stbListBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedSTBIndex));
					// 設置済ＳＴＢ一覧照会明細を取得する
					X31SDataBeanAccessArray stbInfoList = svcFormBean.getDataBeanArray(KKW02301SFConst.STB_LIST);
					for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
					{
						// プルダウンで選択されているＳＴＢ番号と一致する行を取得する
						X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
						String stbNo = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_STB, X31CWebConst.DATABEAN_GET_VALUE);
						if (stbNo.equals(selectedSTBValue))
						{
							svc_kei_ucwk_no = stbInfo.sendMessageString(KKW02301SFConst.STB_LIST_SVC_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
							break;
						}
					}
				}
			}
		}

		return svc_kei_ucwk_no;
	}

	/**
	 * 引継情報再セット<br>
	 * <br>
	 * @param	hktgiDataMap	引継情報
	 * @param	actionBtn		アクションボタンＩＤ
	 * @param	svcCd			サービスコード
	 */
	private HashMap<String, Object> reSetHktgData(
			X31SDataBeanAccess svcFormBean,
			HashMap<String, Object> hktgiDataMap,
			String actionBtn,
			String svcCd
	)
	{
		if(ACTION_BTN_RIREKI_SHOKAI.equals(actionBtn))
		{
			// 履歴照会ボタンの場合
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)hktgiDataMap.get(KKW02301SFConst.CUST_KEI_HKTGI_LIST);

			for (int i = 0; i < dataList.size(); i++)
			{
				// 情報取り出し
				HashMap<String, Object> infMap = dataList.get(i);

				if (JKKCommonConst.SVC_CD_NET.equals(svcCd))
				{
					// サービス「ネット」の場合は、サービス契約内訳番号をすべて設定する
					X31SDataBeanAccessArray svcKeiUcwkList =  svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0161B004CBMSG1LIST);

					// サービス契約内訳番号取得
					if (svcKeiUcwkList != null && svcKeiUcwkList.getCount() > 0)
					{
						StringBuffer svcKeiUcwkWork = new StringBuffer();

						// サービス契約内訳が存在する場合
						for (int j = 0; j < svcKeiUcwkList.getCount(); j++)
						{
							X31SDataBeanAccess svcKeiUcwkInfo = svcKeiUcwkList.getDataBean(j);

							if (j > 0)
							{
								svcKeiUcwkWork.append(",");
							}
							svcKeiUcwkWork.append(svcKeiUcwkInfo.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_10, X31CWebConst.DATABEAN_GET_VALUE));
						}
						infMap.put(KKW02301SFConst.SVC_KEI_UCWK_NO_03, svcKeiUcwkWork.toString());
					}
					else
					{
						// サービス契約内訳が存在しない場合
						infMap.put(KKW02301SFConst.SVC_KEI_UCWK_NO_03, "");
					}
				}
				else if (JKKCommonConst.SVC_CD_02.equals(svcCd))
				{
					// サービス「電話」の場合は、サービス契約番号を空にする
					infMap.put(KKW02301SFConst.SVC_KEI_NO_03, "");
				}
				else if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
				{
					// サービス「テレビ」の場合は、ＳＴＢの選択状態によって
					// サービス契約番号、サービス契約内訳番号を空にする
					String svcKeiUcwkNo = (String)infMap.get(KKW02301SFConst.SVC_KEI_UCWK_NO_03);
					if (svcKeiUcwkNo != null && ! "".equals(svcKeiUcwkNo))
					{
						// サービス契約内訳番号が設定されている場合、
						// サービス契約番号を空にする
						// ※該当ＳＴＢに紐づくオプションのみを取得するため
						infMap.put(KKW02301SFConst.SVC_KEI_NO_03, "");
					}
					else
					{
						// 念のため
						infMap.put(KKW02301SFConst.SVC_KEI_UCWK_NO_03, "");
					}
				}

				// 情報再セット
				dataList.set(i, infMap);
			}

			hktgiDataMap.put(KKW02301SFConst.CUST_KEI_HKTGI_LIST, dataList);
		}

		return hktgiDataMap;
	}

	// ▼▼▼▼▼ ボタン活性非活性 判定 ADD START ▼▼▼▼▼
	/**
	 * ボタン設定（電話サービス）
	 */
	private void setBtnVisibleAtTel(
			X31SDataBeanAccess[] paramBean,
			String ido_div,
			String op_svc_cd,
			boolean op_svc_kei_list_ari,
			boolean svc_kei_ucwk_dsl_flg
	)
	{
		String rireki_shokai_btn_v_kbn = "1";	// 履歴照会
		String shokai_btn_v_kbn        = "1";	// 照会
		String add_btn_v_kbn           = "1";	// 追加
		String chg_btn_v_kbn           = "1";	// 変更
		String dsl_btn_v_kbn           = "1";	// 解約
		String kaihk_btn_v_kbn         = "1";	// 回復
		String rsv_cl_btn_v_kbn        = "1";	// 予約取消
		String bk_btn_v_kbn            = "1";	// 戻る
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
		String op_pack_btn_v_kbn           = "1";	// OPパック
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲

		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 新規契約                                             //
		// サービス追加                                         //
		// ==================================================== //
		if(
				JKKCommonConst.IDO_DIV_VALUE_00001.equals(ido_div) 
				|| JKKCommonConst.IDO_DIV_VALUE_00002.equals(ido_div)
		)
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "0";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if (op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
				//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
				op_pack_btn_v_kbn        = "1";			// OPパック
				//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲

				// ■通話料上限通知の場合
				if (JKKCommonConst.OP_SVC_CD_VALUE_TWRYO_STIAM.equals(op_svc_cd))
				{
					chg_btn_v_kbn = "1";				// 変更
					dsl_btn_v_kbn = "0";				// 解約					※非活性
				}
				// オプションが上記以外の場合
				else
				{
					chg_btn_v_kbn = "0";				// 変更					※非活性
					dsl_btn_v_kbn = "1";				// 解約
					// IT1-2013-0001038 品質向上対応 ADD START
					kaihk_btn_v_kbn     = "1";			// 回復
					rsv_cl_btn_v_kbn    = "1";			// 予約取消
					// IT1-2013-0001038 品質向上対応 ADD END
				}
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
				op_pack_btn_v_kbn       = "1";			// OPパック
				//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション設定                                       //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00031.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// --------------------------------------------------------- //
			// 対象の電話番号が「解約済」「キャンセル済」の場合          //
			// --------------------------------------------------------- //
			if (svc_kei_ucwk_dsl_flg)
			{
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在する場合       //
				// ++++++++++++++++++++++++++++++ //
				if(op_svc_kei_list_ari)
				{
					rireki_shokai_btn_v_kbn = "1";		// 履歴照会
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在しない場合     //
				// ++++++++++++++++++++++++++++++ //
				else
				{
					rireki_shokai_btn_v_kbn = "0";		// 履歴照会				※非活性
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn           = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
			}
			// --------------------------------------------------------- //
			// 対象の電話番号が「解約済」「キャンセル済」以外の場合      //
			// --------------------------------------------------------- //
			else
			{
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在する場合       //
				// ++++++++++++++++++++++++++++++ //
				if(op_svc_kei_list_ari)
				{
					rireki_shokai_btn_v_kbn = "1";		// 履歴照会
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "1";		// 追加
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn           = "1";		// OPパック
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲

					// ■通話料上限通知の場合
					if(JKKCommonConst.OP_SVC_CD_VALUE_TWRYO_STIAM.equals(op_svc_cd))
					{
						chg_btn_v_kbn    = "1";			// 変更
						dsl_btn_v_kbn    = "0";			// 解約					※非活性
						kaihk_btn_v_kbn  = "0";			// 回復					※非活性
						rsv_cl_btn_v_kbn = "0";			// 予約取消				※非活性
					}
					// オプションが上記以外の場合
					else
					{
						chg_btn_v_kbn    = "0";			// 変更					※非活性
						dsl_btn_v_kbn    = "1";			// 解約
						kaihk_btn_v_kbn  = "1";			// 回復
						rsv_cl_btn_v_kbn = "1";			// 予約取消
					}
				}
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在しない場合     //
				// ++++++++++++++++++++++++++++++ //
				else
				{
					rireki_shokai_btn_v_kbn = "0";		// 履歴照会				※非活性
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "1";		// 追加
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "1";		// OPパック
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション予約取消                                   //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00055.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// --------------------------------------------------------- //
			// 対象の電話番号が「解約済」「キャンセル済」の場合          //
			// --------------------------------------------------------- //
			if (svc_kei_ucwk_dsl_flg)
			{
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在する場合       //
				// ++++++++++++++++++++++++++++++ //
				if(op_svc_kei_list_ari)
				{
					rireki_shokai_btn_v_kbn = "1";		// 履歴照会
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在しない場合     //
				// ++++++++++++++++++++++++++++++ //
				else
				{
					rireki_shokai_btn_v_kbn = "0";		// 履歴照会				※非活性
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
			}
			// --------------------------------------------------------- //
			// 対象の電話番号が「解約済」「キャンセル済」以外の場合      //
			// --------------------------------------------------------- //
			else
			{
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在する場合       //
				// ++++++++++++++++++++++++++++++ //
				if(op_svc_kei_list_ari)
				{
					rireki_shokai_btn_v_kbn = "1";		// 履歴照会
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲

					// ■通話料上限通知の場合
					if(JKKCommonConst.OP_SVC_CD_VALUE_TWRYO_STIAM.equals(op_svc_cd))
					{
						rsv_cl_btn_v_kbn = "0";			// 予約取消				※非活性
					}
					// オプションが上記以外の場合
					else
					{
						rsv_cl_btn_v_kbn = "1";			// 予約取消
					}
				}
				// ++++++++++++++++++++++++++++++ //
				// オプションが存在しない場合     //
				// ++++++++++++++++++++++++++++++ //
				else
				{
					rireki_shokai_btn_v_kbn = "0";		// 履歴照会				※非活性
					shokai_btn_v_kbn        = "0";		// 照会					※非活性
					add_btn_v_kbn           = "0";		// 追加					※非活性
					chg_btn_v_kbn           = "0";		// 変更					※非活性
					dsl_btn_v_kbn           = "0";		// 解約					※非活性
					kaihk_btn_v_kbn         = "0";		// 回復					※非活性
					rsv_cl_btn_v_kbn        = "0";		// 予約取消				※非活性
					//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
					op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
					//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
				}
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 設定なし                                             //
		// ==================================================== //
		else
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			// OM-2014-0001362 2014/04/11 start
// 20140624 ANK-2121-00-00 Mod Start
//			bk_btn_v_kbn = "0"; //閉じる
			bk_btn_v_kbn = "3";
// 20140624 ANK-2121-00-00 Mod End
			// OM-2014-0001362 2014/04/11 end

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
				//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
				op_pack_btn_v_kbn       = "0";		// OPパック				※非活性
				//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
				//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
				op_pack_btn_v_kbn       = "0";			// OPパック				※非活性
				//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
			}
		}

		paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN,            X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RSV_CL_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, rsv_cl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.KAIHK_BTN_V_KBN,         X31CWebConst.DATABEAN_SET_VALUE, kaihk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.DSL_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, dsl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.CHG_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, chg_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.ADD_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, add_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.SHOKAI_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, shokai_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RIREKI_SHOKAI_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, rireki_shokai_btn_v_kbn);
		//▼▼▼▼▼【ANK-2056-00-00】光電話セレクトパック ADD START▼▼▼▼▼
		paramBean[0].sendMessageString(KKW02301SFConst.OP_PACK_BTN_V_KBN,       X31CWebConst.DATABEAN_SET_VALUE, op_pack_btn_v_kbn);
		//▲▲▲▲▲【ANK-2056-00-00】光電話セレクトパック ADD E N D▲▲▲▲▲
	}

	/**
	 * ボタン設定（ネットサービス）
	 */
	private void setBtnVisibleAtNet(
			X31SDataBeanAccess[] paramBean,
			String ido_div,
			String op_svc_cd,
			//▼▼▼▼▼【ANK-1586-00-00】フェムトセル対応(docomo) ADD START▼▼▼▼▼
			String fmtcel_jgs_cd,
			//▲▲▲▲▲【ANK-1586-00-00】フェムトセル対応(docomo) ADD END ▲▲▲▲▲
			boolean op_svc_kei_list_ari
	)
	{
		String rireki_shokai_btn_v_kbn = "1";	// 履歴照会
		String shokai_btn_v_kbn        = "1";	// 照会
		String add_btn_v_kbn           = "1";	// 追加
		String chg_btn_v_kbn           = "1";	// 変更
		String dsl_btn_v_kbn           = "1";	// 解約
		String kaihk_btn_v_kbn         = "1";	// 回復
		String rsv_cl_btn_v_kbn        = "1";	// 予約取消
		String bk_btn_v_kbn            = "1";	// 戻る

		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 新規契約                                             //
		// サービス追加                                         //
		// ==================================================== //
		if(
				JKKCommonConst.IDO_DIV_VALUE_00001.equals(ido_div) 
				|| JKKCommonConst.IDO_DIV_VALUE_00002.equals(ido_div)
		)
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "0";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				add_btn_v_kbn           = "1";			// 追加
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性

				// ■IPv6の場合
				if(JKKCommonConst.OP_SVC_CD_VALUE_IPV6_AD.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ■スマートリンクプレミアムの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_SMT_LINK_PREMIUM.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ■フェムトセルの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					//↓↓↓【ANK-1586-00-00】フェムトセル対応(docomo) MOD START↓↓↓
					//dsl_btn_v_kbn    = "1";				// 解約
					//↑↑↑【ANK-1586-00-00】フェムトセル対応(docomo) MOD END↑↑↑
					//↓↓↓【ANK-1586-00-00】フェムトセル対応(docomo) ADD START↓↓↓
					//フェムトセル事業者コードが「ドコモ」の場合
					if(JKKCommonConst.FMTCEL_JGS_CD_DOCOMO.equals(fmtcel_jgs_cd))
						{dsl_btn_v_kbn    = "0";			// 解約				※非活性
					}
					else
					{
						dsl_btn_v_kbn    = "1";				// 解約
					}
					
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ■固定グローバルIPアドレスの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0040.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ■有害サイトブロックの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0040.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// 2013/04/23 ADD IT1-2013-0001038 START
				// ■メーリングリストの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_MLLIST.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					kaihk_btn_v_kbn  = "1";				// 回復
				}
				// ■リモートサポートプラスの場合
				else if (JKKCommonConst.OP_SVC_CD_RMTSPRT_PLUS.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					kaihk_btn_v_kbn  = "1";				// 回復
				}
				// ■SOHOパック10またはダイヤルパッドまたは代行申請
				// またはDNS等設定またはグループコミュニティの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_SOHOPACK10.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DPAD.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DAIKOSHINSEI.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DNS.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_GRPCOM.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// 2013/04/23 ADD IT1-2013-0001038 END
				// IT1-2013-0001038 品質向上対応 2013/04/26 ADD START
				// ■ＥメールまたはＭｙホームページの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_EMAIL.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_0020.equals(op_svc_cd))
				{
					kaihk_btn_v_kbn  = "1";			// 回復
				}
				// IT1-2013-0001038 品質向上対応 2013/04/26 ADD END
				// ANK-3149-00-00 2017/04/10 ADD START
				// ■マカフィーマルチアクセスまたはインターネットサギウォール、ノートンファミリープレミアの場合
				else if (op_svc_cd.equals(JKKStrConst.OP_SVC_CD_MCAFEE_MULTI_ACCSS) || 
						op_svc_cd.equals(JKKStrConst.OP_SVC_CD_INETSGWL) || 
						op_svc_cd.equals(JKKStrConst.OP_SVC_CD_NTFMLPRM) )
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ANK-3149-00-00 2017/04/10 ADD END
				// ANK-3484-00-00 2018/09/26 ADD START
				// ■ＰＣプランの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_PC_PLAN.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ■ＴＶプランの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_TV_PLAN.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ANK-3484-00-00 2018/09/26 ADD END
				// ANK-3987-00-00 ADD START
				// ■Netflixプレミアムの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_NETFLIXPREMIUM.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ANK-3987-00-00 ADD END
				// ANK-4427-00-00 ADD START
				// ■ｅｏ光電話（ｔｙｐｅ　Ｎ）の場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_EOHTL_TYPE_N.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ANK-4427-00-00 ADD END
				
				// オプションが上記以外の場合
				else
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション設定                                       //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00031.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				add_btn_v_kbn           = "1";			// 追加

				// ■IPv6の場合
				if(JKKCommonConst.OP_SVC_CD_VALUE_IPV6_AD.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "1";				// 回復
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ■スマートリンクプレミアムの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_SMT_LINK_PREMIUM.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ■フェムトセルの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					
					//↓↓↓【ANK-1586-00-00】フェムトセル対応(docomo) MOD START↓↓↓
					//dsl_btn_v_kbn    = "1";				// 解約
					//kaihk_btn_v_kbn  = "1";				// 回復
					//↑↑↑【ANK-1586-00-00】フェムトセル対応(docomo) MOD END↑↑↑
					//↓↓↓【ANK-1586-00-00】フェムトセル対応(docomo) ADD START↓↓↓
					//フェムトセル事業者コードが「ドコモ」の場合
					if(JKKCommonConst.FMTCEL_JGS_CD_DOCOMO.equals(fmtcel_jgs_cd))
					{
						dsl_btn_v_kbn    = "0";				// 解約					※非活性
						kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					}
					else
					{
						dsl_btn_v_kbn    = "1";				// 解約
						kaihk_btn_v_kbn  = "1";				// 回復
					}
					//↑↑↑【ANK-1586-00-00】フェムトセル対応(docomo) ADD END↑↑↑
					
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ■固定グローバルIPアドレスの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0040.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "1";				// 回復
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ■有害サイトブロックの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0120.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// 2013/04/23 ADD IT1-2013-0001038  START
				// ■メーリングリストの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_MLLIST.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
				}
				// ■リモートサポートプラスの場合
				else if (JKKCommonConst.OP_SVC_CD_RMTSPRT_PLUS.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
				}
				// ■SOHOパック10またはダイヤルパッドまたは代行申請
				// またはDNS等設定またはグループコミュニティの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_SOHOPACK10.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DPAD.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DAIKOSHINSEI.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_DNS.equals(op_svc_cd)
						|| JKKCommonConst.OP_SVC_CD_VALUE_GRPCOM.equals(op_svc_cd))
				{
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ANK-3149-00-00 2017/04/10 ADD START
				// ■マカフィーマルチアクセスまたはインターネットサギウォール、ノートンファミリープレミアの場合
				else if (op_svc_cd.equals(JKKStrConst.OP_SVC_CD_MCAFEE_MULTI_ACCSS) || 
						op_svc_cd.equals(JKKStrConst.OP_SVC_CD_INETSGWL) || 
						op_svc_cd.equals(JKKStrConst.OP_SVC_CD_NTFMLPRM) )
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ANK-3149-00-00 2017/04/10 ADD END
				// 2013/04/23 ADD IT1-2013-0001038  END
				// ANK-3484-00-00 2018/09/26 ADD START
				// ■ＰＣプランの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_PC_PLAN.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "1";				// 回復
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ■ＴＶプランの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_TV_PLAN.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "1";				// 回復
					rsv_cl_btn_v_kbn = "1";				// 予約取消	
				}
				// ANK-3484-00-00 2018/09/26 ADD END
				// ANK-3987-00-00 ADD START
				// ■Netflixプレミアムの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_NETFLIXPREMIUM.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "0";				// 照会					※非活性
					chg_btn_v_kbn    = "0";				// 変更					※非活性
					dsl_btn_v_kbn    = "0";				// 解約					※非活性
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ANK-3987-00-00 ADD END
				// ANK-4427-00-00 ADD START
				// ■ｅｏ光電話（ｔｙｐｅ　Ｎ）の場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_EOHTL_TYPE_N.equals(op_svc_cd))
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "0";				// 回復					※非活性
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
				// ANK-4427-00-00 ADD END
				
				// オプションが上記以外の場合
				else
				{
					shokai_btn_v_kbn = "1";				// 照会
					chg_btn_v_kbn    = "1";				// 変更
					dsl_btn_v_kbn    = "1";				// 解約
					kaihk_btn_v_kbn  = "1";				// 回復
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション予約取消                                   //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00055.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性

				// ■フェムトセルの場合
				if (JKKCommonConst.OP_SVC_CD_VALUE_FMTCEL.equals(op_svc_cd))
				{
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ■有害サイトブロックの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0120.equals(op_svc_cd))
				{
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ANK-3987-00-00 ADD START
				// ■Netflixプレミアムの場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_NETFLIXPREMIUM.equals(op_svc_cd))
				{
					rsv_cl_btn_v_kbn = "0";				// 予約取消				※非活性
				}
				// ANK-3987-00-00 ADD END
				
				// オプションが上記以外の場合
				else
				{
					rsv_cl_btn_v_kbn = "1";				// 予約取消
				}
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 設定なし                                             //
		// ==================================================== //
		else
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			// OM-2014-0001362 2014/04/11 start
// 20140624 ANK-2121-00-00 Mod Start
//			bk_btn_v_kbn = "0"; //閉じる
			bk_btn_v_kbn = "3";
// 20140624 ANK-2121-00-00 Mod End
			// OM-2014-0001362 2014/04/11 end

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "1";			// 照会
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性

				// OM-2021-0001538 DEL START
//				// ANK-3987-00-00 ADD START
//				// ■Netflixプレミアムの場合
//			if (JKKCommonConst.OP_SVC_CD_VALUE_NETFLIXPREMIUM.equals(op_svc_cd))
//				{
//					shokai_btn_v_kbn    = "0";			// 照会					※非活性
//				}
//				// ANK-3987-00-00 ADD END
				// OM-2021-0001538 DEL END
			}
				
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}

		paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN,            X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RSV_CL_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, rsv_cl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.KAIHK_BTN_V_KBN,         X31CWebConst.DATABEAN_SET_VALUE, kaihk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.DSL_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, dsl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.CHG_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, chg_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.ADD_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, add_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.SHOKAI_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, shokai_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RIREKI_SHOKAI_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, rireki_shokai_btn_v_kbn);
	}

	/**
	 * ボタン設定（テレビサービス）
	 */
	private void setBtnVisibleAtTv(
			X31SDataBeanAccess[] paramBean,
			String ido_div,
			String op_svc_cd,
			boolean op_svc_kei_list_ari
	)
	{
		String rireki_shokai_btn_v_kbn = "1";	// 履歴照会
		String shokai_btn_v_kbn        = "1";	// 照会
		String add_btn_v_kbn           = "1";	// 追加
		String chg_btn_v_kbn           = "1";	// 変更
		String dsl_btn_v_kbn           = "1";	// 解約
		String kaihk_btn_v_kbn         = "1";	// 回復
		String rsv_cl_btn_v_kbn        = "1";	// 予約取消
		String bk_btn_v_kbn            = "1";	// 戻る

		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 新規契約                                             //
		// サービス追加                                         //
		// ==================================================== //
		if(
				JKKCommonConst.IDO_DIV_VALUE_00001.equals(ido_div) 
				|| JKKCommonConst.IDO_DIV_VALUE_00002.equals(ido_div)
		)
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "0";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "1";			// 照会
				add_btn_v_kbn           = "1";			// 追加
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "1";			// 解約
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション設定                                       //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00031.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "1";			// 照会
				add_btn_v_kbn           = "1";			// 追加
				dsl_btn_v_kbn           = "1";			// 解約
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "1";			// 予約取消

				// ■ケーブルテレビガイド誌の場合
				if (JKKCommonConst.OP_SVC_CD_VALUE_0290.equals(op_svc_cd))
				{
					chg_btn_v_kbn           = "1";		// 変更
				}
				// ■NHK団体一括支払の場合
				else if (JKKCommonConst.OP_SVC_CD_VALUE_0310.equals(op_svc_cd))
				{
					chg_btn_v_kbn           = "1";		// 変更
				}
				// オプションが上記以外の場合
				else
				{
					chg_btn_v_kbn           = "0";		// 変更					※非活性
				}
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "1";			// 追加
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// オプション予約取消                                   //
		// ==================================================== //
		else if(JKKCommonConst.IDO_DIV_VALUE_00055.equals(ido_div))
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			bk_btn_v_kbn = "1";

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "1";			// 予約取消
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}
		// ==================================================== //
		// 異動区分                                             //
		// ==================================================== //
		// 設定なし                                             //
		// ==================================================== //
		else
		{
			// ++++++++++++++++++++++++++++++ //
			// 戻るボタン                     //
			// ++++++++++++++++++++++++++++++ //
			// OM-2014-0001362 2014/04/11 start
// 20140624 ANK-2121-00-00 Mod Start
//			bk_btn_v_kbn = "0"; //閉じる
			bk_btn_v_kbn = "3"; 
// 20140624 ANK-2121-00-00 Mod End
			// OM-2014-0001362 2014/04/11 end

			// ++++++++++++++++++++++++++++++ //
			// オプションが存在する場合       //
			// ++++++++++++++++++++++++++++++ //
			if(op_svc_kei_list_ari)
			{
				rireki_shokai_btn_v_kbn = "1";			// 履歴照会
				shokai_btn_v_kbn        = "1";			// 照会
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
			// ++++++++++++++++++++++++++++++ //
			// オプションが存在しない場合     //
			// ++++++++++++++++++++++++++++++ //
			else
			{
				rireki_shokai_btn_v_kbn = "0";			// 履歴照会				※非活性
				shokai_btn_v_kbn        = "0";			// 照会					※非活性
				add_btn_v_kbn           = "0";			// 追加					※非活性
				chg_btn_v_kbn           = "0";			// 変更					※非活性
				dsl_btn_v_kbn           = "0";			// 解約					※非活性
				kaihk_btn_v_kbn         = "0";			// 回復					※非活性
				rsv_cl_btn_v_kbn        = "0";			// 予約取消				※非活性
			}
		}

		paramBean[0].sendMessageString(KKW02301SFConst.BK_BTN_V_KBN,            X31CWebConst.DATABEAN_SET_VALUE, bk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RSV_CL_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, rsv_cl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.KAIHK_BTN_V_KBN,         X31CWebConst.DATABEAN_SET_VALUE, kaihk_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.DSL_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, dsl_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.CHG_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, chg_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.ADD_BTN_V_KBN,           X31CWebConst.DATABEAN_SET_VALUE, add_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.SHOKAI_BTN_V_KBN,        X31CWebConst.DATABEAN_SET_VALUE, shokai_btn_v_kbn);
		paramBean[0].sendMessageString(KKW02301SFConst.RIREKI_SHOKAI_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, rireki_shokai_btn_v_kbn);
	}
	// ▲▲▲▲▲ ボタン活性非活性 判定 ADD START ▲▲▲▲▲

// 20140624 ANK-2121-00-00 Add Start
	/**
	 * 「地図」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionItiKakunin() throws Exception
	{
		// 共有フォームBean設定
		JKKWebCommon.setSelfScreenID(this);
		
		X31SDataBeanAccess dataBean = getServiceFormBean();
		
		// パラメータマップを作成する。
		HashMap paramMap = new HashMap();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, CCSV0006);
		
		CCSV0006_CCSV0006OPDBMapper mapper = new CCSV0006_CCSV0006OPDBMapper();
		X31SDataBeanAccess[] paramBean = { dataBean };
		HashMap dataMap = new HashMap();
		mapper.setCCSV000601SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		
		// 検索結果格納用マップ
		HashMap outputMap = new HashMap();
		
		try
		{
			invokeService(paramMap, dataMap, outputMap);
		}
		catch (JCCWebServiceException e1)
		{
			// エラーの場合はシステムエラーを表示する
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0400_CE, new String[]{""}, "");
			return false;
		}

		HashMap parentMap = null;
		if(outputMap.containsKey("CCSV000601SC")){
			parentMap = (HashMap)outputMap.get("CCSV000601SC");
		}
		// プロパティファイルより総合営業C向けエリアチェック画面のURLを取得
		String mapGmnURL = JCMAPLConstMgr.getString(JKKCommonConst.PROP_MAP_GMN_URL);

		// ワンタイムパスワード 
		String encryptPw = (String)parentMap.get("one_time_pwd");
		
		// 地図用情報取得
		if (getMapInfo(dataBean)) {
			
			String cnsmrLng = dataBean.sendMessageString(KKW02301SFConst.LGTD, X31CWebConst.DATABEAN_GET_VALUE);
			String cnsmrLat = dataBean.sendMessageString(KKW02301SFConst.LTTD, X31CWebConst.DATABEAN_GET_VALUE);
			
			String formatUrl = String.format(mapGmnURL, encryptPw, cnsmrLng, cnsmrLat);
			dataBean.sendMessageString(KKW02301SFConst.MAP_GMN_URL, X31CWebConst.DATABEAN_SET_VALUE, formatUrl);
			dataBean.sendMessageString(KKW02301SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "1");
			
		} else {
			return false;
		}

		return true;
	}

	/**
	 * 「利用不可期間履歴」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionRiyofukaRireki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW17801, hktgiData);

		// 戻り先画面IDを設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW17801, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW17801);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW17801);

		return true;
	}

	/**
	 * 「異動区分選択」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionIdodivChoice() throws Exception
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 異動区分選択画面遷移パターン
		String idoDivSeniPtn = svcFormBean.sendMessageString(KKW02301SFConst.IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);

		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 戻り時の情報を保持
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, hktgiData);

		// 自画面遷移パターンの場合
		if (JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI.equals(idoDivSeniPtn))
		{
			JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00145, hktgiData);

			// 戻り先画面IDを設定
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00145, JKKScreenConst.SCREEN_ID_KKW02301);

			// 共有フォームBean設定
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_ID_KKW00145);
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_NAME_KKW00145);
		}
		// 親画面遷移パターンの場合
		else
		{
			// ポップアップモード
			String popupMode = svcFormBean.sendMessageString(KKW02301SFConst.POPUP_MODE, X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.HKTGI_POPUP_MODE_MODAL.equals(popupMode))
			{
				// モーダル用反映画面へ画面遷移
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_ID_CCW00105);
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_NAME_CCW00105);
			}
			else
			{
				// モーダレス用反映画面へ画面遷移
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_ID_CCW00104);
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_NAME_CCW00104);
			}
		}
		
		// 一時的な親画面遷移パターンの場合
		if (IDO_DIV_SENI_PTN_TMP_OYA_SENI.equals(idoDivSeniPtn))
		{
			// 自画面遷移パターンに戻す
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)hktgiData.get(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
			dataList.get(0).put(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI);
		}

		return true;
	}

	/**
	 * 「他システム」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTasys() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 顧客契約引継リストを取得
		HashMap<String, Object> dataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 画面情報を設定（他システム選択画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00146, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00146, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00146);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00146);

		return true;
	}

	/**
	 * 「料金」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionPrche() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// サービス契約共通情報一覧照会明細
		X31SDataBeanAccessArray svcKeiCommonInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		X31SDataBeanAccess subbean = svcKeiCommonInfoList.getDataBean(0);
		String seikyKeiNo = subbean.sendMessageString(KKW02301SFConst.SEIKY_KEI_NO_05, X31CWebConst.DATABEAN_GET_VALUE);

		// 顧客契約引継リストを取得
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		// 請求契約番号
		hktgiData.put(JCHCommonConst.SCREEN_HKTGI_SEIKY_KEI_NO, seikyKeiNo);

		// 画面情報を設定（債権照会画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_CHW00101, hktgiData);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_CHW00101, JKKScreenConst.SCREEN_ID_KKW02301);

		// 遷移先から戻る際に必要な情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, hktgiData);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_CHW00101);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_CHW00101);

		return true;
	}

	// ANK-3346-01-00 ADD START
	/**
	 * 解約レター検索ボタン押下時に解約レター検索画面に遷移を行います。
	 * <br>
	 * @return true/false
	 * @exception Exception
	 */
	public boolean actionDslLetterSch() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		hktgiDataMap.put(KKW21811SFConst.SEARCH_FLG, JKKStrConst.CD00001_0);

		// 画面情報を設定（解約レター検索画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW21811, hktgiDataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW21811, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有BeanのSCREEN_ID、SCREEN_NMに遷移先の画面IDをセット
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW21811);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW21811);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
	// ANK-3346-01-00 ADD END

	/**
	 * 「対応履歴」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTaiorrki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		dataMap.put("ＳＹＳＩＤ", svcFormBean.sendMessageString(KKW02301SFConst.SYSID, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("サービス契約番号", svcFormBean.sendMessageString(KKW02301SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
				
//		// セッション情報引渡処理
//		HashMap<String, Object> dataMap = setSessionKKW02301SFBean(svcFormBean);

		// 画面情報を設定（総合案内問合せ対応画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_CRW01201, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_CRW01201, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_CRW01201);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_CRW01201);

		return true;
	}

	/**
	 * ワンタイムパスワード登録サービスに必要な項目を取得し、サービスフォームBeanに設定する
	 * 
	 * @param svcFormBean	DataBeanアクセスクラス
	 */
	private void setMapGmnData(X31SDataBeanAccess svcFormBean){

		// ユーザーIDの取得
		X31SDataBeanAccess commonBean = getCommonInfoBean();
		String userId = commonBean.sendMessageString(CommonInfoCFConst.USER_ID, X31CWebConst.DATABEAN_GET_VALUE);
		String orgCd = "";
		String positionCd = "";

		X31SDataBeanAccessArray kggrpCdList = commonBean.getDataBeanArray(CommonInfoCFConst.KGGRP_CD_LIST);
		X31SDataBeanAccess subbean = kggrpCdList.getDataBean(0);
		if (subbean != null)
		{
			// 組織コードの取得
			orgCd = subbean.sendMessageString(CommonInfoCFConst.ORG_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
			// 立場コードの取得
			positionCd = subbean.sendMessageString(CommonInfoCFConst.POSITION_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
		}
		svcFormBean.sendMessageString(KKW02301SFConst.ONE_TIME_USER_ID, X31CWebConst.DATABEAN_SET_VALUE, userId);
		svcFormBean.sendMessageString(KKW02301SFConst.ONE_TIME_ORG_CD, X31CWebConst.DATABEAN_SET_VALUE, orgCd);
		svcFormBean.sendMessageString(KKW02301SFConst.ONE_TIME_POSITION_CD, X31CWebConst.DATABEAN_SET_VALUE, positionCd);

		// プロパティファイルより共通(地図)システムのシステムIDを取得
		String mapSysId = JCMAPLConstMgr.getString(PROP_SIMS_MAP_SYS_ID);
		svcFormBean.sendMessageString(KKW02301SFConst.ONE_TIME_SYS_ID, X31CWebConst.DATABEAN_SET_VALUE, mapSysId);

		// 地図を開くフラグの初期設定
		svcFormBean.sendMessageString(KKW02301SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
	}

	/**
	 * 地図用情報を取得し、サービスフォームBeanに設定する
	 * 
	 * @param dataBean	DataBeanアクセスクラス
	 */
	private boolean getMapInfo(X31SDataBeanAccess dataBean){

		// パラメータマップを作成する。
		HashMap paramMap = new HashMap();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0793");
		
		X31SDataBeanAccessArray custKeiHktgiList = dataBean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		
		// 顧客契約引継情報に「サービス契約番号」の値がセットされていること
		KKSV0793_KKSV0793OPDBMapper mapper0793 = new KKSV0793_KKSV0793OPDBMapper();
		X31SDataBeanAccess[] paramBean = { custKeiHktgiInf };
		HashMap dataMap = new HashMap();
		mapper0793.setKKSV079301SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		
		// 検索結果格納用マップ
		HashMap outputMap = new HashMap();
		
		try
		{
			invokeService(paramMap, dataMap, outputMap);
		}
		catch (JCCWebServiceException e1)
		{
			// エラーの場合はシステムエラーを表示する
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0400_CE, new String[]{""}, "");
			return false;
		}
		
		// Bean に経度、緯度をセット
		mapper0793.getKKSV079301SC(new X31SDataBeanAccess[]{dataBean}, outputMap);

		return true;
	}
	
	/**
	 * 地図ボタン、利用不可期間履歴ボタンの表示区分をセット
	 * @param svcFormBean
	 */
	private void setFooterBtnDispFlg(X31SDataBeanAccess svcFormBean)
	{
		String mapBtnDispFlg = "0";		// 非表示
		String riyoFukaBtnDispFlg = "0";	// 非表示
		// 料金グループコードを保存されているBeanの情報から取得
		X31SDataBeanAccessArray svcList =  svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		X31SDataBeanAccess svcElement = svcList.getDataBean(0);
		String prcGrpCd = svcElement.sendMessageString(KKW02301SFConst.PRC_GRP_CD, X31CWebConst.DATABEAN_GET_VALUE);
		
		HashMap paramMapKKSV0793 = new HashMap();
		HashMap inputMapKKSV0793 = new HashMap();
		// 検索結果格納用マップ
		HashMap outputMapKKSV0793 = new HashMap();
		paramMapKKSV0793.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0793");
		paramMapKKSV0793.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, "KKSV0793OP");
		KKSV0793_KKSV0793OPDBMapper mapper0793 = new KKSV0793_KKSV0793OPDBMapper();
		// 顧客契約引継情報に「サービス契約番号」の値がセットされていること
		X31SDataBeanAccessArray custKeiHktgiList = svcFormBean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		String svcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
		if (svcKeiNo == null || "".equals(svcKeiNo))
		{
			// サービス契約番号がセットされていない場合は、以降の処理を行わない
			return;
		}
		X31SDataBeanAccess[] paramBeanKKSV0793 = { custKeiHktgiInf };
		mapper0793.setKKSV079302SC(paramBeanKKSV0793, inputMapKKSV0793, JCCWebCommon.getOpeDate(this, null));
		// サービス実行
		invokeService(paramMapKKSV0793, inputMapKKSV0793, outputMapKKSV0793);
		// 結果を保存
		HashMap parentMapKKSV0793 = null;
		if(outputMapKKSV0793.containsKey("KKSV079302SC")){
			parentMapKKSV0793 = (HashMap)outputMapKKSV0793.get("KKSV079302SC");
			// サービスの結果からマンション物件コードを取得
			String mansionBukkenCd = (String)parentMapKKSV0793.get("mansion_bukken_cd");

			// 地図ボタンの表示／非表示判定
			if (JKKWebCommon.isMapViewAvailable(prcGrpCd, mansionBukkenCd))
			{
				mapBtnDispFlg = "1";		// 表示
			}
			
			// 利用不可期間履歴ボタンの表示／非表示判定
			if (JKKWebCommon.isRiyofukaRirekiAvailable(prcGrpCd))
			{
				riyoFukaBtnDispFlg = "1";		// 表示
			}
		}
		
		// 地図ボタン表示区分
		svcFormBean.sendMessageString(KKW02301SFConst.MAP_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, mapBtnDispFlg);
		// 利用不可期間履歴ボタン表示区分
		svcFormBean.sendMessageString(KKW02301SFConst.RIYOFUKARRK_BTN_V_KBN, X31CWebConst.DATABEAN_SET_VALUE, riyoFukaBtnDispFlg);
	}
// 20140624 ANK-2121-00-00 Add End
	// 2016/06/10 ANK-2687-00-00 ADD START
	/**
	 * 「会員ランク」リンク押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTransferTrank() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 画面情報を設定（TRANKシステム起動画面）
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean,
				KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 画面情報を設定(TRANKシステム起動画面)
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00196, hktgiDataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00196, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00196);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00196);

		return true;
	}
	// 2016/06/10 ANK-2687-00-00 ADD END

	// ★★★★★ ANK-3796-00-00 2020/01/24 ADD START ★★★★★
	/**
	 * 「リース契約画面へ遷移」リンク押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTransferVcms() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 画面情報を設定（VCMSシステム起動画面）
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean,
				KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 画面情報を設定(VCMSシステム起動画面)
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00198, hktgiDataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00198, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00198);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00198);

		return true;
	}
// ★★★★★ ANK-3796-00-00 2020/01/24 ADD END   ★★★★★
	
	//ANK-4592-00-00 ADD START
	/**
	 * 「CASカード」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionCasCard() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		// サービス契約共通情報一覧照会明細
		X31SDataBeanAccessArray svcKeiCommonInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		X31SDataBeanAccess subbean = svcKeiCommonInfoList.getDataBean(0);
		// 契約者名：サービス契約共通情報一覧照会明細.お客様名
		String custNm = subbean.sendMessageString(KKW02301SFConst.CUST_NM_05, X31CWebConst.DATABEAN_GET_VALUE);
		// 契約サービス：サービス契約共通情報一覧照会明細.料金グルーブ名
		String prcGrpNm = subbean.sendMessageString(KKW02301SFConst.PRC_GRP_NM_05, X31CWebConst.DATABEAN_GET_VALUE);

		// 顧客契約引継リスト
		X31SDataBeanAccessArray custKeiTktgiList = paramBean[0].getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess subbean2 = custKeiTktgiList.getDataBean(0);
		// 異動区分：顧客契約引継リスト.異動区分
		String idoDiv = subbean2.sendMessageString(KKW02301SFConst.IDO_DIV_03, X31CWebConst.DATABEAN_GET_VALUE);
		// 異動理由コード：顧客契約引継リスト.異動理由コード
		int maxIndex = (Integer)subbean2.sendMessage(JKKCommonConst.HKTGI_IDO_RSN_CD, X31CWebConst.DATABEAN_GET_COUNT);
		String strIdoRsnCd = "";
		if(maxIndex > 0)
		{
			// 異動理由コード（0番目項目のみ取得）
			strIdoRsnCd = subbean2.sendMessageString(KKW02301SFConst.IDO_RSN_CD_03, X31CWebConst.DATABEAN_GET_VALUE, 0);
		}
		// お客さまID：顧客契約引継リスト.サービス契約番号
		String svcKeiNo = subbean2.sendMessageString(KKW02301SFConst.SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
		
		// セッション情報引渡処理
		HashMap<String, Object> dataMap = getHktgiDataMap(svcFormBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		dataMap.put("お客さまID", svcKeiNo);
		dataMap.put("契約者名", custNm);
		dataMap.put("契約サービス", prcGrpNm);
		dataMap.put("異動区分", idoDiv);
		dataMap.put("異動理由コード", strIdoRsnCd);

		//モーダル用反映画面へ画面遷移
		svcFormBean.sendMessageString(KKW02301SFConst.POPUP_MODE, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.HKTGI_POPUP_MODE_MODELESS);

		// 画面情報を設定（B-CASカード/ACAS番号登録画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW22801, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW22801, JKKScreenConst.SCREEN_ID_KKW02301);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW22801);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW22801);

		return true;
	}
	
	/**
	 * 「CASカード」戻り処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionCloseCasCard() throws Exception
	{
		actionSearch();
		return true;
	}
	//ANK-4592-00-00 ADD END
}
