/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：契約管理システム
*   モジュール名    ：マルチセッション更新
*   ソースファイル名：KKA14401SFLogic.java
*   作成者          ：FJ
*   日付            ：2011年10月24日
*＜機能概要＞
*   マルチセッション更新部品です。
*＜修正履歴＞
*	バージョン	修正日			修正者		修正内容
*	v1.00   	2011/10/24		FJ）小笹	新規作成
*	v3.00   	2012/03/14		FJ) 高田	利用終了日初期化対応
*	v3.01   	2012/04/20		FJ) 林田	割引変更メッセージ表示対応
*	v3.02   	2012/04/30		FJ) 森本	異動理由メモ対応
*	v3.03   	2012/07/13		FJ) 藤原	【IT2-2012-0001263】サービス提供中の場合変更をできるように修正
*	v4.00   	2012/10/22		FJ) 砂川	【IT1-2012-0001599】解約モードで利用終了日に運用日を初期値として設定する対応
*   v4.01		2012/11/05      FJ) 清崎    【ANK-1223-00-00】進捗補足事項編集対応
*   v4.02       2012/11/22      FJ) 清崎    【TAI-2012-0000091】暫定ロジック修正対応
*   v4.03       2013/01/05      FJ) 鷲塚    【IT1-2013-0000140】画面とS-IFのサーバチェック不整合対応
*   v4.04       2013/01/24      FJ) 清崎    【IT1-2013-0000167】キャンセルSOD発行対応
*   v5.00       2013/05/30      FJ) 近藤    【TG1-2013-0000421】変更可能なオプションサービス契約ステータスの対応
*   v18.00.00   2015/09/01      FJ) 森杉     ANK-2694-00-00 ワンストップ案件（ＳＴＥＰ２）※koptWebBからkoptWebAへコピー
*   v26.00.00	2016/06/10      FJ)笠川     【ANK-2687-00-00】 プレミアムサポート施策
*   v26.00.01	2016/07/28      FJ)柳		【IT1-2016-0000100】異動区分選択切替マッピング漏れ対応
*   v28.00.00	2016/12/07		FJ) 三原	【eoプレミアムクラブ】　eo画面へのチケット残枚数追加表示
*   v29.00.00   2017/03/13      FJ) 江藤    【OM-2016-0002076】マルチセッション用認証IDの設定誤りの対応
*   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.0    2018/09/26      FJ)前田		【ANK-3484-00-00】端末補償サービス導入対
*	v48.01.00	2020/01/24      FJ)中野		【ANK-3796-00-00】テレビリースサービス導入対応
*   v49.00.00	2020/06/10      FJ)荒木		【ANK-3840-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/19		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.KKA14401SF;

import java.util.ArrayList;
import java.util.HashMap;

import com.fujitsu.futurity.common.JSYwebLog;
import com.fujitsu.futurity.model.common.check.DatetimeCheck;
import com.fujitsu.futurity.model.common.check.HalfCharCheck;
import com.fujitsu.futurity.model.common.check.LengthCheck;
import com.fujitsu.futurity.model.common.check.MixCharCheck;
import com.fujitsu.futurity.web.x00.JCCWebServiceException;
import com.fujitsu.futurity.web.x31.X31CMessageResult;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;

import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.commonOneStop.JCCWebCommon;
import eo.web.webview.commonOneStop.JKKCommonConst;
import eo.web.webview.commonOneStop.JKKScreenConst;
import eo.web.webview.commonOneStop.JKKSetSessionMessage;
import eo.web.webview.mapping.KKSV0071_KKSV0071OPDBMapper;
import eo.web.webview.mapping.KKSV0072_KKSV0072OPDBMapper;
import eo.web.webview.mapping.KKSV0073_KKSV0073OPDBMapper;
import eo.web.webview.mapping.KKSV0074_KKSV0074OPDBMapper;
import eo.web.webview.mapping.KKSV0075_KKSV0075OPDBMapper;

// ANK-2694-00-00 ADD START 【ワンストップ用】
import static eo.web.webview.commonOneStop.JKKKeiNewCmnLogicUtil.PROP_SIMS_MAP_SYS_ID;

import java.text.SimpleDateFormat;
import java.util.List;
import java.util.Map;
import java.util.Calendar;

import com.fujitsu.futurity.model.common.JCMAPLConstMgr;
import com.fujitsu.futurity.web.x31.X31SRuntimeException;

import eo.web.webview.commonOneStop.KKW02301SFConst;
import eo.web.webview.commonOneStop.JCRScreenConst;
import eo.web.webview.commonOneStop.JACCommonConst;
import eo.web.webview.common.JKKOneStopApiCommonUtil;
import eo.web.webview.common.OneStopDataBeanAccess;
import eo.web.webview.common.OneStopDataBeanAccessArray;
import eo.web.webview.commonOneStop.JKKWebCommon;
import eo.web.webview.commonOneStop.JCCMessageCache;

import eo.common.constant.JKKStrConst;
import eo.common.util.JPCUtilCommon;

import eo.web.webview.mapping.KKSV0042_KKSV0042OPDBMapper;
import eo.web.webview.mapping.KKSV0043_KKSV0043OPDBMapper;
import eo.web.webview.mapping.KKSV0061_KKSV0061OPDBMapper;
import eo.web.webview.mapping.KKSV0062_KKSV0062OPDBMapper;
import eo.web.webview.mapping.KKSV0463_KKSV0463OPDBMapper;
import eo.web.webview.mapping.KKSV0551_KKSV0551OPDBMapper;
import eo.web.webview.mapping.KKSV0793_KKSV0793OPDBMapper;
import eo.web.webview.mapping.KKSV0820_KKSV0820OPDBMapper;

// ANK-2694-00-00 ADD END   【ワンストップ用】
/**
 * マルチセッションの変更・解約・回復・予約取消を行います。<p>
 * オプションサービス契約一覧照会画面より遷移します。<p>
 * <BR>
 * @author 909721
 *
 */
@SuppressWarnings("serial")
public class KKA14401SFLogic extends JCCWebBusinessLogic
{
	/* プログラムで使用する固定コード値 */
	
	/**
	 * メッセージエリア
	 */
	private static final  String[] INFO_MSGSTRING = {
		"マルチセッション情報の変更",
		"マルチセッション情報の解約",
		"マルチセッション情報の回復",
		"マルチセッション情報の予約取消"
	};
	
	// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD START
	private static final String MLTSE_INFO = "マルチセッション情報";
	private static final String CHGE = "変更";
	private static final String DSL = "解約";
	private static final String KAIHK = "回復";
	private static final String RSV_CLK = "予約取消";
	// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD END
	
// ANK-2694-00-00 ADD START 【ワンストップ用】
	/** ワンストップ返却用ワーニングメッセージ格納Map */
	private static Map<String, String[]> warMsgMap = null;
	
	/** ワンストップ返却用単関連エラーメッセージ格納Map */
	private static Map<String, String[]> tkckErrMsgMap = null;
	
	/** ワンストップ返却用エラーメッセージ格納Map */
	private static Map<String, String[]> errMsgMap = null;
	
	/** ワンストップ返却用SIFエラー格納Map */
	private static Map<String, String[]> sifErrMap = null;
	
	/** ワンストップ用受信パラメタ格納Map */
	private Map<String, Object> requestMap = null;
	
	/** 機能コード */
	private String funcCode = null;
	
	/** インターフェイスID */
	private static final String IF_ID = "KKIFE269";
	
	/** ワンストップ用ワーニング保持リスト */
	private List<Map<String, String>> warnList = null;
	
	/** コード区分リスト格納用Map */
	private Map<String, List<Map<String, String>>> cdDivListMap = null;
	
	/** ワンストップ処理時異動区分(00031:オプション設定) */
	private static final String OS_IDO_DIV = JKKCommonConst.IDO_DIV_VALUE_00031;

	/** オプション契約サービス一覧照会画面用のform */
	private OneStopDataBeanAccess formBean = null;
	
	/** 選択されたオプション契約サービス一覧 */
	private OneStopDataBeanAccess selectBean = null;
	/**
	 *  顧客契約引継情報項目キー
	 */	
	private static final String[] CUST_KEI_HKTGI_KEYS = {
		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
	
	/** 投入可能なオプションサービス契約状態 */
	private static final String[] OP_SVC_KEI_STAT_DSL = {JKKCommonConst.SVC_KEI_STAT_030, JKKCommonConst.SVC_KEI_STAT_100, JKKCommonConst.SVC_KEI_STAT_210};
	
// ANK-2694-00-00 ADD END   【ワンストップ用】
	
	// IT1-2016-0000100 2016/07/28 ADD START
	// サービス提供履歴フラグ
	private String svcTkRrkFlg = "0";
	// IT1-2016-0000100 2016/07/28 ADD END
	
// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ用APIコントロールメソッドです。
	 * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean apiControl() throws Exception
	{
		try
		{
			try
			{
				// API用初期処理
				if (!this.apiInit())
				{
					// 業務規制中の為処理終了
					return true;
				}
				
				// ワンストップ独自単項目チェック
				if (!this.singleChkForOneStop())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// ワンストップ独自共通関連チェック
				if (!this.commonKnrnChkForOneStop())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// オプションサービス契約一覧照会 初期処理用DataBean上書き処理
				this.overwriteDataBeanForInit0();
				
				/////////////////////////////////////////////
				// オプションサービス契約一覧照会 初期表示処理
				/////////////////////////////////////////////
				if (!this.actionInit0())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// メッセージチェック
				if (!JKKOneStopApiCommonUtil.msgChk(this, warMsgMap, tkckErrMsgMap, errMsgMap, warnList, funcCode, IF_ID))
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// ワンストップ独自単関連チェック
				if (!this.singleKnrnChkForOneStop())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// ワンストップ先行独自関連チェック
				if (!this.senkoKnrnChkForOneStop())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// マルチセッション情報解約更新 初期処理用DataBean上書き処理
				this.overwriteDataBeanForInit();
				
				/////////////////////////////////////////////
				// マルチセッション情報更新 初期表示処理
				/////////////////////////////////////////////
				this.actionInit();
				
				// メッセージチェック
				if (!JKKOneStopApiCommonUtil.msgChk(this, warMsgMap, tkckErrMsgMap, errMsgMap, warnList, funcCode, IF_ID))
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// ワンストップ独自関連チェック
				if (!this.knrnChkForOneStop())
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// マルチセッション情報解約更新 更新ボタン押下処理用DataBean上書き処理
				this.overwriteDataBeanForUpdCfm();
				
				/////////////////////////////////////////////
				// マルチセッション情報更新 更新確認ボタン押下処理
				/////////////////////////////////////////////
				this.actionUpdCfm();
				
				// メッセージチェック
				if (!JKKOneStopApiCommonUtil.msgChk(this, warMsgMap, tkckErrMsgMap, errMsgMap, warnList, funcCode, IF_ID))
				{
					// エラー発生の為処理終了
					return true;
				}
				
				// 機能コード"1"の場合のみ、確定ボタン押下処理
				if (JKKCommonConst.FUNC_CODE_1.equals(funcCode))
				{
					/////////////////////////////////////////
					// マルチセッション情報更新確認 確定ボタン押下処理
					/////////////////////////////////////////
					this.actionFix();
					
					// メッセージチェック
					if (!JKKOneStopApiCommonUtil.msgChk(this, warMsgMap, tkckErrMsgMap, errMsgMap, warnList, funcCode, IF_ID))
					{
						// エラー発生の為処理終了
						return true;
					}
				}
				
				// API用終了処理(リターンコード00(正常終了))
				this.apiTerminal("00");
			}
			catch (JCCWebServiceException wse)
			{
				// サービスIFエラー処理
				JKKOneStopApiCommonUtil.msgChk(this, warMsgMap, tkckErrMsgMap, errMsgMap, warnList, funcCode, IF_ID);
				X31CMessageResult msgResult = wse.getMessageList();
				JKKOneStopApiCommonUtil.sifErrChk(this, msgResult, sifErrMap, warnList, IF_ID);
			}
		}
		catch (Exception e)
		{
			// 例外発生時はリターンコード99(システムエラー)
			JKKOneStopApiCommonUtil.printErrorLog(getSessionId(), "KKIFE269_マルチセッション情報解約(ワンストップ)にて例外が発生しました。", e);
			this.apiTerminal("99");
		}
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ用API初期処理メソッドです。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	private boolean apiInit() throws Exception
	{
		// 受信データXML⇒Map変換
		requestMap = (Map<String, Object>)JKKOneStopApiCommonUtil.getReceiveXml(getSessionId()).get(IF_ID + "_RECEIVE");
		
		// 機能コード取得(業務規制チェック用に単項目チェック前に取得)
		funcCode = (String) requestMap.get("func_code");
		
		// 機能コードが"2"以外の場合、業務規制チェック
		if (!JKKCommonConst.FUNC_CODE_2.equals(funcCode)
				&& !JKKOneStopApiCommonUtil.checkRegulationForUpdateApi(this))
		{
			// エラーメッセージを設定
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5001", warnList, funcCode, IF_ID);
			return false;
		}
		
		// エラー・ワーニングメッセージマップ作成
		this.createMsgMap();
		
		// ワーニングリスト生成
		warnList = new ArrayList<Map<String, String>>();
		
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * メッセージマップ作成処理です。
	 * 画面独自処理にて発生しうるエラーメッセージをMapに格納する。
     * <BR>
	 * @throws Exception 
	 */
	private void createMsgMap() throws Exception
	{
		// メッセージ読み込み
		JCCMessageCache.setMessageCache();
		
		// ワーニングメッセージ格納Map組み立て
		warMsgMap = new HashMap<String, String[]>();
		
		// 単関連エラーメッセージ格納Map組み立て（※なし）
		tkckErrMsgMap = new HashMap<String, String[]>();
		
		// エラーメッセージ格納Map組み立て
		errMsgMap = new HashMap<String, String[]>();
		errMsgMap.put(JCCMessageCache.getMessage(JPCOnlineMessageConstant.EKB0690_NW, new String[]{"利用終了日", "過去"}), new String[]{"E5006", ""});
		
		// サービスIFエラー格納Map組み立て（※なし）
		// KEY=『サービスインターフェイスID,ステータス,エラー返却項目,エラーフラグ』
		sifErrMap = new HashMap<String, String[]>();
		sifErrMap.put("EKK0351C240,1100,svc_endymd,EA",  new String[]{"E5004", ""});
		sifErrMap.put("EKK0351C240,1100,svc_endymd,EB",  new String[]{"E5005", ""});
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ用単項目チェックメソッドです。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	private boolean singleChkForOneStop() throws Exception
	{
		// エラーリスト
		List<Map<String, String>> errList = new ArrayList<Map<String, String>>();
		String itemName = null;
		String itemValue = null;
		
		// 機能コード
		itemName = "func_code";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength1Check(itemValue, 1))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
			if (!JKKCommonConst.FUNC_CODE_1.equals(itemValue)
					&& !JKKCommonConst.FUNC_CODE_2.equals(itemValue))
			{
				// リファレンスチェックエラー
				errList.add(JKKOneStopApiCommonUtil.getRefErrInfMap(itemName));
			}
		}
		
		// SYSID
		itemName = "sysid";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isEnNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength1Check(itemValue, 10))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// サービス契約番号
		itemName = "svc_kei_no";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isEnNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength1Check(itemValue, 10))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// 異動理由大分類コード
		itemName = "ido_rsn_dbri_cd";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isEnNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength1Check(itemValue, 2))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// 異動理由中分類コード
		itemName = "ido_rsn_cbri_cd";
		if (requestMap.containsKey(itemName))
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isEnNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength1Check(itemValue, 2))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// 異動理由メモ
		itemName = "ido_rsn_memo";
		if (requestMap.containsKey(itemName))
		{
			itemValue = (String)requestMap.get(itemName);
			if (!MixCharCheck.isMix1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength2Check(itemValue, 1, 100))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// ユーザID
		itemName = "user_id";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			itemValue = (String)requestMap.get(itemName);
			if (!HalfCharCheck.isEnNumber1Check(itemValue))
			{
				// 形式チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
			}
			if (!LengthCheck.isLength2Check(itemValue, 6, 10))
			{
				// 桁数チェックエラー
				errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
			}
		}
		
		// サービス終了年月日
		itemName = "svc_endymd";
		if (!JKKOneStopApiCommonUtil.checkRequireNotNull(requestMap, itemName))
		{
			// 必須チェックエラー
			errList.add(JKKOneStopApiCommonUtil.getReqErrInfMap(itemName));
		}
		else
		{
			if (requestMap.containsKey(itemName))
			{
				itemValue = (String)requestMap.get(itemName);
				if (!DatetimeCheck.isDateCheck(itemValue)
						|| !JPCUtilCommon.checkDate(itemValue, 8))
				{
					// 形式チェックエラー
					errList.add(JKKOneStopApiCommonUtil.getFormErrInfMap(itemName));
				}
				if (!LengthCheck.isLength1Check(itemValue, 8))
				{
					// 桁数チェックエラー
					errList.add(JKKOneStopApiCommonUtil.getLenErrInfMap(itemName));
				}
			}
		}
		
		// エラーが存在する場合
		if (errList.size() > 0)
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "10", errList, warnList, funcCode, IF_ID);
			return false;
		}
		
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ用共通関連チェックメソッドです。
	 * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	private boolean commonKnrnChkForOneStop() throws Exception
	{
		// dataBean取得
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};
		
		// チェック対象パラメタの退避
		String sysid = (String)requestMap.get("sysid");
		String svcKeiNo = (String)requestMap.get("svc_kei_no");
		String userId = (String)requestMap.get("user_id");
		String idoDiv = OS_IDO_DIV;
		String idoRsnDbriCd = (String)requestMap.get("ido_rsn_dbri_cd");
		String idoRsnCbriCd = (String)requestMap.get("ido_rsn_cbri_cd");
		
		// 取得対象コード種別（※なし）
		List<String> cdSbtList = new ArrayList<String>();
		
		// 運用日付
		String opeDate = JCCWebCommon.getOpeDate(this, null);
		
		// SYSID・サービス契約番号・ユーザIDの存在チェック＋コード種別の取得
		// ■KKSV0820
		HashMap<String, Object> kksv0820ParamMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0820InputMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0820OutputMap = new HashMap<String, Object>();
		
		// パラメタ設定
		kksv0820ParamMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0820");
		kksv0820ParamMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, "KKSV0820OP");
		
		// 上りマッピング
		KKSV0820_KKSV0820OPDBMapper kksv0820Mapper = new KKSV0820_KKSV0820OPDBMapper();
		kksv0820Mapper.setKKSV082001CC(paramBean, kksv0820InputMap, opeDate, sysid, svcKeiNo, userId, cdSbtList);
		
		invokeService(kksv0820ParamMap, kksv0820InputMap, kksv0820OutputMap);
		
		// SYSID存在チェック
		if (!JKKOneStopApiCommonUtil.checkExistSysid(kksv0820OutputMap))
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5008", warnList, funcCode, IF_ID);
			return false;
		}
		
		// サービス契約番号存在チェック
		if (!JKKOneStopApiCommonUtil.checkExistSvcKeiNo(kksv0820OutputMap))
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5009", warnList, funcCode, IF_ID);
			return false;
		}
		
		// ユーザID存在チェック
		if (!JKKOneStopApiCommonUtil.checkExistUserId(kksv0820OutputMap))
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5010", warnList, funcCode, IF_ID);
			return false;
		}
		
		// コード区分リストの退避
		Map<String, Object> kksv082001ccMap = (Map<String, Object>) kksv0820OutputMap.get("KKSV082001CC");
		Map<String, Object> codeMeishoKanriMap = (Map)kksv082001ccMap.get("codeMeishoKanriMap");
		cdDivListMap = (Map)codeMeishoKanriMap.get("rslt_cd_sbt_map");
		
		// 異動理由の大分類・中分類の組み合わせチェック／サービス契約の異動可能チェック用のサービス呼び出し
		OneStopDataBeanAccess osBean = new OneStopDataBeanAccess();
		osBean.sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_SET_VALUE, sysid);
		osBean.sendMessageString("選択サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		osBean.sendMessageString("運用日付", X31CWebConst.DATABEAN_SET_VALUE,  opeDate);
		// IT1-2016-0000100 2016/07/28 ADD START
		osBean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		// IT1-2016-0000100 2016/07/28 ADD END
		
		OneStopDataBeanAccess[] paramOsBean = {osBean};
		
		// ■KKSV0061
		HashMap<String, Object> kksv0061ParamMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0061InputMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0061OutputMap = new HashMap<String, Object>();
		
		// パラメタ設定
		kksv0061ParamMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0061);
		kksv0061ParamMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0061OP);
		
		// 上りマッピング
		KKSV0061_KKSV0061OPDBMapper kksv0061Mapper = new KKSV0061_KKSV0061OPDBMapper();
		kksv0061Mapper.setKKSV006101SC(paramOsBean, kksv0061InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0061Mapper.setKKSV006102SC(paramOsBean, kksv0061InputMap, JPCModelConstant.FUNC_CD_3);
		kksv0061Mapper.setKKSV006103SC(paramOsBean, kksv0061InputMap, JPCModelConstant.FUNC_CD_3);
		
		invokeService(kksv0061ParamMap, kksv0061InputMap, kksv0061OutputMap);
		
		// 取得情報の下りマッピング
		kksv0061Mapper.getKKSV006101SC(paramOsBean, kksv0061OutputMap);
		kksv0061Mapper.getKKSV006102SC(paramOsBean, kksv0061OutputMap);
		kksv0061Mapper.getKKSV006103SC(paramOsBean, kksv0061OutputMap);
		kksv0061Mapper.getKKSV006104SC(paramOsBean, kksv0061OutputMap);
		
		// ■KKSV0062
		HashMap<String, Object> kksv0062ParamMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0062InputMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0062OutputMap = new HashMap<String, Object>();
		
		kksv0062ParamMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0062);
		kksv0062ParamMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0062OP);
		
		// 上りマッピング
		KKSV0062_KKSV0062OPDBMapper kksv0062Mapper = new KKSV0062_KKSV0062OPDBMapper();
		kksv0062Mapper.setKKSV006201SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_2);
		kksv0062Mapper.setKKSV006202SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006203SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006205SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006206SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006207SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_6);
		kksv0062Mapper.setKKSV006208SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_2);
		kksv0062Mapper.setKKSV006209SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006210SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_2);
		kksv0062Mapper.setKKSV006212SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		kksv0062Mapper.setKKSV006221SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		// 2016/06/10 ANK-2687-00-00 ADD START
		kksv0062Mapper.setKKSV006222CC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_1);
		// 2016/06/10 ANK-2687-00-00 ADD END
		// IT1-2016-0000100 2016/07/28 ADD START
		kksv0062Mapper.setKKSV006223SC(paramOsBean, kksv0062InputMap, JPCModelConstant.FUNC_CD_2);
		// IT1-2016-0000100 2016/07/28 ADD END
		invokeService(kksv0062ParamMap, kksv0062InputMap, kksv0062OutputMap);
		
		// 取得情報の下りマッピング
		kksv0062Mapper.getKKSV006201SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006205SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006207SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006209SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006210SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006211SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006208SC(paramOsBean, kksv0062OutputMap);
		kksv0062Mapper.getKKSV006221SC(paramOsBean, kksv0062OutputMap);
		Map<?, ?> kksv006201scMap = (Map<?, ?>) kksv0062OutputMap.get("KKSV006201SC");
		List<?> ekk0081a010List = (List<?>) kksv006201scMap.get("EKK0081A010CBSMsg1List");
		Map<?, ?> ekk0081a010Map = (Map<?, ?>) (null != ekk0081a010List && 0 < ekk0081a010List.size() ? ekk0081a010List.get(0) : null);
		String prcGrpCd = (String) (null != ekk0081a010Map ? ekk0081a010Map.get("prc_grp_cd") : "");
		//料金グループコードが、 Wi-Fi／EMobile／UQ-WiMAX の何れかの場合
		if ("07".equals(prcGrpCd) || "08".equals(prcGrpCd) || "09".equals(prcGrpCd) || "10".equals(prcGrpCd))
		{
			kksv0062Mapper.getKKSV006212SC(paramOsBean, kksv0062OutputMap);
		}
		
		// IT1-2016-0000100 2016/07/28 ADD START
		kksv0062Mapper.getKKSV006223SC(paramOsBean, kksv0062OutputMap);
		
		Map<?, ?> kksv006223scMap = (Map<?, ?>)kksv0062OutputMap.get("KKSV006223SC");
		List<?> eKK0081B024List = (List<?>)kksv006223scMap.get("EKK0081B024CBSMsg1List");
		Map<?, ?> eKK0081B024Map = null;
		String svcKeiStat = "";
		
		// サービス契約履歴一覧照会マップ.サービス契約履歴一覧照会明細がNULLでない
		// かつ サービス契約履歴一覧照会マップ.サービス契約履歴一覧照会明細のサイズが0より大きい場合
		if (eKK0081B024List != null && 0 < eKK0081B024List.size()) {
			for (int i = 0; i < eKK0081B024List.size(); i++) {
				eKK0081B024Map = (Map<?, ?>)eKK0081B024List.get(i);
				
				svcKeiStat = (String)eKK0081B024Map.get("svc_kei_stat");
				
				// サービス契約ステータス = "100"(サービス提供中)の場合、
				// サービス提供履歴フラグに"1"(サービス提供履歴あり)を設定する
				if (JKKCommonConst.SVC_KEI_STAT_100.equals(svcKeiStat)) {
					svcTkRrkFlg = "1";
					break;
				}
			}
		}
		// IT1-2016-0000100 2016/07/28 ADD END
		
		// ■KKSV0463
		HashMap<String, Object> kksv0463ParamMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0463InputMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0463OutputMap = new HashMap<String, Object>();
		
		kksv0463ParamMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0463);
		kksv0463ParamMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0463OP);
		
		// 上りマッピング
		KKSV0463_KKSV0463OPDBMapper kksv0463Mapper = new KKSV0463_KKSV0463OPDBMapper();
		kksv0463Mapper.setKKSV046301SC(paramOsBean, kksv0463InputMap, JPCModelConstant.FUNC_CD_1, idoDiv);
		
		// 異動区分選択異動理由切替サービスを実施
		invokeService(kksv0463ParamMap, kksv0463InputMap, kksv0463OutputMap);
		
		// ■KKSV0551
		HashMap<String, Object> kksv0551ParamMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0551InputMap  = new HashMap<String, Object>();
		HashMap<String, Object> kksv0551OutputMap = new HashMap<String, Object>();
		
		kksv0551ParamMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0551);
		kksv0551ParamMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0551OP);
		
		// 上りマッピング
		KKSV0551_KKSV0551OPDBMapper kksv0551Mapper = new KKSV0551_KKSV0551OPDBMapper();
		kksv0551Mapper.setKKSV055101SC(paramOsBean, kksv0551InputMap, JPCModelConstant.FUNC_CD_1, idoRsnDbriCd);
		
		// 異動区分選択異動理由大分類切替サービスを実施
		invokeService(kksv0551ParamMap, kksv0551InputMap, kksv0551OutputMap);
		
		// 異動理由大分類・中分類組合せチェック
		if (!JKKOneStopApiCommonUtil.checkIdoRsnCdPair(kksv0463OutputMap, kksv0551OutputMap, osBean, idoRsnDbriCd, idoRsnCbriCd))
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5011", warnList, funcCode, IF_ID);
			return false;
		}
		
		// サービス契約異動可能チェック
		if (!JKKOneStopApiCommonUtil.checkSvcKeiIdoPsb(kksv0062OutputMap, osBean, idoDiv))
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5002", warnList, funcCode, IF_ID);
			return false;
		}
		
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * オプションサービス契約一覧照会 初期表示処理用DataBean上書き処理です。
	 * (ここでは顧客契約引継情報を上書きます)
     * <BR>
	 */
	private void overwriteDataBeanForInit0()
	{
		// 初期化
		formBean = new OneStopDataBeanAccess();
		// 引継情報を取得
		OneStopDataBeanAccessArray custKeiHktgiList =  formBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		OneStopDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

		// 引継情報をDataBeanに設定
		// 異動区分(00031:オプション設定 固定)
		custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV, X31CWebConst.DATABEAN_SET_VALUE,
				OS_IDO_DIV);
		// SYSID
		custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSID, X31CWebConst.DATABEAN_SET_VALUE,
				(String)requestMap.get("sysid"));
		// サービス契約番号
		custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE,
				(String)requestMap.get("svc_kei_no"));
		// 異動理由コード
		custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_RSN_CD, X31CWebConst.DATABEAN_SET_VALUE,
				(String)requestMap.get("ido_rsn_dbri_cd"));
		
		// 共有フォームビーンにユーザIDを設定する
		X31SDataBeanAccess  commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.USER_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)requestMap.get("user_id"));
	}
	
	
	/**
	 * マルチセッション情報更新 初期表示処理用DataBean上書き処理です。
	 * (ここでは顧客契約引継情報を上書きます)
     * <BR>
	 */
	private void overwriteDataBeanForInit()
	{
		// 初期処理用の引継リスト作成
		HashMap<String, Object> inMap = new HashMap<String, Object>();
		ArrayList<HashMap<String, Object>> hktgList = new ArrayList<HashMap<String, Object>>();
		HashMap<String, Object> paraMap = new HashMap<String, Object>();
		
		// 処理区分(04:解約 固定)
		inMap.put(KKW02510SFConst.TRAN_DIV, JKKCommonConst.OP_TRAN_DIV_DSL);
		// 異動区分(00031:オプション設定 固定)
		inMap.put(KKW02510SFConst.IDO_DIV, OS_IDO_DIV);
		// 異動理由コード
		inMap.put(KKW02510SFConst.IDO_RSN_CD_02, new String[]{(String)requestMap.get("ido_rsn_dbri_cd")});
		// 異動理由メモ
		inMap.put(KKW02510SFConst.IDO_RSN_MEMO_02, (String)requestMap.get("ido_rsn_memo"));
		// サービス契約番号
		inMap.put(KKW02510SFConst.SVC_KEI_NO, (String)requestMap.get("svc_kei_no"));
		// SYSID
		inMap.put(KKW02510SFConst.SYSID, (String)requestMap.get("sysid"));
		
		// オプションサービス契約番号
		String op_svc_kei_no  = selectBean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_01,   X31CWebConst.DATABEAN_GET_VALUE);
		inMap.put(KKW02510SFConst.OP_SVC_KEI_NO_01, new String[]{op_svc_kei_no});
		// 申込番号
		String mskm_no        = selectBean.sendMessageString(KKW02301SFConst.MSKM_NO_01,         X31CWebConst.DATABEAN_GET_VALUE);
		inMap.put(KKW02510SFConst.MSKM_NO_01, mskm_no);
		// 申込明細番号
		String mskm_dtl_no    = selectBean.sendMessageString(KKW02301SFConst.MSKM_DTL_NO_01,     X31CWebConst.DATABEAN_GET_VALUE);
		inMap.put(KKW02510SFConst.MSKM_DTL_NO_01, mskm_dtl_no);

		hktgList.add(inMap);
		paraMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, hktgList);
		
		JCCWebCommon.setScreenInfo(this, "KKA14401", paraMap);
		
		// 共有フォームビーンにユーザIDを設定する
		X31SDataBeanAccess  commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.USER_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)requestMap.get("user_id"));
	}
	
	
	/**
	 * マルチセッション情報更新 更新確認ボタン押下処理用DataBean上書き処理です。
	 * (ここでは顧客契約引継情報を上書きます)
     * <BR>
	 */
	private void overwriteDataBeanForUpdCfm()
	{
		// 初期処理用の引継リスト作成
		HashMap<String, Object> inMap = new HashMap<String, Object>();
		ArrayList<HashMap<String, Object>> hktgList = new ArrayList<HashMap<String, Object>>();
		HashMap<String, Object> paraMap = new HashMap<String, Object>();
		
		// 利用終了年月日
		String svcEndYmd = (String)requestMap.get("svc_endymd");
		
		// 利用終了日取得
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};

		paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_YEAR, X31CWebConst.DATABEAN_SET_VALUE,svcEndYmd.substring(0, 4));
		paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_MON, X31CWebConst.DATABEAN_SET_VALUE,svcEndYmd.substring(4, 6));
		paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_DAY, X31CWebConst.DATABEAN_SET_VALUE,svcEndYmd.substring(6, 8));

		
		hktgList.add(inMap);
		paraMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, hktgList);
		
		JCCWebCommon.setScreenInfo(this, "KKA14401", paraMap);
		
		// 共有フォームビーンにユーザIDを設定する
		X31SDataBeanAccess  commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.USER_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)requestMap.get("user_id"));
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ独自単関連チェック処理です。
     * <BR>
     * @return boolean
	 */
	private boolean singleKnrnChkForOneStop()
	{
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ先行独自関連チェック処理です。
	 * <BR>
	 * @return boolean
	 */
	private boolean senkoKnrnChkForOneStop()
	{
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ独自関連チェック処理です。
	 * <BR>
	 * @return boolean
	 */
	private boolean knrnChkForOneStop()
	{
		// 現時点チェックなし
		return true;
	}
// ANK-2694-00-00 ADD END 【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * ワンストップ用API終了メソッドです。
     * <BR>
     * @param returnCd リターンコード
	 * @throws Exception 
	 */
	private void apiTerminal(String returnCd) throws Exception
	{
		JKKOneStopApiCommonUtil.setReturnXml(this, returnCd, null, warnList, funcCode, IF_ID);
	}
// ANK-2694-00-00 ADD END   【ワンストップ用】

// ANK-2694-00-00 ADD START 【ワンストップ用】KKW02301SFLogicよりコピー
	/**
	 * 照会画面初期表示処理
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	public boolean actionInit() throws Exception
	public boolean actionInit0() throws Exception
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{

		// サービスフォームBean アクセスクラスの取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		OneStopDataBeanAccess svcFormBean = formBean;
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// 共通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);

// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess[] paramBean = {svcFormBean};
		OneStopDataBeanAccess[] paramBean = {svcFormBean};
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// 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);
		OneStopDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		OneStopDataBeanAccess 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);

// ANK-2694-00-00 ADD START 【ワンストップ用】
		// 取得したオプションサービス契約一覧から選択されたオプションサービス契約一覧を取得
		OneStopDataBeanAccessArray opSvcKeiList = svcFormBean.getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
		selectBean = new OneStopDataBeanAccess();
		boolean tgFlg = false;
		if (opSvcKeiList.size() > 0)
		{
			for (OneStopDataBeanAccess bean : opSvcKeiList)
			{
				// マルチセッション
				if (JKKCommonConst.OP_SVC_CD_VALUE_MLTISE.equals(bean.sendMessageString(KKW02301SFConst.OP_SVC_CD_01, X31CWebConst.DATABEAN_GET_VALUE)))
				{
					// 解約ボタンチェック
					if (dslChk(bean.sendMessageString(KKW02301SFConst.OP_SVC_KEI_STAT_01, X31CWebConst.DATABEAN_GET_VALUE)))
					{
						selectBean = (OneStopDataBeanAccess)bean.clone();
						tgFlg = true;
						break;
					}
				}
			}
		}
		if (!tgFlg)
		{
			JKKOneStopApiCommonUtil.setReturnXml(this, "E5003", warnList, funcCode, IF_ID);
			return false;
		}
// ANK-2694-00-00 ADD END   【ワンストップ用】

		return true;
	}


	/**
	 * JSP側ボタン活性・非活性・非表示制御区分設定
	 * @param  paramBean  DataBeanアクセスクラス
	 */
	private void setKbnButtonVisible(OneStopDataBeanAccess[] 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);

		// オプションサービス情報を取得
		OneStopDataBeanAccessArray 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";
			}
			OneStopDataBeanAccess 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))
		{
			// 電話番号プルダウンの選択を取得
			OneStopDataBeanAccessArray telno_list = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			OneStopDataBeanAccess telno_subbean = telno_list.getDataBean(0);
			// 添え字の取得
			String telnoPos          = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02,       X31CWebConst.DATABEAN_GET_VALUE);
// ANK-2694-00-00 MOD START 【ワンストップ用】
//			String svc_kei_ucwk_stat = telno_subbean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(telnoPos));
			String svc_kei_ucwk_stat = telno_subbean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE, telnoPos);
// ANK-2694-00-00 MOD END   【ワンストップ用】

			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
		}
		// ▲▲▲▲▲ 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
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void editServiceFormBean(X31SDataBeanAccess svcFormBean)
	private void editServiceFormBean(OneStopDataBeanAccess svcFormBean)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		// KAD-2012-00000087 ADD Start
		// 電話番号プルダウンの選択を取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
//		X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);
		OneStopDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		OneStopDataBeanAccess telno_subbean = telno_list.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
		// 添え字の取得
		String telnoPos = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);
		// KAD-2012-00000087 ADD End

		// サービス契約一意照会明細
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
		OneStopDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// サービスコード
		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
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray svcKeiList = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
//		X31SDataBeanAccess svcKeiListElement = svcKeiList.getDataBean(0);		
		OneStopDataBeanAccessArray svcKeiList = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		OneStopDataBeanAccess svcKeiListElement = svcKeiList.getDataBean(0);		
// ANK-2694-00-00 MOD END   【ワンストップ用】
		// サービス契約ステータス
		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光電話>一覧照会明細
// ANK-2694-00-00 MOD START 【ワンストップ用】
//			X31SDataBeanAccessArray telnoListArr = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			OneStopDataBeanAccessArray telnoListArr = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
// ANK-2694-00-00 MOD END   【ワンストップ用】
			if (telnoListArr != null && 0 < telnoListArr.getCount())
			{
// ANK-2694-00-00 MOD START 【ワンストップ用】
//				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));
				OneStopDataBeanAccess telnoListBean = telnoListArr.getDataBean(0);
				svc_kei_ucwk_no = telnoListBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_NO_02, X31CWebConst.DATABEAN_GET_VALUE, 
						telnoPos);
				svc_kei_ucwk_stat = telnoListBean.sendMessageString(KKW02301SFConst.SVC_KEI_UCWK_STAT_02, X31CWebConst.DATABEAN_GET_VALUE, 
						telnoPos);
// ANK-2694-00-00 MOD END   【ワンストップ用】
			}
		}
		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, OneStopDataBeanAccess[] 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(OneStopDataBeanAccess[] 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(OneStopDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
		// 設置済ＳＴＢ一覧照会明細を取得する
		OneStopDataBeanAccessArray stbInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST);

		// 選択されているサービス契約内訳番号を取得する
		// プルダウンリストの取得
		OneStopDataBeanAccessArray pulldownInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		OneStopDataBeanAccess 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
			{
				// 添え字からコードを取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//				selectedSTBValue = pulldownInfoBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedSTBIndex));
				selectedSTBValue = pulldownInfoBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, selectedSTBIndex);
// ANK-2694-00-00 MOD END   【ワンストップ用】
			}
		}

		// プルダウンリスト生成
		setPulldownListTV(paramBean[0], stbInfoList, KKW02301SFConst.TELNO_LIST, true, "なし", true , "svc_kei_ucwk_stat");

		// 選択行の再設定
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		pulldownInfoBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_SET_VALUE, Integer.parseInt(selectedSTBIndex));
		pulldownInfoBean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_SET_VALUE, selectedSTBIndex);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// ＳＴＢ番号が「なし」の場合は、全件表示する
		boolean stbSelectFlg = false;
		if ("なし".equals(selectedSTBValue))
		{
			stbSelectFlg = true;
		}

		// 出力するＳＴＢ情報を選別する
		for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
		{
			// 行データを取得する
			OneStopDataBeanAccess 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))
				{
					// ＳＴＢ番号が一致しないデータは削除する
// ANK-2694-00-00 MOD START 【ワンストップ用】
//					stbInfoList.removeDataBean(cnt);
					stbInfoList.remove(cnt);
// ANK-2694-00-00 MOD END   【ワンストップ用】
					cnt--;
				}
			}
		}

		// リストの番号
		int listNo = 1;

		// 行表示フラグの設定
		for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
		{
			// 行データを取得する
			OneStopDataBeanAccess 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(OneStopDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
	// サービス契約一意照会明細
		OneStopDataBeanAccessArray opPackInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0451A010CBSMSG1LIST);
		//IT1-2014-0000122 ADD START
		if(opPackInfoList.getCount() > 0)
		{
		//IT1-2014-0000122 ADD END
			// 終了年月日が最大の場合は、表示しない
			OneStopDataBeanAccess 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▲▲▲▲▲
// 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
	/**
	 * 通話明細情報一覧照会明細のソート処理
	 */
	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
	
	/**
	 * 引継情報を取得し、オプションサービス契約一覧照会サービスフォームBeanに設定する
	 * @param  svcFormBean  DataBeanアクセスクラス
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean getSessionData(OneStopDataBeanAccess svcFormBean) throws Exception
	{
		//セッションデータ取得
		JCCWebCommon.getScreenInfo(this);

		// 引継情報を取得
		OneStopDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
		OneStopDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

		// 引継情報をDataBeanに設定
		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;
	}

// ANK-2694-00-00 DEL START 【ワンストップ用】
//	/**
//	 * 引継情報を設定する
//	 * @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);
//
//	}

// ANK-2694-00-00 DEL END   【ワンストップ用】

	/**
	 * <dd>メソッド名：引継情報データマップ取得
	 * <dd>メソッド説明：引数のサービスフォームBeanより引継情報データマップの生成を行う。
	 * <dd>備考：引継情報データタイプの可変項目はString[]のみ対応。
	 * @param svcFormBean サービスフォームBean	
	 * @param hktgiKey 引継情報データタイプのキー
	 * @param hktgiPrmKeys 引継情報データタイプの項目キーリスト
	 * @return HashMap<String, Object> 引継情報データマップ
	 */
	private HashMap<String, Object> getHktgiDataMap(OneStopDataBeanAccess svcFormBean, String hktgiKey , String[] hktgiPrmKeys)
	{
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();

		OneStopDataBeanAccessArray infList =  svcFormBean.getDataBeanArray(hktgiKey);
		for (int i = 0 ; i < infList.getCount() ; i++)
		{
			HashMap<String, Object> inMap = new HashMap<String, Object>();

			OneStopDataBeanAccess inf = infList.getDataBean(i);
			for (int j = 0 ; j < hktgiPrmKeys.length ; j++)	
			{
				try
				{
					inMap.put(hktgiPrmKeys[j], inf.sendMessageString(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, String.valueOf(k));
					}
					inMap.put(hktgiPrmKeys[j], obj);
				}
			}
			dataList.add(inMap);
		}
		dataMap.put(hktgiKey, dataList);

		return dataMap;	
	}


	/**
	 * <dd>メソッド名	：setPulldownList
	 * <dd>メソッド説明	：下り情報Mapから取得したコードリスト、コード名リストを
	 *                    プルダウン情報Beanに設定します。
	 * 
	 * @param svcFormBean データ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")
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private static void setPulldownList(
//			X31SDataBeanAccess svcFormBean,
//			HashMap<String, Object> outputMap,
//			String pulldownKey,
//			String outMapKey,
//			boolean blankFlag,
//			String msgKey,
//			String cdKey,
//			String nmKey,
//			String statKey,
//			boolean indexNoFlg
// ANK-2694-00-00 MOD END   【ワンストップ用】
	private static void setPulldownList(
			OneStopDataBeanAccess svcFormBean,
			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 (svcFormBean == 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アクセスクラスリストに設定します
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray pulldown_list = svcFormBean.getDataBeanArray(pulldownKey);
		OneStopDataBeanAccessArray pulldown_list = svcFormBean.getDataBeanArray(pulldownKey);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		//データBeanアクセスクラスに対象のプルダウン情報Beanを設定します
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);
		OneStopDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】


		//プルダウン情報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	oneStopDataBeanAccess	データBeanアクセスクラス
	 * @param	stbInfoList			設置済ＳＴＢ一覧照会明細
	 * @param	pulldownKey			プルダウン情報取得キー
	 * @param	blankFlag			１行目ブランク付与フラグ  true[付与する] false[付与しない]
	 * @param	blankNm				１行目ブランク付与時表示内容
	 * @param	indexNoFlg			添え字フラグ
	 * @exception Exceptionがスローされます。
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private static void setPulldownListTV(
//			X31SDataBeanAccess oneStopDataBeanAccess,
//			X31SDataBeanAccessArray  stbInfoList,
//			String             pulldownKey,
//			boolean           blankFlag,
//			String             blankNm,
//			boolean           indexNoFlg,
//			String             statKey
// ANK-2694-00-00 MOD END   【ワンストップ用】
	private static void setPulldownListTV(
			OneStopDataBeanAccess oneStopDataBeanAccess,
			OneStopDataBeanAccessArray  stbInfoList,
			String             pulldownKey,
			boolean           blankFlag,
			String             blankNm,
			boolean           indexNoFlg,
			String             statKey
	)
	{
		// データBeanアクセスクラスがNULLかどうか判定します
		if (oneStopDataBeanAccess == null)
		{
			// NULL、空の場合処理を終了します
			return ;
		}
		// プルダウンキーがNULLか空文字かどうか判定します
		if (pulldownKey == null || "".equals(pulldownKey))
		{
			// NULL、空文字の場合処理を終了します
			return ;
		}

		// 対象の発行ステータスDataBeanを取得し、データBeanアクセスクラスリストに設定します
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray pulldown_list = oneStopDataBeanAccess.getDataBeanArray(pulldownKey);
		OneStopDataBeanAccessArray pulldown_list = oneStopDataBeanAccess.getDataBeanArray(pulldownKey);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// データBeanアクセスクラスに対象のプルダウン情報Beanを設定します
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);
		OneStopDataBeanAccess pulldown_subbean = pulldown_list.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// プルダウン情報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++)
		{
			// 設置済ＳＴＢ一覧照会明細の行データを取得します
// ANK-2694-00-00 MOD START 【ワンストップ用】
//			X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
			OneStopDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
// ANK-2694-00-00 MOD END   【ワンストップ用】
			// ＳＴＢ番号を取得します
			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
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void editDisableObjectValue(X31SDataBeanAccess svcFormBean)
	private void editDisableObjectValue(OneStopDataBeanAccess svcFormBean)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{

		// 電話番号プルダウンの選択を取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
//		X31SDataBeanAccess telno_subbean = telno_list.getDataBean(0);
		OneStopDataBeanAccessArray telno_list = svcFormBean.getDataBeanArray(KKW02301SFConst.TELNO_LIST);
		OneStopDataBeanAccess telno_subbean = telno_list.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
		// 添え字の取得
		String telno_index = telno_subbean.sendMessageString(KKW02301SFConst.TELNO_INDEX_02, X31CWebConst.DATABEAN_GET_VALUE);

		// サービス契約一意照会明細
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
		OneStopDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// サービスコード
		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

				// 顧客契約引継リスト.電話番号順
// ANK-2694-00-00 MOD START 【ワンストップ用】
//				X31SDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
//				X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
				OneStopDataBeanAccessArray custKeiHktgiList =  svcFormBean.getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
				OneStopDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
				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		機能コード
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private String getKKSV004301SCFuncCd(X31SDataBeanAccess[] paramBean)
	private String getKKSV004301SCFuncCd(OneStopDataBeanAccess[] paramBean)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		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))
		{
			// プルダウンリストの取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//			X31SDataBeanAccessArray pulldownInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
//			X31SDataBeanAccess pulldownInfoBean = pulldownInfoList.getDataBean(0);
			OneStopDataBeanAccessArray pulldownInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.TELNO_LIST);
			OneStopDataBeanAccess pulldownInfoBean = pulldownInfoList.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
			// 添え字の取得
			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));
					String selectedSTBValue = pulldownInfoBean.sendMessageString(CD_DIV_LIST, X31CWebConst.DATABEAN_GET_VALUE, selectedSTBIndex);

					// 設置済ＳＴＢ一覧照会明細を取得する
// ANK-2694-00-00 MOD START 【ワンストップ用】
//					X31SDataBeanAccessArray stbInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST_DATA);
					OneStopDataBeanAccessArray stbInfoList = paramBean[0].getDataBeanArray(KKW02301SFConst.STB_LIST_DATA);
// ANK-2694-00-00 MOD END   【ワンストップ用】

					String svcKeiUcwkNo = "";
					for (int cnt = 0; cnt < stbInfoList.getCount(); cnt++)
					{
						// プルダウンで選択されているＳＴＢ番号と一致する行を取得する
// ANK-2694-00-00 MOD START 【ワンストップ用】
//						X31SDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
						OneStopDataBeanAccess stbInfo = stbInfoList.getDataBean(cnt);
// ANK-2694-00-00 MOD END   【ワンストップ用】
						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			サービスコード
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void setDispInfo(X31SDataBeanAccess[] paramBean, String svcCd)
	private void setDispInfo(OneStopDataBeanAccess[] paramBean, String svcCd)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
		OneStopDataBeanAccessArray op_svc_kei_list = paramBean[0].getDataBeanArray(KKW02301SFConst.OP_SVC_KEI_LIST);
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// ワンストップメニューから遷移の場合は、「オプションチャンネル」のみを表示する
		if (JCRScreenConst.SCREEN_ID_CRW10601.equals(JCCWebCommon.getScreenId(this)))
		{
			if (JKKCommonConst.SVC_CD_TV.equals(svcCd))
			{
				// オプションチャンネル情報一覧
// ANK-2694-00-00 MOD START 【ワンストップ用】
//				X31SDataBeanAccessArray ekk0821b001cbsmsg1list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0821B001CBSMSG1LIST);
				OneStopDataBeanAccessArray ekk0821b001cbsmsg1list = paramBean[0].getDataBeanArray(KKW02301SFConst.EKK0821B001CBSMSG1LIST);
// ANK-2694-00-00 MOD END   【ワンストップ用】

				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++)
					{
// ANK-2694-00-00 MOD START 【ワンストップ用】
//						X31SDataBeanAccess opSvcKeiInfo = op_svc_kei_list.getDataBean(i);
						OneStopDataBeanAccess opSvcKeiInfo = op_svc_kei_list.getDataBean(i);
// ANK-2694-00-00 MOD END   【ワンストップ用】
						// オプションサービスコード取得
						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++)
						{
// ANK-2694-00-00 MOD START 【ワンストップ用】
//							X31SDataBeanAccess opChannelInfo = ekk0821b001cbsmsg1list.getDataBean(j);
							OneStopDataBeanAccess opChannelInfo = ekk0821b001cbsmsg1list.getDataBean(j);
// ANK-2694-00-00 MOD END   【ワンストップ用】
							if (opSvcCd.equals(opChannelInfo.sendMessageString(KKW02301SFConst.OP_SVC_CD_11, X31CWebConst.DATABEAN_GET_VALUE)))
							{
								listDelFlg = false;
								break;
							}
						}

						if (listDelFlg)
						{
							// 一覧から削除
// ANK-2694-00-00 MOD START 【ワンストップ用】
//							op_svc_kei_list.removeDataBean(i);
							op_svc_kei_list.remove(i);
// ANK-2694-00-00 MOD END   【ワンストップ用】
						}
					}
				}
			}
		}

		int listCount = op_svc_kei_list.getCount();
		for (int i = 0; i < listCount; i++)
		{
			OneStopDataBeanAccess 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
			// 戻る処理にて戻ってきた際の前回情報を取得する
			// 引継情報を取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//			X31SDataBeanAccessArray custKeiHktgiList =  paramBean[0].getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
//			X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
//
//			X31SDataBeanAccess subbean = null;
			OneStopDataBeanAccessArray custKeiHktgiList =  paramBean[0].getDataBeanArray(KKW02301SFConst.CUST_KEI_HKTGI_LIST);
			OneStopDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

			OneStopDataBeanAccess subbean = null;
// ANK-2694-00-00 MOD END   【ワンストップ用】

			// オプションサービス契約番号　引継数
			int opHktgCnt = (Integer)custKeiHktgiInf.sendMessage(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_COUNT);

			if (opHktgCnt > 0)
			{
				// オプションサービス契約番号取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//				String opSvcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE, 0);
				String opSvcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.OP_SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE, "0");
// ANK-2694-00-00 MOD END   【ワンストップ用】

				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 EMD
			// 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;
			}
			// 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 EMD
			// 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;
			}
			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 EMD
			// 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 ▼▼▼▼▼
	/**
	 * ボタン設定（電話サービス）
	 */
// ANK-2694-00-00 MOD 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
//	)
	private void setBtnVisibleAtTel(
			OneStopDataBeanAccess[] paramBean,
			String ido_div,
			String op_svc_cd,
			boolean op_svc_kei_list_ari,
			boolean svc_kei_ucwk_dsl_flg
	)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		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▲▲▲▲▲
	}

	/**
	 * ボタン設定（ネットサービス）
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	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
//	)
	private void setBtnVisibleAtNet(
			OneStopDataBeanAccess[] 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
	)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		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);
	}

	/**
	 * ボタン設定（テレビサービス）
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void setBtnVisibleAtTv(
//			X31SDataBeanAccess[] paramBean,
//			String ido_div,
//			String op_svc_cd,
//			boolean op_svc_kei_list_ari
//	)
	private void setBtnVisibleAtTv(
			OneStopDataBeanAccess[] paramBean,
			String ido_div,
			String op_svc_cd,
			boolean op_svc_kei_list_ari
	)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		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
	/**
	 * ワンタイムパスワード登録サービスに必要な項目を取得し、サービスフォームBeanに設定する
	 * 
	 * @param svcFormBean	DataBeanアクセスクラス
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void setMapGmnData(X31SDataBeanAccess svcFormBean){
	private void setMapGmnData(OneStopDataBeanAccess svcFormBean){
// ANK-2694-00-00 MOD END   【ワンストップ用】

		// ユーザー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
	 */
// ANK-2694-00-00 MOD START 【ワンストップ用】
//	private void setFooterBtnDispFlg(X31SDataBeanAccess svcFormBean)
	private void setFooterBtnDispFlg(OneStopDataBeanAccess svcFormBean)
// ANK-2694-00-00 MOD END   【ワンストップ用】
	{
		String mapBtnDispFlg = "0";		// 非表示
		String riyoFukaBtnDispFlg = "0";	// 非表示
		// 料金グループコードを保存されているBeanの情報から取得
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray svcList =  svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
//		X31SDataBeanAccess svcElement = svcList.getDataBean(0);
		OneStopDataBeanAccessArray svcList =  svcFormBean.getDataBeanArray(KKW02301SFConst.EKK0081B010CBSMSG1LIST);
		OneStopDataBeanAccess svcElement = svcList.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
		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();
		// 顧客契約引継情報に「サービス契約番号」の値がセットされていること
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccessArray custKeiHktgiList = svcFormBean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
//		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		OneStopDataBeanAccessArray custKeiHktgiList = svcFormBean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		OneStopDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
// ANK-2694-00-00 MOD END   【ワンストップ用】
		String svcKeiNo = custKeiHktgiInf.sendMessageString(KKW02301SFConst.SVC_KEI_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
		if (svcKeiNo == null || "".equals(svcKeiNo))
		{
			// サービス契約番号がセットされていない場合は、以降の処理を行わない
			return;
		}
// ANK-2694-00-00 MOD START 【ワンストップ用】
//		X31SDataBeanAccess[] paramBeanKKSV0793 = { custKeiHktgiInf };
		OneStopDataBeanAccess[] paramBeanKKSV0793 = { custKeiHktgiInf };
// ANK-2694-00-00 MOD END   【ワンストップ用】
		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

// ANK-2694-00-00 ADD END 【ワンストップ用】KKW02301SFLogicよりコピー

	/**
	 * 初期表示処理<br>
	 * <br>
	 * １．マッピングのために、DataBeanに遷移元情報を設定します。<br>
	 * ２．マルチセッション情報初期表示サービスの呼び出しを行います。<br>
	 * ３．画面表示用にDataBeanに格納します。<br>
	 * <br>
	 *
	 * @return 正常／異常
	 * @throws Exception 
	 */
	public boolean actionInit() throws Exception 
	{
		HashMap<String, Object> inputMap = null;		// サービスへの入力情報作成のためのMap
		HashMap<String, Object> outputMap = null;		// サービスへからの出力情報取得のためのMap
		
		// メッセージ表示用
		String[] msgInfo = new String[1];
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};
		
		// 前画面からの引継情報を取得します
		// 画面情報を取得し、サービスフォームBeanに設定。
		JCCWebCommon.getScreenInfo(this);
		
		// DataBean設定処理（引継情報）
		setHktgiBean(paramBean);
		
		// サービス呼出し前処理を実施します。
		inputMap = new HashMap<String, Object>();
		
		setInitsrv(paramBean, inputMap);
		
		// サービスを実施します。
		outputMap = new HashMap<String, Object>();
		doService("KKSV0071", "KKSV0071OP", inputMap, outputMap);
		
		// 下りマッピングを実施します
		// マッピングデータから、画面で必要な項目を設定します。
		storeDataBeanInitsrv(paramBean, outputMap);
		
		msgInfo = new String[1];
		
		// 処理区分取得
		String trans_div = bean.sendMessageString(KKW02510SFConst.TRAN_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		// オプションサービス契約ステータスの取得
		String op_svc_kei_stat = bean.sendMessageString(KKW02510SFConst.OP_SVC_KEI_STAT, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 処理区分が変更の場合のメッセージ出力
		if(JKKCommonConst.OP_TRAN_DIV_CHGE.equals(trans_div))
		{
// v5.00 2013/05/30 TG1-2013-0000421 MOD START
//			if(JKKCommonConst.SVC_KEI_STAT_100.equals(op_svc_kei_stat))
			if(JKKCommonConst.SVC_KEI_STAT_020.equals(op_svc_kei_stat)
					|| JKKCommonConst.SVC_KEI_STAT_030.equals(op_svc_kei_stat)
					|| JKKCommonConst.SVC_KEI_STAT_100.equals(op_svc_kei_stat))
// v5.00 2013/05/30 TG1-2013-0000421 MOD END
			{
				;
			}
			else
			{
				// オプションサービス契約ステータスが"サービス提供中"でない場合、
				// 以下のメッセージを表示し更新不可にする
				String[] str = {"変更","オプションサービス"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1510_KW, str);
				paramBean[0].sendMessageBoolean(KKW02510SFConst.CHG_KAHI_FLG,  X31CWebConst.DATABEAN_SET_VALUE, false);
			}
		}
		// 処理区分が解約の場合のメッセージ出力
		else if(JKKCommonConst.OP_TRAN_DIV_DSL.equals(trans_div))
		{
			if(JKKCommonConst.SVC_KEI_STAT_030.equals(op_svc_kei_stat) 
					|| JKKCommonConst.SVC_KEI_STAT_100.equals(op_svc_kei_stat) 
					|| JKKCommonConst.SVC_KEI_STAT_210.equals(op_svc_kei_stat))
			{
				;
			}
			else
			{
				// オプションサービス契約ステータスが"締結済","サービス提供中","休止・中断中"のいずれでもない場合、
				// 以下のメッセージを表示し更新不可にする
				String[] str = {"解約","オプションサービス"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1510_KW, str);
				paramBean[0].sendMessageBoolean(KKW02510SFConst.CHG_KAHI_FLG,  X31CWebConst.DATABEAN_SET_VALUE, false);
			}
		}
		// 処理区分が回復の場合のメッセージ出力
		else if(JKKCommonConst.OP_TRAN_DIV_KAIHK.equals(trans_div))
		{
			if(JKKCommonConst.SVC_KEI_STAT_910.equals(op_svc_kei_stat))
			{
			msgInfo[0] = INFO_MSGSTRING[2];
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, msgInfo);
			}
			else
			{
				// オプションサービス契約ステータスが"解約済"でない場合、
				// 以下のメッセージを表示し更新不可にする
				String[] str = {"回復","オプションサービス"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1510_KW, str);
				paramBean[0].sendMessageBoolean(KKW02510SFConst.CHG_KAHI_FLG,  X31CWebConst.DATABEAN_SET_VALUE, false);
			}
		}
		// 処理区分が予約取消の場合のメッセージ出力
		else if(JKKCommonConst.OP_TRAN_DIV_RSV_CL.equals(trans_div))
		{
			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) 
					|| JKKCommonConst.SVC_KEI_STAT_100.equals(op_svc_kei_stat))
			{
			msgInfo[0] = INFO_MSGSTRING[3];
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, msgInfo);
			}
			else
			{
				// オプションサービス契約ステータスが"受付済","照査済","締結済","サービス提供中"のいずれでもない場合、
				// 以下のメッセージを表示し更新不可にする
				String[] str = {"予約取消","オプションサービス"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1510_KW, str);
				paramBean[0].sendMessageBoolean(KKW02510SFConst.CHG_KAHI_FLG,  X31CWebConst.DATABEAN_SET_VALUE, false);
			}
		}
		
		// DataBeanをログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		
		return true;
	}
	
	/**
	 * 変更画面「更新確認」ボタン押下
	 * １．DataBean設定処理
	 * ２．サービス呼出処理
	 * ３．遷移先画面設定
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionUpdCfm() throws Exception
	{
		HashMap<String, Object> inputMap = null;		// サービスへの入力情報作成のためのMap
		HashMap<String, Object> outputMap = null;		// サービスへからの出力情報取得のためのMap
		
		// メッセージ表示用
		String[] msgInfo = new String[1];
		
		// 共有フォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();

		// サービスフォームBean
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};
		
		// サービス呼出し前処理を実施します。
		inputMap = new HashMap<String, Object>();
		outputMap = new HashMap<String, Object>();
		
		// 処理区分取得
		String trans_div = bean.sendMessageString(KKW02510SFConst.TRAN_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(JKKCommonConst.OP_TRAN_DIV_DSL.equals(trans_div))
		{
			// 処理区分"解約"
			// 解約用データ入力
			setDslsrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			
			// 解約サービスを実施します。
			doService("KKSV0073", "KKSV0073OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanDslsrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[1];
		}
		else if(JKKCommonConst.OP_TRAN_DIV_CHGE.equals(trans_div))
		{
			// パスワード初期化フラグをパスワード初期化フラグ（制御用）に記録する
			boolean init_flg = paramBean[0].sendMessageBoolean(KKW02510SFConst.PWD_INIT_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			
			// パスワード初期化フラグ → パスワード初期化フラグ（制御用）
			paramBean[0].sendMessageBoolean(KKW02510SFConst.PWD_INIT_FLG_CTRL, X31CWebConst.DATABEAN_SET_VALUE, init_flg);

			// 処理区分"更新"
			// 更新用データ入力
			setChgesrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			
			// 更新サービスを実施します
			doService("KKSV0072", "KKSV0072OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanChgesrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[0];
		}
		
		// 「返却メッセージID」が空であれば、更新を確認するメッセージセットして次画面へ
		// 「返却メッセージID」が存在する場合はエラーなので画面遷移せず「返却メッセージID」をメッセージ表示
		String rtn_msgId = bean.sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(rtn_msgId == null || "".equals(rtn_msgId))
		{
			// 遷移先の画面IDを共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(
					CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_ID_KKW02511);
			commoninfoBean.sendMessageString(
					CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_NAME_KKW02511);
			
			// 変更確認画面メッセージ出力
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, msgInfo);
			
		}
		else
		{
			// エラーメッセージ表示
			displayGyomuErrorMsg(rtn_msgId, trans_div);
		}
		
		// DataBeanをログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		
		return true;
	}
	
	/**
	 * 変更確認画面「確定」ボタン押下
	 * １．DataBean設定処理
	 * ２．サービス呼出処理
	 * ３．遷移先画面設定
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception 
	 */
	public boolean actionFix() throws Exception
	{
		HashMap<String, Object> inputMap = null;		// サービスへの入力情報作成のためのMap
		HashMap<String, Object> outputMap = null;		// サービスへからの出力情報取得のためのMap
		
		// メッセージ表示用
		String[] msgInfo = null;
		
		// 共有フォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();

		// サービスフォームBean
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};
		
		// サービス呼出し前処理を実施します。
		inputMap = new HashMap<String, Object>();
		outputMap = new HashMap<String, Object>();
		
		// 処理区分取得
		String trans_div = bean.sendMessageString(KKW02510SFConst.TRAN_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(JKKCommonConst.OP_TRAN_DIV_DSL.equals(trans_div))
		{
			// 処理区分"解約"
			// 解約用データ入力
			setDslsrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			
			// 解約サービスを実施します。
			doService("KKSV0073", "KKSV0073OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanDslsrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[1];
		}
		else if(JKKCommonConst.OP_TRAN_DIV_CHGE.equals(trans_div))
		{
			// 処理区分"更新"
			// 更新用データ入力
			setChgesrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			
			// 更新サービスを実施します
			doService("KKSV0072", "KKSV0072OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanChgesrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[0];
		}
		else if(JKKCommonConst.OP_TRAN_DIV_KAIHK.equals(trans_div))
		{
			// 処理区分"回復"
			// 回復用データ入力
			setKaihksrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			
			// 回復サービスを実施します
			doService("KKSV0074", "KKSV0074OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanKaihksrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[2];
		}
		else if(JKKCommonConst.OP_TRAN_DIV_RSV_CL.equals(trans_div))
		{
			// 処理区分"予約取消"
			// 取消用データ入力
			setRsvclsrv(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			
			// 予約取消サービスを実施します
			doService("KKSV0075", "KKSV0075OP", inputMap, outputMap);
			
			// 下りマッピングを実施します
			// マッピングデータから、画面で必要な項目を設定します。
			storeDataBeanRsvclsrv(paramBean, outputMap);
			
			msgInfo = new String[1];
			msgInfo[0] = INFO_MSGSTRING[3];
		}
		
		// 「返却メッセージID」が空であれば、更新を確認するメッセージセットして次画面へ
		// 「返却メッセージID」が存在する場合はエラーなので画面遷移せず「返却メッセージID」をメッセージ表示
		String rtn_msgId = bean.sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(rtn_msgId == null || "".equals(rtn_msgId))
		{
			// 遷移先の画面IDを共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(
					CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_ID_KKW02512);
			commoninfoBean.sendMessageString(
					CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_NAME_KKW02512);
			
			// 変更確認画面メッセージ出力
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB4390__I, msgInfo);
		}
		else
		{
			// エラーメッセージ表示
			displayGyomuErrorMsg(rtn_msgId, trans_div);
		}
		
		// DataBeanをログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		
		return true;
	}
	
	/**
	 * 修正処理<br>
	 * <br>
	 * １．マルチセッション更新画面に戻ります。<br>
	 * <br>
	 *
	 * @return 正常／異常
	 * @throws Exception 
	 */
	public boolean actionShusei() throws Exception
	{
		// 共有フォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(
				CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW02510);
		commoninfoBean.sendMessageString(
				CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW02510);

		// DataBeanをログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 戻る処理<br>
	 * <br>
	 * １．呼び出し元画面に戻ります。<br>
	 * <br>
	 *
	 * @return 正常／異常
	 * @throws Exception 
	 */
	public boolean actionBack() throws Exception
	{
		// 共有フォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
	
		// 遷移先の画面IDを取得し共有フォームBeanの項目に設定する。
		commoninfoBean.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;
	}

	/**
	 * 完了処理<br>
	 * <br>
	 * １．呼び出し元画面に戻ります。<br>
	 * <br>
	 *
	 * @return 正常／異常
	 * @throws Exception 
	 */
	public boolean actionFin() throws Exception
	{
		// 共有フォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();

		// 遷移先の画面IDを取得し共有フォームBeanの項目に設定する。
		commoninfoBean.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;
	}

	/**
	 * クリア処理<br>
	 * <br>
	 * １．初期表示処理を呼び出します。<br>
	 * <br>
	 *
	 * @return 正常／異常
	 * @throws Exception 
	 */
	public boolean actionClear() throws Exception
	{
		HashMap<String, Object> inputMap = null;		// サービスへの入力情報作成のためのMap
		HashMap<String, Object> outputMap = null;		// サービスへからの出力情報取得のためのMap
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};

		// サービス呼出し前処理を実施します。
		inputMap = new HashMap<String, Object>();
		
		setInitsrv(paramBean, inputMap);
		
		// サービスを実施します。
		outputMap = new HashMap<String, Object>();
		doService("KKSV0071", "KKSV0071OP", inputMap, outputMap);
		
		// 下りマッピングを実施します
		// マッピングデータから、画面で必要な項目を設定します。
		storeDataBeanInitsrv(paramBean, outputMap);
		
		// DataBeanをログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
	
	/**
	 * サービス呼出処理<br>
	 * <br>
	 * マルチセッション更新関連のサービスの呼び出しを行います。<br>
	 * <br>
	 * @param usecase_id ユースケースID
	 * @param operation_id オペレーションID
	 * @param inputMap サービスへの入力情報Map（Not null）
	 * @param resultOutputMap サービスからの出力情報Map
	 * @return APサーバでエラーが発生した場合は、エラーメッセージ情報オブジェクトが返却されます。<br>
	 * 正常終了時には、null値が返却されます。
	 * @throws Exception 
	 */
	private X31CMessageResult doService(String usecase_id, String operation_id,
			HashMap<String, Object> inputMap, HashMap<String, Object> resultOutputMap)
	throws Exception
	{
		X31CMessageResult msgResult = null;		// 戻り値用
		HashMap<String, Object> paramMap = null;				// APサーバに依頼する情報を格納したマップオブジェクト

		try
		{
			// パラメタ設定
			paramMap = new HashMap<String, Object>();
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, usecase_id);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, operation_id);

			// サービスの呼び出し
			msgResult = invokeService(paramMap, inputMap, resultOutputMap);
		}
		finally
		{
			paramMap = null;
		}

		return msgResult;
	}

	/**
	 * DataBean設定処理（初期表示）<br>
	 * <br>
	 * 画面DataBeanに必要な項目をセットします。<br>
	 * <br>
	 * @param paramBean DataBean項目の配列
	 */
	private void setHktgiBean(X31SDataBeanAccess[] paramBean)
	{
		// 運用日付取得してDataBeanにセットする
		String unyo_ymd = JCCWebCommon.getOpeDate(this, null);
		paramBean[0].sendMessageString(KKW02510SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyo_ymd);
		
		// 顧客契約引継リスト取得
		X31SDataBeanAccessArray custKeiHktgiList =  paramBean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

		// SYSID
		String sysid = custKeiHktgiInf.sendMessageString(KKW02510SFConst.SYSID_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.SYSID,  X31CWebConst.DATABEAN_SET_VALUE, sysid);
		
		// サービス契約番号取得
		String svc_kei_no = custKeiHktgiInf.sendMessageString(KKW02510SFConst.SVC_KEI_NO_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.SVC_KEI_NO,  X31CWebConst.DATABEAN_SET_VALUE, svc_kei_no);
		
		// 処理区分取得
		String trans_div = custKeiHktgiInf.sendMessageString(KKW02510SFConst.TRAN_DIV_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.TRAN_DIV,  X31CWebConst.DATABEAN_SET_VALUE, trans_div);
		
		// 異動区分
		String ido_div = custKeiHktgiInf.sendMessageString(KKW02510SFConst.IDO_DIV_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.IDO_DIV,  X31CWebConst.DATABEAN_SET_VALUE, ido_div);

		// 異動理由コードの設定
		X31SDataBeanAccessArray ido_rsn_list = paramBean[0].getDataBeanArray(KKW02510SFConst.IDO_RSN_LIST);

		// ▼異動理由メモ対応 Start
		String ido_rsn_memo = custKeiHktgiInf.sendMessageString(KKW02510SFConst.IDO_RSN_MEMO_01, X31CWebConst.DATABEAN_GET_VALUE);
		// ▲異動理由メモ対応 End

		// 異動理由コードの要素数を取得
		int cnt = (Integer)custKeiHktgiInf.sendMessage(KKW02510SFConst.IDO_RSN_CD_01, X31CWebConst.DATABEAN_GET_COUNT);

		// ▼異動理由メモ対応 追加Start
		// 動作不正のため、異動理由リストより取得する処理に変更
		// 異動理由コードの要素数分繰り返す
//		for(int i = 0; i < cnt; i++)
//		{
//			X31SDataBeanAccess ido_rsn_bean = null;
//			if(ido_rsn_list.getCount() - 1 >= i)
//			{
//				ido_rsn_bean = ido_rsn_list.getDataBean(i);
//			}
//			else
//			{
//				ido_rsn_bean = ido_rsn_list.addDataBean();
//			}
//			if (ido_rsn_bean == null) 
//			{
//				continue;
//			}
//
//			// 異動理由コードの取得
//			String ido_rsn_cd = custKeiHktgiInf.sendMessageString(KKW02510SFConst.IDO_RSN_CD_01, X31CWebConst.DATABEAN_GET_VALUE, i);
//			
//			// 異動理由.異動理由コードの設定
//			ido_rsn_bean.sendMessageString(KKW02510SFConst.IDO_RSN_CD_02, X31CWebConst.DATABEAN_SET_VALUE, ido_rsn_cd);
//			// ▼異動理由メモ対応 Start
//			// 異動理由.異動理由メモの設定
////			ido_rsn_bean.sendMessageString(KKW02510SFConst.IDO_RSN_MEMO_02, X31CWebConst.DATABEAN_SET_VALUE, "");
//			ido_rsn_bean.sendMessageString(KKW02510SFConst.IDO_RSN_MEMO_02, X31CWebConst.DATABEAN_SET_VALUE, ido_rsn_memo);
			// ▲異動理由メモ対応 End
//			
//		}
		
		// 異動理由リストからスキーマ格納値の設定を行う
		X31SDataBeanAccessArray ekk1091d010Arr = paramBean[0].getDataBeanArray("異動理由リスト");
		ekk1091d010Arr.clearArray();
		Integer maxIndex = (Integer)custKeiHktgiInf.sendMessage(KKW02510SFConst.IDO_RSN_CD_01, X31CWebConst.DATABEAN_GET_COUNT);
		for(int i = 0 ; i < maxIndex; i ++)
		{
			X31SDataBeanAccess ekk1091d010dtlBean = ekk1091d010Arr.addDataBean();

			String ido_rsn_cd = custKeiHktgiInf.sendMessageString(KKW02510SFConst.IDO_RSN_CD_01, X31CWebConst.DATABEAN_GET_VALUE, i);
			ekk1091d010dtlBean.sendMessageString(KKW02510SFConst.IDO_RSN_CD_02, X31CWebConst.DATABEAN_SET_VALUE, 
					ido_rsn_cd);
			ekk1091d010dtlBean.sendMessageString(KKW02510SFConst.IDO_RSN_MEMO_02, X31CWebConst.DATABEAN_SET_VALUE, 
					ido_rsn_memo);

		}
		// ▲異動理由メモ対応 追加End
		
		// オプションサービス契約番号
		String op_svc_kei_no = custKeiHktgiInf.sendMessageString(KKW02510SFConst.OP_SVC_KEI_NO_01, X31CWebConst.DATABEAN_GET_VALUE, 0);
		paramBean[0].sendMessageString(KKW02510SFConst.OP_SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, op_svc_kei_no);

		// 申込番号
		String mskm_no = custKeiHktgiInf.sendMessageString(KKW02510SFConst.MSKM_NO_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.MSKM_NO, X31CWebConst.DATABEAN_SET_VALUE, mskm_no);
		
		// 申込明細番号
		String mskm_dtl_no = custKeiHktgiInf.sendMessageString(KKW02510SFConst.MSKM_DTL_NO_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.MSKM_DTL_NO, X31CWebConst.DATABEAN_SET_VALUE, mskm_dtl_no);

	}

	/**
	 * 初期表示サービス呼出し前Data設定処理<br>
	 * <br>
	 * <br>
	 *
	 * @param paramBean DataBeanアクセスクラス配列
	 * @param inputMap サービスへの入力情報Map（Not null）
	 * @return なし
	 */
	private void setInitsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> inputMap)
	{
		String opeDate = JCCWebCommon.getOpeDate(this , null);		// 運用年月日
		
		// 運用年月日をサービスフォームBeanへ設定
		paramBean[0].sendMessageString(KKW02510SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, opeDate);
		// 運用年月日時分秒
		paramBean[0].sendMessageString(KKW02510SFConst.UNYO_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDateTimeStamp(this, null));
		//paramBean[0].sendMessageString(KKW02510SFConst.UNYO_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getSysDateTime());
		
		// 返却メッセージIDをクリア
		paramBean[0].sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// 処理区分取得
		String trans_div = paramBean[0].sendMessageString(KKW02510SFConst.TRAN_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(JKKCommonConst.OP_TRAN_DIV_CHGE.equals(trans_div))
		{
			// 処理区分"更新"
			paramBean[0].sendMessageBoolean(KKW02510SFConst.UPD_MODE_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			// パスワード初期化フラグ
			paramBean[0].sendMessageBoolean(KKW02510SFConst.PWD_INIT_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		}
		else if(JKKCommonConst.OP_TRAN_DIV_SHOKAI.equals(trans_div))
		{
			// 処理区分"照会"
			paramBean[0].sendMessageBoolean(KKW02510SFConst.NON_UPD_DSL_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
		}
		else if(JKKCommonConst.OP_TRAN_DIV_KAIHK.equals(trans_div) || JKKCommonConst.OP_TRAN_DIV_RSV_CL.equals(trans_div))
		{
			// 処理区分"回復" or "予約取消"
			paramBean[0].sendMessageBoolean(KKW02510SFConst.KAIHK_CNSL_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
		}
		
		// 上りマッピング
		KKSV0071_KKSV0071OPDBMapper mapper = new KKSV0071_KKSV0071OPDBMapper();

		mapper.setKKSV007101SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV007102SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV007103SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV007104SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV007105SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV007106SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
	}

	/**
	 * 初期表示Data保存処理<br>
	 * <br>
	 * <br>
	 *
	 * @param paramBean DataBeanアクセス配列
	 * @param outputMap サービスからの出力情報Map
	 * @return なし
	 */
	private void storeDataBeanInitsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> outputMap)
	{
		// 下りマッピング
		KKSV0071_KKSV0071OPDBMapper mapper = new KKSV0071_KKSV0071OPDBMapper();
		
		if(outputMap != null)
		{
			mapper.getKKSV007101SC(paramBean, outputMap);
			mapper.getKKSV007102SC(paramBean, outputMap);
			mapper.getKKSV007103SC(paramBean, outputMap);
			mapper.getKKSV007104SC(paramBean, outputMap);
			mapper.getKKSV007105SC(paramBean, outputMap);
			mapper.getKKSV007106SC(paramBean, outputMap);
			
			// 更新状態可否フラグを更新可にする
			paramBean[0].sendMessageBoolean(KKW02510SFConst.CHG_KAHI_FLG,  X31CWebConst.DATABEAN_SET_VALUE, true);

			// セッション数
			paramBean[0].sendMessageString(KKW02510SFConst.CHG_SESSION_CNT, X31CWebConst.DATABEAN_SET_VALUE,
					paramBean[0].sendMessageString(KKW02510SFConst.CUR_SESSION_CNT, X31CWebConst.DATABEAN_GET_VALUE));
			
			// 認証ＩＤ
			paramBean[0].sendMessageString(KKW02510SFConst.NINSHO_ID, X31CWebConst.DATABEAN_SET_VALUE,
					paramBean[0].sendMessageString(KKW02510SFConst.MLTISE_NINSHO_ID, X31CWebConst.DATABEAN_GET_VALUE));
			
			// 初期パスワード
			paramBean[0].sendMessageString(KKW02510SFConst.SHK_PWD, X31CWebConst.DATABEAN_SET_VALUE,
					paramBean[0].sendMessageString(KKW02510SFConst.MLTISE_SHK_NINSHO_ID_PWD, X31CWebConst.DATABEAN_GET_VALUE));
			
			// 処理区分取得
			String trans_div = paramBean[0].sendMessageString(KKW02510SFConst.TRAN_DIV, X31CWebConst.DATABEAN_GET_VALUE);
			
			if(JKKCommonConst.OP_TRAN_DIV_DSL.equals(trans_div))
			{
				// ▼▼▼ IT1-2012-0001599 Delete Start ▼▼▼
//				/* 利用終了日初期化対応 
//				// 処理区分"解約"
//				String unyo_ymd = paramBean[0].sendMessageString(KKW02510SFConst.UNYO_YMD, X31CWebConst.DATABEAN_GET_VALUE);
//				
//				if(unyo_ymd != null && !("".equals(unyo_ymd)))
//				{*/
//					 // 利用終了日（年）
//					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_YEAR, X31CWebConst.DATABEAN_SET_VALUE, "");
//					 // 利用終了日（月）
//					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_MON, X31CWebConst.DATABEAN_SET_VALUE, "");
//					 // 利用終了日（日）
//					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_DAY, X31CWebConst.DATABEAN_SET_VALUE, "");
////				}
				// ▲▲▲ IT1-2012-0001599 Delete End ▲▲▲
				// ▼▼▼ IT1-2012-0001599 Add Start ▼▼▼
				// 処理区分"解約"
				String unyo_ymd = paramBean[0].sendMessageString(KKW02510SFConst.UNYO_YMD, X31CWebConst.DATABEAN_GET_VALUE);
				
				if(unyo_ymd != null && !("".equals(unyo_ymd)) && 8 == unyo_ymd.length())
				{
					 // 利用終了日（年）
					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_YEAR, X31CWebConst.DATABEAN_SET_VALUE, unyo_ymd.substring(0, 4));
					 // 利用終了日（月）
					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_MON, X31CWebConst.DATABEAN_SET_VALUE, unyo_ymd.substring(4, 6));
					 // 利用終了日（日）
					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_DAY, X31CWebConst.DATABEAN_SET_VALUE, unyo_ymd.substring(6, 8));
				}
				// ▲▲▲ IT1-2012-0001599 Add End ▲▲▲
			}
			else if(JKKCommonConst.OP_TRAN_DIV_CHGE.equals(trans_div))
			{
				// 処理区分"更新"
				paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD, X31CWebConst.DATABEAN_SET_VALUE,
						paramBean[0].sendMessageString(KKW02510SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_GET_VALUE));
				
				// ▼▼▼動的・静的の判定は固定グローバルIPアドレスのオプションの有無で判定する▼▼▼
//				// 動的マルチセッションか判定する
//				// 動的マルチセッションとは、固定グローバルIPオプションでない場合のこと
//				// マルチセッション用初期認証ＩＤパスワードの設定有無で判定する
//				String mltise_shk_pwd = paramBean[0].sendMessageString(KKW02510SFConst.MLTISE_SHK_NINSHO_ID_PWD, X31CWebConst.DATABEAN_GET_VALUE);
//				if(!("".equals(mltise_shk_pwd)))
//				{
//					paramBean[0].sendMessageBoolean(KKW02510SFConst.KOTEI_GIP_OP_ON_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
//				}
				// ▲▲▲動的・静的の判定は固定グローバルIPアドレスのオプションの有無で判定する▲▲▲
			}
			else if(JKKCommonConst.OP_TRAN_DIV_SHOKAI.equals(trans_div) ||
					JKKCommonConst.OP_TRAN_DIV_KAIHK.equals(trans_div) ||
					JKKCommonConst.OP_TRAN_DIV_RSV_CL.equals(trans_div))
			{
				// 処理区分"照会" or "回復" or "予約取消"
				paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD, X31CWebConst.DATABEAN_SET_VALUE,
						paramBean[0].sendMessageString(KKW02510SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_GET_VALUE));
			}
		}
	}

	/**
	 * 更新サービス入力設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param inputMap 入力データ
	 * @param func_cd 機能コード
	 * @return なし
	 */
	private void setChgesrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> inputMap, String func_cd)
	{
		
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD START
		// 進捗特記事項１
		paramBean[0].sendMessageString(KKW02510SFConst.PRG_TKJK_1, X31CWebConst.DATABEAN_SET_VALUE, MLTSE_INFO + CHGE);
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD END

		
		// 上りデータマッピング
		KKSV0072_KKSV0072OPDBMapper mapper = new KKSV0072_KKSV0072OPDBMapper();
		
		mapper.setKKSV007201SC(paramBean, inputMap, func_cd);
		mapper.setKKSV007202SC(paramBean, inputMap, func_cd);
		mapper.setKKSV007206SC(paramBean, inputMap, func_cd);
		mapper.setKKSV007203SC(paramBean, inputMap, func_cd);
		mapper.setKKSV007204SC(paramBean, inputMap, func_cd);
		mapper.setJKKHakkoSODCC(paramBean, inputMap, func_cd);
		mapper.setKKSV0072WORK(paramBean, inputMap, func_cd);
	}

	/**
	 * 更新サービス結果設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param outputMap 出力データ
	 * @return なし
	 */
	private void storeDataBeanChgesrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> outputMap)
	{
		// 返却値は使用しないので何もしない
	}

	/**
	 * 解約サービス入力設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param inputMap 入力データ
	 * @param func_cd 機能コード
	 * @return なし
	 */
	private void setDslsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> inputMap, String func_cd)
	{
		// 「更新確認」の場合だけDataBean編集する
		if(JPCModelConstant.FUNC_CD_2.equals(func_cd))
		{
			// 利用終了日
			String use_endymd = paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_YEAR, X31CWebConst.DATABEAN_GET_VALUE) +
								paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_MON, X31CWebConst.DATABEAN_GET_VALUE) +
								paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD_DAY, X31CWebConst.DATABEAN_GET_VALUE);
			paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD, X31CWebConst.DATABEAN_SET_VALUE, use_endymd);

			// サービス課金終了年月日設定
			// 2012/11/22 [TAI-2012-0000091]暫定ロジック修正対応 DEL START
//			paramBean[0].sendMessageString(KKW02510SFConst.SVC_CHRG_ENDYMD, X31CWebConst.DATABEAN_SET_VALUE,
//					paramBean[0].sendMessageString(KKW02510SFConst.USE_ENDYMD, X31CWebConst.DATABEAN_GET_VALUE));
			// 2012/11/22 [TAI-2012-0000091]暫定ロジック修正対応 DEL END

			// 返却メッセージIDをクリア
			paramBean[0].sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_SET_VALUE, "");
			
			// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD START
			// 進捗特記事項１
			paramBean[0].sendMessageString(KKW02510SFConst.PRG_TKJK_1, X31CWebConst.DATABEAN_SET_VALUE, MLTSE_INFO + DSL);
			// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD END

		}
		
		// 上りデータマッピング
		KKSV0073_KKSV0073OPDBMapper mapper = new KKSV0073_KKSV0073OPDBMapper();
		mapper.setOpsvckeiDslCC(paramBean, inputMap, func_cd);
		mapper.setJKKHakkoSODCC(paramBean, inputMap, func_cd);
		mapper.setKKSV0073WORK(paramBean, inputMap, func_cd);
	}

	/**
	 * 解約サービス結果設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param outputMap 出力データ
	 * @return なし
	 */
	private void storeDataBeanDslsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> outputMap)
	{
		// 下りデータマッピング
		KKSV0073_KKSV0073OPDBMapper mapper = new KKSV0073_KKSV0073OPDBMapper();
		mapper.getOpsvckeiDslCC(paramBean, outputMap);
	}

	/**
	 * 回復サービス入力設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param inputMap 入力データ
	 * @param func_cd 機能コード
	 * @return なし
	 */
	private void setKaihksrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> inputMap, String func_cd)
	{
		// 回復年月日設定
		String kaihk_ymd = paramBean[0].sendMessageString(KKW02510SFConst.UNYO_YMD, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW02510SFConst.KAIHK_YMD, X31CWebConst.DATABEAN_SET_VALUE, kaihk_ymd);
		
		// 返却メッセージIDをクリア
		paramBean[0].sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD START
		// 進捗特記事項１
		paramBean[0].sendMessageString(KKW02510SFConst.PRG_TKJK_1, X31CWebConst.DATABEAN_SET_VALUE, MLTSE_INFO + KAIHK);
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD END
		
		// 上りデータマッピング
		KKSV0074_KKSV0074OPDBMapper mapper = new KKSV0074_KKSV0074OPDBMapper();
		mapper.setOpsvckeiKaihkCC(paramBean, inputMap, func_cd);
		mapper.setJKKHakkoSODCC(paramBean, inputMap, func_cd);
		mapper.setKKSV0074WORK(paramBean, inputMap, func_cd);
		// 割引自動適応CC設定部分コメントアウト
		/*-- 【START】割引変更メッセージ対応 --*/
		//mapper.setWrisvcAutoAplyCC(paramBean, inputMap, func_cd);	// 割引サービス自動適用CC
		/*-- 【END】割引変更メッセージ対応 --*/
		// 割引自動適応CC設定部分コメントアウト

	}

	/**
	 * 回復サービス結果設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param outputMap 出力データ
	 * @return なし
	 * @throws Exception 
	 */
	private void storeDataBeanKaihksrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> outputMap)  throws Exception 
	{
		// 下りデータマッピング
		KKSV0074_KKSV0074OPDBMapper mapper = new KKSV0074_KKSV0074OPDBMapper();
		
		mapper.getOpsvckeiKaihkCC(paramBean, outputMap);
		/*-- 【START】割引変更メッセージ対応 --*/
		getWrisvcMsg("KKSV0073", outputMap);	// 割引サービス変更メッセージ取得
		/*-- 【END】割引変更メッセージ対応 --*/
		
	}

	/**
	 * 予約取消サービス入力設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param inputMap 入力データ
	 * @param func_cd 機能コード
	 * @return なし
	 */
	private void setRsvclsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> inputMap, String func_cd)
	{
		// 返却メッセージIDをクリア
		paramBean[0].sendMessageString(KKW02510SFConst.RTN_MSG_ID, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD START
		// 進捗特記事項１
		paramBean[0].sendMessageString(KKW02510SFConst.PRG_TKJK_1, X31CWebConst.DATABEAN_SET_VALUE, MLTSE_INFO + RSV_CLK);
		// 2012/11/05 [ANK-1223-00-00]進捗補足事項編集対応 ADD END
		
		// 上りデータマッピング
		KKSV0075_KKSV0075OPDBMapper mapper = new KKSV0075_KKSV0075OPDBMapper();
		
		mapper.setOpsvckeiCnslCC(paramBean, inputMap, func_cd);
		// 2013/01/24 [IT1-2013-0000167]キャンセルSOD発行対応 ADD START
		mapper.setJKKHakkoSODCC(paramBean, inputMap, func_cd);
		// 2013/01/24 [IT1-2013-0000167]キャンセルSOD発行対応 ADD END
		// 割引自動適応CC設定部分コメントアウト
		/*-- 【START】割引変更メッセージ対応 --*/
		//mapper.setWrisvcAutoAplyCC(paramBean, inputMap, func_cd);	// 割引サービス自動適用CC
		/*-- 【END】割引変更メッセージ対応 --*/
		// 割引自動適応CC設定部分コメントアウト
	}
	
	/**
	 * 予約取消サービス結果設定処理
	 * @param paramBean DataBeanアクセス配列
	 * @param outputMap 出力データ
	 * @return なし
	 * @throws Exception 
	 */
	private void storeDataBeanRsvclsrv(X31SDataBeanAccess[] paramBean,
			HashMap<String, Object> outputMap)  throws Exception 
	{
		// 下りデータマッピング
		KKSV0075_KKSV0075OPDBMapper mapper = new KKSV0075_KKSV0075OPDBMapper();
		
		mapper.getOpsvckeiCnslCC(paramBean, outputMap);
		/*-- 【START】割引変更メッセージ対応 --*/
		getWrisvcMsg("KKSV0073", outputMap);	// 割引サービス変更メッセージ取得
		/*-- 【END】割引変更メッセージ対応 --*/
	}

	/**
	 * エラーメッセージ画面表示処理
	 * @param rtn_msgId メッセージID
	 * @param trans_div 処理区分
	 * @return なし
	 */
	private void displayGyomuErrorMsg(String rtn_msgId, String trans_div)
	{
		// エラーメッセージ毎に引数を設定して画面表示する
		// TODO:返却内容には追加の可能性あり、その内容によってロジック対応の可能性あり
		
		String[]	params = null;
		
		if(rtn_msgId != null && !("".equals(rtn_msgId)))
		{
			// 処理区分が解約の場合
			if(JKKCommonConst.OP_TRAN_DIV_DSL.equals(trans_div))
			{
				//IT1-2013-0000140 2013/01/09 DEL START
//				// 休止中未来日付（EKB5440-JW）
//				if (JPCOnlineMessageConstant.EKB5440_JW.equals(rtn_msgId)) 
//				{
//					params = new String[]{"休止中", "未来日指定の解約は"};
//				}
//				
//				// 未来日（EKB0270-NW）
//				if (JPCOnlineMessageConstant.EKB0270_NW.equals(rtn_msgId)) 
//				{
//					params = new String[]{"利用終了日", "運用日+60日", "日付"};
//				}
				//IT1-2013-0000140 2013/01/09 DEL START
				
				// 過去日(EKB0690-NW)
				if (JPCOnlineMessageConstant.EKB0690_NW.equals(rtn_msgId)) 
				{
					params = new String[]{"利用終了日", "過去"};
				}
			}
			// 処理区分が回復の場合
			else if(JKKCommonConst.OP_TRAN_DIV_KAIHK.equals(trans_div))
			{
				
				// 回復可能期間（EKB5440-JW）
				if (JPCOnlineMessageConstant.EKB5440_JW.equals(rtn_msgId)) 
				{
					params = new String[]{"回復可能期間外", "回復は"};
				}
			}
			// IT2-2012-0001034 ADD START
			// 処理区分が予約取消の場合
			else if(JKKCommonConst.OP_TRAN_DIV_RSV_CL.equals(trans_div))
			{
				
				// 予約取消不可（EKB5420-JW）
				if (JPCOnlineMessageConstant.EKB5420_JW.equals(rtn_msgId)) 
				{
					params = new String[]{"オプション", "予約取消"};
				}
			}
			// IT2-2012-0001034 ADD END

			// OM-2016-0002076 置換文字が設定されていない場合も、メッセージ表示可能にする 2017/03/13 MOD START
//			JCCWebCommon.setMessageInfo(this, rtn_msgId, params);
			if (null != params)
			{
				JCCWebCommon.setMessageInfo(this, rtn_msgId, params);
			}
			else
			{
				JCCWebCommon.setMessageInfo(this, rtn_msgId);
			}
			// OM-2016-0002076 置換文字が設定されていない場合も、メッセージ表示可能にする 2017/03/13 MOD END
		}
	}
	
	/*-- 【START】割引変更メッセージ対応 --*/

	/**
	 * 割引サービス変更メッセージ出力処理 <br>
	 * <br>
	 * オプション変更に対する割引サービス変更メッセージを出力する。 <br>
	 * <br>
	 * @param func_code 機能コード
	 * @param outputMap 
	 * @throws Exception 
	 */
	private void getWrisvcMsg(String func_code, HashMap<String, Object> outputMap) throws Exception 
	{
		if(func_code.equals(JPCModelConstant.FUNC_CD_1)) 
		{
			ArrayList<HashMap<String, Object>> msgList = null;
			HashMap<String, Object> warisvcMap = null;
			
			if(outputMap.containsKey("WrisvcAutoAplyCC"))
			{
				warisvcMap = (HashMap<String, Object>)outputMap.get("WrisvcAutoAplyCC");
			}
			
			if(warisvcMap != null) 
			{
				msgList = (ArrayList<HashMap<String, Object>>)warisvcMap.get("msg_list");
			}
			// メッセージ登録部品呼び出し
			JKKSetSessionMessage.setSessionMessage(this, msgList);
		}
	}
	/*-- 【END】割引変更メッセージ対応 --*/
	
// ANK-2694-00-00 ADD START 【ワンストップ用】
	/**
	 * オプションサービス契約状態解約可能チェック.<br>
	 * オプションサービス契約状態が解約オーダーの投入が可能かをチェックする。
	 * 
	 * @param opSvcKeiStat オプションサービス契約状態
	 * @return true 可能 false 不可能
	 */
	private boolean dslChk(String opSvcKeiStat)
	{
		for (String tmp : OP_SVC_KEI_STAT_DSL)
		{
			if (tmp.equals(opSvcKeiStat))
			{
				return true;
			}
		}
		return false;
	}
// ANK-2694-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 アクセスクラスの取得
		OneStopDataBeanAccess svcFormBean = formBean;

		// 画面情報を設定（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-3346-01-00 ADD START
	/**
	 * 解約レター検索ボタン押下時に解約レター検索画面に遷移を行います。
	 * <br>
	 * @return true/false
	 * @exception Exception
	 */
	public boolean actionDslLetterSch() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// セッション情報引渡処理
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(formBean, KKW02301SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		hktgiDataMap.put("検索フラグ", 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

// ★★★★★ 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 アクセスクラスの取得
		OneStopDataBeanAccess svcFormBean = formBean;

		// 画面情報を設定（TRANKシステム起動画面）
		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(formBean, 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
}
