/*********************************************************************
 *	All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *	システム名		：顧客契約
 *	モジュール名	：KKW00128SFLogic
 *	ソースファイル名：KKW00128SFLogic.java
 *	作成者			：Fj
 *	日付			：2011年06月07日
 *＜機能概要＞
 *	サービス契約情報更新(eo光ネット)機能のビューロジッククラスです。
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	v1.00.00	2011/06/22	FJ）富士通 	新規作成
 *	v1.00.00	2012/02/28	FJ）富士通 	ST2-2012-0000271
 *	v3.00.00	2012/03/02	FJ）大川 	ANK-0049-00-00 eoモバイル3Gハイブリッドタイプ対応
 *	                                    ANK-0050-00-00 FTTH従量制プラン対応
 *	                                    ANK-0059-00-00 ファミリーパックサービスの初期設定サポート手配対応
 *	                                    ANK-0097-00-00 工事中のプラン変更
 *	                                    ANK-0110-00-00 撤去工事中の状態表示
 *	v4.00.00	2012/05/24	FJ）藤本祐	ANK0363-00-00 FTTH従量制プランStep2対応
 *	v4.00.01	2012/07/22	FJ）江藤	ANK-0404-00-00 42M光ハイブリッド対応
 *	v4.00.02	2012/11/19	FJ）藤本	ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移
 *	v5.00.00	2013/01/25  FJ) 脇田	ANK-1270-00-00 1ギガコースその他価格改定対応
 *	v4.00.03	2013/02/28  FJ) 江藤	【IT1-2012-0002413】 サービス契約共通ヘッダに予約状況追加
 *	v8.00.00	2014/02/20	FJ) 北谷	ANK-1933-00-00 お客さま情報画面から地図Ｓへの連携
 *	v8.01.00	2014/04/02	FJ) 北谷	IT2-2014-0000175 更新確認ボタンでエラー時に地図がでる問題
 *	v8.02.00	2014/04/09	FJ) 寺田	ANK-1683-00-00 サービス開始日、課金開始日訂正機能の追加
 *	v9.00.00	2014/06/16	FJ) 藤田	ANK-2079-00-00 解約予約が入っていても即時解約の投入を可能とする
 *	v9.01.00	2014/08/11	FJ) 藤本	【OM-2014-0002254】強制解約から回復を行うと契約は回復されたがサービスが利用できない
 *  v10.00.00	2014/06/16	FJ) 齋藤	ANK-1918-00-00 ＵＳ管理Ｓ向けｅｏ顧客ＳのＩ／Ｆ改修
 *  v11.00.00	2014/11/17	FJ) 齋藤	【ANK-2410-00-00】マンションの利用開始希望日変更可能期限変更
 *  v11.01.00	2014/12/10	FJ) 谷口	【ANK-2423-00-00】サービス情報訂正でサービス開始日を変更可能とする。
 *  v11.02.00   2015/01/16  FJ) 阮　　　【OM-2014-0004036】オプションサービス回復可能期間チェックの実装について
 *	v14.00.00	2015/03/26	FJ) 松本	【ANK-2477-00-00】契約者死亡に伴う解約受付改善
 *  v14.00.00	2015/07/08  FJ) 三浦    OM-2015-0001645  モバイルのコース変更時エラー発生対応。判定用としてメソッドのパラメータ追加。
 *  v16.00.00	2015/07/03	FJ) 鯵坂	【ANK-2480-00-00】新電力案件対応
 *  v18.00.00	2015/08/26  FJ) 松本    【ANK-2631-00-00】 ワンストップ案件（ＳＴＥＰ１）コース変更時メール送信対応
 *  v20.00.00   2015/11/30  FJ) 真崎    【ANK-2646-00-00】【プロジェクト正常化】JP案件中の電話番号追加改善
 *  v23.00.00	2015/12/11  FJ) 山岡    【ANK-2693-00-00】 オーダリング対応(STEP2)
 *  v23.01.00   2016/01/27  FJ) 澤田    【IT1-2016-0000014】 １０Ｇコース導入対応 工事有無判定に10GE-PONの条件追加対応
 *  v23.02.00	2016/01/15	FJ) 原田	【ANK-2737-00-00】 消費者保護ルール見直し対応
 *	v25.00.00	2016/05/26	FJ)柳		【ANK-2754-00-00】お客様情報タブへのコンテンツ契約情報表示
 *	v26.00.00   2016/06/03	FJ) 笠川	【ANK-2687-00-00】プレミアムサポート施策
 *	v28.00.00	2016/12/07	FJ) 三原	【ANK-3034-00-00】【eoプレミアムクラブ】eo画面へのチケット残枚数追加表示
 *	v29.00.00	2017/01/25	FJ) 川島	【ANK-3095-00-00】ガス販売代理対応（STEP1-2）
 *	v33.00.00	2017/08/21	FJ)麻生		【ANK-3239-00-00】住変キャンセル時に起こる不正エラーの対応
 *	v33.01.00	2017/09/22	FJ)柳		【ANK-3251-00-00】（契アシRDSツール改善）解約レターツールのシステム化
 *	v34.00.00	2017/09/13  FJ)周藤     【ANK-3210-00-00】【eo電気】電気単独対応（STEP3）
 *	v31.00.00	2017/12/08	FJ)山地		【ANK-3136-00-00】OPMSハードウエア保守切れ対応(STEP2-2)
 *	v35.00.00	2017/12/21	FJ)麻生		【ANK-3346-01-00】【解約レター機能関連】改善要望　Ｓｔｅｐ１
 *	v36.00.00	2018/01/24	FJ)宮下		【ANK-3296-00-00】 標準工事費分割請求
 *	v37.00.00	2018/03/15	FJ)三原		【ANK-3366-00-00】eo光設備卸対応
 *	v39.00.00	2018/10/29	FJ)舘山		【ANK-3412-00-00】５ギガ・１０ギガコース導入対応
 *	v40.00.00	2019/01/23	FJ)舘山		【ANK-3412-15-00】【５ギガ・１０ギガ】メゾン工事設計要否の初期値設定
 *	v40.00.01	2019/02/08	FJ)舘山		【ANK-3412-15-00】自動交換対象外エラー対応
 *	v41.00.00	2019/03/04	FJ)三原		【ANK-3387-00-00】マンションタイプ光コンセントサービス導入
 *	v41.01.00	2010/03/06	FJ)舘山		【ANK-3412-14-00】事務手数料／工事費の初期値変更
 *	v45.00.00	2019/06/17	FJ)後藤		【ANK-3655-00-00】回線回復時の事務手数料課金ワーニング表示
 *	v46.00.00	2019/11/06	FJ)吉田		【OM-2019-0000915】有効なメールアドレスがない状態でプラン変更を行うとエラー
 *	v48.00.00	2020/01/22	FJ)吉田		【OM-2019-0001446】機器連帯契約変更手続中の機器オプション解約キャンセル時メッセージ出力対応
 *	v48.01.00	2020/01/24  FJ)中野		【ANK-3796-00-00】テレビリースサービス導入対応
 *	v49.00.00	2020/03/27	FJ)西窪	    【ANK-3834-00-00】マルウェアブロッキング
 *	v49.00.00	2020/06/10	FJ)荒木		【ANK-3840-00-00】テレビリースサービス新規申込対応
 *  v50.00.00	2020/08/27	FJ)澤田	    【ANK-3900-00-00】マンション卸サービスの固定IPアドレス設定対応
*   v51.00.01	2020/11/02	FJ) 西窪	【ANK-3949-00-00】Netflix導入対応（STEP1）
 *  v52.00.00	2021/01/25	FJ)吉村	    【ANK-3987-00-00】Netflix導入対応(Step2)
 *  v56.00.00   2021/10/19  FJ)西窪     【ANK-4038-00-00】【eo定期】光ローゼット化対応
 *  v56.00.01	2021/11/09	FJ)平野		【ANK-4129-00-00】【eo】Netflix Step5
 *	v56.00.02	2021/11/26	FJ) 三原	【OM-2021-0000633】1ギガコースNetFlixパックへのコース変更確定前にネットの解約予約ができた
 *  v56.00.03	2021/12/14	FJ)杉本		【ANK-4174-00-00】開通前マイページ関連業務改善（2022年1月下旬リリース）
 *  v57.00.00	2022/01/13	FJ)杉本		【ANK-4075-00-00】マンション卸回線(WI-FIスキーム)の不備対応
 *  v60.00.00   2022/07/26  FJ)西窪     【ANK-4287-00-00】【eo定期】機器オプションの予約機能対応
 *  v63.00.00	2022/11/18	FJ)北谷     【OM-2021-0000384】HT→MZ住変確定後、同日内にコース変更を登録した際、設備情報連携、通知書データに不整合が発生する
 *  v61.00.00   2023/01/20  FJ)北川     【ANK-4315-00-00】【eo定期】eoホームゲートウェイ導入対応
 *  v61.00.00	2023/01/04	FJ)澤田	    【ANK-4315-00-00】【eo定期】 eoホームゲートウェイ導入対応
 *  v66.00.00   2023/03/09	FJ)吉川    【ANK-4307-00-00】【eo定期】プレミアムクラブリニューアル対応
 *  v61.00.01   2023/04/11  FJ)新井     【ANK-4315-00-00】【eo定期】eoホームゲートウェイ導入対応
 * 	v61.00.02	2023/08/31  FJ)藤本涼  	【IT1-2023-0000050】ONU交換工事のステータスチェック不備
 * 	v61.00.03	2023/10/08  FJ)新井  	【IT1-2023-0000059】コース変更(ワンストップ)でのエラーチェック漏れ * 
 *	v61.00.04	2023/10/18  FJ)新井     【IT1-2023-0000062】ONU交換工事の工事案件ステータス変更
 *  v68.00.00	2023/12/01	FJ)舘山		【ANK-4516-00-00】【eo】 HGW交換不可フラグ設定機能の追加
 *  v71.00.00	2024/05/14	FJ)渋谷		【ANK-4468-00-00】eo光ネット「シンプルプラン」追加対応
 *  v73.00.00   2024/10/09	FJ)謝	    【ANK-4427-00-00】NTT卸対応（STEP1）
 *  v73.01.00	2025/01/14	FJ) 星野	【IT1-2025-0000002】
 *  v75.00.00	2025/03/21	FJ)張       【ANK-4640-00-00】NTT卸対応（STEP1.5）
 *  v75.06.00	2025/04/23	FJ)張       【ANK-4640-06-00】NTT卸対応（STEP1.5）仕変6
 *  v75.07.00	2025/05/19	FJ)張       【ANK-4640-07-00】NTT卸対応（STEP1.5）仕変7
**********************************************************************/
package eo.web.webview.KKW00128SF;


import static eo.web.webview.common.JKKKeiNewCmnLogicUtil.CCSV0006;
import static eo.web.webview.common.JKKKeiNewCmnLogicUtil.PROP_SIMS_MAP_SYS_ID;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;

import com.fujitsu.futurity.common.JSYwebLog;
import com.fujitsu.futurity.model.common.JCMAPLConstMgr;
import com.fujitsu.futurity.web.x00.JCCWebServiceException;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;
import com.fujitsu.futurity.web.x31.X31SRuntimeException;

import eo.common.constant.JKKStrConst;
import eo.common.constant.JKUStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.util.JKKCommonUtil;
import eo.common.util.JKKStringUtil;
import eo.common.util.JPCDateUtil;
import eo.common.util.JPCUtilCommon;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.KKW00101SF.KKW00101SFConst;
import eo.web.webview.KKW21811SF.KKW21811SFConst;
import eo.web.webview.ZMW10601SF.ZMW10601SFConst;
import eo.web.webview.common.JACScreenConst;
import eo.web.webview.common.JCCScreenConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCHCommonConst;
import eo.web.webview.common.JCKScreenConst;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKPulldownUtil;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.common.JKKSetSessionMessage;
import eo.web.webview.common.JKKSvkeiUpdScreenUtil;
import eo.web.webview.common.JKKTabCommonLogic;
import eo.web.webview.common.JKKWebCommon;
import eo.web.webview.common.JZMScreenConst;
import eo.web.webview.mapping.CCSV0006_CCSV0006OPDBMapper;
import eo.web.webview.mapping.KKSV0059_KKSV0059OPDBMapper;
import eo.web.webview.mapping.KKSV0194_KKSV0194OPDBMapper;
import eo.web.webview.mapping.KKSV0195_KKSV0195OPDBMapper;
import eo.web.webview.mapping.KKSV0196_KKSV0196OPDBMapper;
import eo.web.webview.mapping.KKSV0197_KKSV0197OPDBMapper;
import eo.web.webview.mapping.KKSV0198_KKSV0198OPDBMapper;
import eo.web.webview.mapping.KKSV0200_KKSV0200OPDBMapper;
import eo.web.webview.mapping.KKSV0202_KKSV0202OPDBMapper;
import eo.web.webview.mapping.KKSV0203_KKSV0203OPDBMapper;
import eo.web.webview.mapping.KKSV0204_KKSV0204OPDBMapper;
import eo.web.webview.mapping.KKSV0988_KKSV0988OPDBMapper;
import eo.web.webview.mapping.KKSV1027_KKSV1027OPDBMapper;
//20140409 ANK-1683-00-00 Add Start
import eo.web.webview.mapping.KKSV0787_KKSV0787OPDBMapper;
//20140409 ANK-1683-00-00 Add End

/**
 * <dd>クラス名：サービス契約情報更新(eo光ネット)ビューロジック <dd>クラス説明：画面上のボタン押下時の各処理を記述します。 <dd>備考：
 * 
 * @version 1.0 2011/06/22
 * @author 富士通
 */
@SuppressWarnings("serial")
public class KKW00128SFLogic extends JCCWebBusinessLogic
{

	/** サービス契約番号 */
	private String svc_kei_no = null;

	/** SYSID */
	private String sysid = null;

	/** 異動区分 */
	private String ido_div = null;

	// ANK-2477-00-00 2015/03/27 ADD START
	/** 契約者死亡登録有フラグ 1:有/0：無） */
	private String keisya_die_add_ari_flg = "0";
	// ANK-2477-00-00 2015/03/27 ADD END
	
	/*--<< 20151211 ANK-2693-00-00 ADD START >>--*/
	/** 外部システムコード*/
	private String syscd = null;
	/*--<< 20151211 ANK-2693-00-00 ADD  END  >>--*/
	/** ポップアップモード */
	private String popup_mode = null;

	/** お客様名 */
	private String cust_nm = null;

	/** 再表示フラグ */
	private boolean re_flg = false;

	/** サービス契約共通ヘッダ用マップ */
	private HashMap<String, Object> svc_kei_dataMap = new HashMap<String, Object>();

	// ▼▼▼▼▼ 2013/08/31 UPD START ▼▼▼▼▼
	/** マンションタイプ：プライベートの料金コースコード */
	private String[] mansionPrivatePcrsCd =
	{
			"A47", "A48", "A49", "A67", "A68", "A78"
	};
	// ▲▲▲▲▲ 2013/08/31 UPD E N D ▲▲▲▲▲
	//ANK-1918-00-00 ADD START
	/** マンションタイプ：グローバルの料金コースコード */
	private String[] mansionGlobalPcrsCd =
	{
	"A79","A80","A50","A51","A52","A53","A54","A55","A69","A70"
	};
	//ANK-1918-00-00 ADD END

	/** 顧客契約引継情報項目キー */
	private static final String[] CUST_KEI_HKTGI_KEYS =
	{
			JKKCommonConst.HKTGI_SYSID,
			JKKCommonConst.HKTGI_SVC_KEI_NO,
			JKKCommonConst.HKTGI_IDO_DIV,
			JKKCommonConst.HKTGI_IDO_RSN_CD,
			JKKCommonConst.HKTGI_IDO_RSN_MEMO,
			JKKCommonConst.HKTGI_POPUP_MODE,
			JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN,
			JKKCommonConst.HKTGI_SVC_CD,
			JKKCommonConst.HKTGI_PRC_GRP_CD,
			JKKCommonConst.HKTGI_PCRS_CD,
			JKKCommonConst.HKTGI_PPLAN_CD,
			JKKCommonConst.HKTGI_SVC_CD_BF,
			JKKCommonConst.HKTGI_PRC_GRP_CD_BF,
			JKKCommonConst.HKTGI_PCRS_CD_BF,
			JKKCommonConst.HKTGI_PPLAN_CD_BF,
			JKKCommonConst.HKTGI_WRIB_AUTO_APLY_TG_GAI_FLG
			/*--<< 20151211 ANK-2693-00-00 ADD START >>--*/
			,JKKCommonConst.HKTGI_SYSCD					//外部システムコード
			/*--<< 20151211 ANK-2693-00-00 ADD  END  >>--*/
	};
	
	/**
	 * CD00632 休止中断コード：中断中
	 * @since 2012-02-14 IT障害988対応
	 */
	private static final String CD00632_PAUSE = JKKCommonConst.PAUSE_STP_CD_02;
	
	/** PON種別コード E-PON */
	private static final String CD00211_E_PON = "1";
	/** 料金コースPON条件コード GE-PONのみ */
	private static final String CD00820_GE_PON_ONLY = "2";
	
	// IT1-2016-0000014 2016/01/27 ADD START
	/** 料金コースPON条件コード 10GE-PONのみ */
	private static final String CD00820_10GE_PON_ONLY = "4";
	// IT1-2016-0000014 2016/01/27 ADD END
	
	/** 割賦契約ステータス 締結済 */
	private static final String KAP_KEI_STAT_030 = "030";
	
	/** 顧客契約引継リスト 異動区分選択画面遷移パターン：親画面遷移パターン(一時的) */
	private static final String IDO_DIV_SENI_PTN_TMP_OYA_SENI = "99";
	
// IT1-2025-0000002対応 20250114 星野 DEL START
//	// OM-2013-0004223 2013/12/24 MOD START
//	/** 料金コース速度コード ペアID */
//	private static final String PCRS_SPEED_CD_04 = "04";
//	// OM-2013-0004223 2013/12/24 MOD END
// IT1-2025-0000002対応 20250114 星野 DEL END
	
	// IT1-2023-0000059 ADD START
	/** 機器変更有無（1:変更有） */
	private static final String KIKI_CHG_UM_1 = "1";
	/** ＨＧＷ交換不可フラグ（1:交換不可） */
	private static final String HGW_KKN_FFG_1 = "1";
// IT1-2023-0000059 ADD END
// ANK-4640-00-00 20250321 張 ADD START
	/** WAO連携要否（1:否） */
	private static final String WAO_RNKI_HI_1 = "1";
	/** NTT卸区分 */
	private String nttors_div = null;
	/** NTT卸判定フラグ */
	private boolean isTypeN = false;
	/** WAO連携要否登録フラグ */
	private boolean isWaornkiflg = false;
// ANK-4640-00-00 20250321 張 ADD END
//ANK-4640-06-00 20250422 張 ADD START
	/** WAO連携要否登録フラグ_否 */
	private boolean isWaornkiflgHi = false;
//ANK-4640-06-00 20250422 張 ADD END
	
	/**
	 * 登録画面初期表示処理
	 * 
	 * @return
	 * @throws Exception
	 */
	public boolean actionInit() throws Exception
	{

		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();

		// 遷移先画面IDを取得
		String screenId = commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		String screenName = "";
		
		// 遷移先画面IDから、行う表示処理を決定する
		if (JKKScreenConst.SCREEN_ID_KKW00128.equals(screenId))
		{
			actionInitKKW00128();

			screenName = JKKScreenConst.SCREEN_NAME_KKW00128;
		}
		else if (JKKScreenConst.SCREEN_ID_KKW00134.equals(screenId))
		{
			screenName = JKKScreenConst.SCREEN_NAME_KKW00134;
		}
		else if (JKKScreenConst.SCREEN_ID_KKW00140.equals(screenId))
		{
			screenName = JKKScreenConst.SCREEN_NAME_KKW00140;
		}
		
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, screenName);

		return true;
	}

	/**
	 * 登録画面初期表示処理
	 * 
	 * @throws	Exception
	 */
	@SuppressWarnings("unchecked")
	private void actionInitKKW00128() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 再表示の場合はセッション情報は受け取らない
		if (re_flg == false)
		{
			// 画面跨り共有情報編集処理
			getSessionKKW00128SFBean(svcFormBean);
		}

		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		HashMap<String, Object> outputMap = invokeInitService(paramBean);

		// 異動区分「回復」のときのみ
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
		{
			// 異動予約取消メッセージ表示
			JKKWebCommon.getIdoRsvCancelMsg(this, outputMap, "KKSV005954SC");
		}

		// 回復の場合、回復可能期間かどうかを確認
		itsOverKaihkPsbPrd(paramBean[0], outputMap);

		setPulldown(svcFormBean, outputMap, KKW00128SFConst.JIMU_COMMISION_LIST,       "KKSV005912SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.STDARD_KOJIHI_LIST,        "KKSV005913SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.STDARD_KOJIHI_DIV_LIST,    "KKSV005916SC", true);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.SKEKKA_TCHI_LIST,          "KKSV005918SC", true);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.SKEKKA_HOKI_LIST,          "KKSV005919SC", true);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.PON_SBT_LIST,              "KKSV005920SC", true);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.HUKA_INFO_LIST,            "KKSV005921SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.AD_FORM_LIST,              "KKSV005922SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.SHUGJ_NYUKYO_FLR_CNT_LIST, "KKSV005923SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.KJ_SCOPE_LIST,             "KKSV005924SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.INFO_JUJU_DOI_LIST,        "KKSV005925SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.ISETSU_DIV_LIST,           "KKSV005926SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.SAME_EQUIP_RE_MSKM_LIST,   "KKSV005927SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.TELNO_RRK_KIBO_TIME_LIST,  "KKSV005928SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.ROUTER_KIND_LIST,          "KKSV005929SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.NEWCONST_BUKKEN_LIST,      "KKSV005930SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.KJ_APO_RRKS_LIST,          "KKSV005931SC", false);
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.KJ_PON_SBT_LIST,           "KKSV005932SC", false);
		// ANK-3834-00-00 ADD START
		setPulldown(svcFormBean, outputMap, KKW00128SFConst.MALWARE_BLOCKING_UM_LIST,  "KKSV005967SC", false);
		// ANK-3834-00-00 ADD END
		
		// IT2-2013-0000251 mod start
		if (!JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div) && !JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			setPulldown(svcFormBean, outputMap, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "KKSV005915SC", true);
		}
		else
		{
			setPulldown(svcFormBean, outputMap, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "KKSV005915SC", false);
		}
		
		// 画面情報(隠し項目)編集処理
		sethiddenKKW00128SFBean(paramBean, outputMap);
		
		// 画面情報(リスト)編集処理
		setListKKW00128SFBean(svcFormBean);
		
		// 画面情報(テキスト)編集処理
		setTbxKKW00128SFBean(svcFormBean, outputMap);
		
		// ANK-1933-00-00 2014/02/20 ADD START
		//地図画面を開くための設定
		setMapGmnData(svcFormBean);
		// ANK-1933-00-00 2014/02/20 ADD END
		
// ▽▽▽ ANK-3412-15-00 ADD START
		// 工事情報の初期設定を行う。
		setInitKojiInfo(svcFormBean, outputMap);
// ▲▲▲ ANK-3412-15-00 ADD END
		
		// サービス契約共通項目の設定
		JKKWebCommon.setSvckeiInfo(this, getSvckeiCommonMap(outputMap, paramBean));
		
		String dslKiboYmd = "";
		Map<String, Object> kksv005941sc = (Map<String, Object>)outputMap.get("KKSV005941SC");
		if (kksv005941sc != null)
		{
			// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 START
			List<Map<String, Object>> eku0021a010msgList = (List<Map<String, Object>>)kksv005941sc.get("EKU0021A010CBSMsg1List");
			List<Map<String, Object>> eku0061a010msgList = (List<Map<String, Object>>)kksv005941sc.get("EKU0061A010CBSMsg1List");
			// 工事案件＜eo光ネット＞一意照会結果から取得
			if (eku0021a010msgList != null && eku0021a010msgList.size() > 0)
			{
				dslKiboYmd = (String)eku0021a010msgList.get(0).get("dsl_kibo_ymd");
			}
			// 工事案件＜eo光ネットマンション＞一意照会結果から取得
			else if (eku0061a010msgList != null && eku0061a010msgList.size() > 0)
			{
				dslKiboYmd = (String)eku0061a010msgList.get(0).get("dsl_kibo_ymd");
			}
			// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 END
		}
		setString(svcFormBean, "表示用解約希望日", dslKiboYmd);
		
		String manssbsysRnkiYoKijiran = "";
		if (
				!JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div)
				&& !JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div)
				&& !JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div)
		)
		{
			Map<String, Object> kksv005942sc = (Map<String, Object>)outputMap.get("KKSV005942SC");
			if (kksv005942sc != null)
			{
				List<Map<String, Object>> ekk0021a010msgList = (List<Map<String, Object>>)kksv005942sc.get("EKK0021A010CBSMsg1List");
				if (ekk0021a010msgList != null && ekk0021a010msgList.size() > 0)
				{
					manssbsysRnkiYoKijiran = (String)ekk0021a010msgList.get(0).get("manssbsys_rnki_yo_kijiran");
				}
			}
		}
		setString(svcFormBean, "マンション設備管理用記事欄", manssbsysRnkiYoKijiran);
		
		// ANK-4468-00-00 ADD START
		String NrkemtSvcKei = "";
		String PrcGrpCd = "";
		// 表示対象異動区分か判定を行う
		if(JKKStringUtil.isNullBlank(ido_div))
		{
			// サービス契約一意照会結果を取得
			Map<String, Object> kksv005903sc = (Map<String, Object>)outputMap.get("KKSV005903SC");
			if(kksv005903sc != null)
			{
				List<Map<String, Object>> ekk0081a010msgList = (List<Map<String, Object>>)kksv005903sc.get("EKK0081A010CBSMsg1List");
				if (ekk0081a010msgList != null && ekk0081a010msgList.size() > 0)
				{
					PrcGrpCd = (String)ekk0081a010msgList.get(0).get("prc_grp_cd");
				}
			}
			// ホームの場合
			if(JKKStrConst.CD00133_02.equals(PrcGrpCd))
			{
				// サービス契約<eo光ネット>一意照会結果を取得
				Map<String, Object> kksv005968sc = (Map<String, Object>)outputMap.get("KKSV005968SC");
				if (kksv005968sc != null)
				{
					List<Map<String, Object>> ekk0091a010msgList = (List<Map<String, Object>>)kksv005968sc.get("EKK0091A010CBSMsg1List");
					if (ekk0091a010msgList != null && ekk0091a010msgList.size() > 0)
					{
						NrkemtSvcKei = (String)ekk0091a010msgList.get(0).get("nrkemt_svkei_no");
					}
				}
			}
		}
		setString(svcFormBean, "表示用乗換元お客さまＩＤ", NrkemtSvcKei);
		// ANK-4468-00-00 ADD END
		
		// ANK-4427-00-00 ADD START
		String cafNo = "";
		String kojiYotei = "";
		String kojiKanryo = "";
				
		//WAO連携情報SCを取得
		Map<String, Object> waoMap = (Map<String, Object>)outputMap.get("KKSV005981SC");
		
		if(waoMap != null)
		{
			List<Map<String, Object>> ekk3531a010msgList = (List<Map<String, Object>>)waoMap.get("EKK3531A010CBSMsg1List");
			if (ekk3531a010msgList != null && ekk3531a010msgList.size() > 0)
			{
				//CAF番号、工事予定年月日、工事完了年月日を取得
				cafNo = (String)ekk3531a010msgList.get(0).get("caf_no");
				kojiYotei = (String)ekk3531a010msgList.get(0).get("takni_koji_fin_rsv_ymd");
				kojiKanryo = (String)ekk3531a010msgList.get(0).get("kojiak_jssi_ymd");
			}
			else{
				//CAF番号、工事予定年月日、工事完了年月日を空に設定
				cafNo = "";
				kojiYotei = "";
				kojiKanryo = "";
			}
		}
		//SFフォームに設定
		setString(svcFormBean, "CAF番号", cafNo);
		setString(svcFormBean, "工事予定年月日", kojiYotei);
		setString(svcFormBean, "工事完了年月日", kojiKanryo);
		
		//ANK-4640-07-00 20250519 張 ADD START
		//解約の際、WAO連携要否フラグの初期値を「否」にする。
		svcFormBean.sendMessageString(KKW00128SFConst.WAO_RNKI_YKS_FLG_DSL, X31CWebConst.DATABEAN_SET_VALUE, "1");
		//ANK-4640-07-00 20250519 張 ADD END
		
		//ANK-4427-00-00 ADD END
		
//ANK-4640-00-00 20250321 張 ADD START
        //NTT卸判定
		checkNtto(outputMap);
//ANK-4640-00-00 20250321 張 ADD END
		
		checkKoji(paramBean, outputMap);
		
		// 顧客契約引継リスト取得
		X31SDataBeanAccessArray custKeiHktgiList = svcFormBean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		
		// 異動区分選択画面遷移パターン
		String idoDivSeniPtn = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> bkHktgiDataMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		// 一時的な親画面遷移パターンの場合
		if (IDO_DIV_SENI_PTN_TMP_OYA_SENI.equals(idoDivSeniPtn))
		{
			// 自画面遷移パターンに戻す
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)bkHktgiDataMap.get(KKW00128SFConst.CUST_KEI_HKTGI_LIST);
			dataList.get(0).put(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI);
		}
		
		// 戻り時の情報を保持
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00128, bkHktgiDataMap);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
	}

	/**
	 * 初期表示サービス呼出処理
	 * @param	paramBean
	 * @return
	 */
	private HashMap<String, Object> invokeInitService(X31SDataBeanAccess[] paramBean)
	{
		HashMap<String, Object> paramMap  = null;		// ユースケースID格納用のHashMap
		HashMap<String, Object> inputMap  = null;		// マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> outputMap = null;		// サービス呼出結果を格納するHashMap

		paramMap  = new HashMap<String, Object>();
		inputMap  = new HashMap<String, Object>();
		outputMap = new HashMap<String, Object>();

		// サービスパラメタ設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID,   JKKCommonConst.UCID_KKSV0059);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0059OP);

		// 上りマッピング(サービス項目-DataBean項目マッピング)
		KKSV0059_KKSV0059OPDBMapper mapper = new KKSV0059_KKSV0059OPDBMapper();

		// 照会SC
		mapper.setKKSV005901SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV005902SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005903SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV005904SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005905SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV005907SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);	// 2013/02/05 IKK-2013-0000009 MOD
		mapper.setKKSV005908SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005909SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005912SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005913SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005914SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005915SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005916SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005917SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005918SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005919SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005920SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005921SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005922SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005923SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005924SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005925SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005926SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005927SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005928SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005929SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005930SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005931SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005932SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005933SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV005934SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005935SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005936SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005937SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005938SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005939SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005946SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005947SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005948SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		mapper.setKKSV005950SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005951SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005953SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005954SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005992SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005993SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005994SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005995CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005996CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005997SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005998SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// 20130604 IT1-2013-0001255 ADD START
		mapper.setKKSV005955SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// 20130604 IT1-2013-0001255 ADD END
 		
		// ANK-2423-00-00 ADD START
		mapper.setKKSV005959SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		// ANK-2423-00-00 ADD END
		
		// ▼▼ ANK-2480-00-00 新電力案件 ADD START ▼▼
		mapper.setKKSV005960SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005961SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// ▲▲ ANK-2480-00-00 新電力案件  ADD  END ▲▲
		
		// 2016/06/03 ANK-2687-00-00 ADD START
		mapper.setKKSV005962CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// 2016/06/03 ANK-2687-00-00 ADD END
// ▽▽▽ ANK-3412-00-00 ADD START
		mapper.setKKSV005965CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
// ▲▲▲ ANK-3412-00-00 ADD END
		// ANK-3834-00-00 ADD START
		mapper.setKKSV005967SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005968SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);;
		// ANK-3834-00-00 ADD END
// ANK-3840-00-00 ADD START
		mapper.setKKSV005969CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
// ANK-3840-00-00 ADD END
		// ANK-3987-00-00 ADD START
		mapper.setKKSV005970SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		mapper.setKKSV005971SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// ANK-3987-00-00 ADD END
		// ANK-4038-00-00 ADD START
		mapper.setKKSV005972SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005973SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		mapper.setKKSV005974SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		// ANK-4038-00-00 ADD END
		// OM-2021-0000633 ADD START
		mapper.setKKSV005977SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// OM-2021-0000633 ADD END
		// ANK-4174-00-00 ADD START
		mapper.setKKSV005977CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_4);
		// ANK-4427-00-00 ADD START
		mapper.setKKSV005981SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		// ANK-4427-00-00 ADD END
		
		// ANK-4174-00-00 ADD END
		
		// サービス契約情報更新(eo光ネット)初期表示サービス実行
		invokeService(paramMap, inputMap, outputMap);
		
		// 取得情報の下りマッピング
		mapper.getKKSV005901SC(paramBean, outputMap);
		mapper.getKKSV005903SC(paramBean, outputMap);
		mapper.getKKSV005904SC(paramBean, outputMap);
		mapper.getKKSV005905SC(paramBean, outputMap);
		mapper.getKKSV005906SC(paramBean, outputMap);
		mapper.getKKSV005907SC(paramBean, outputMap);
		mapper.getKKSV005908SC(paramBean, outputMap);
		mapper.getKKSV005909SC(paramBean, outputMap);
		mapper.getKKSV005910SC(paramBean, outputMap);
		mapper.getKKSV005911SC(paramBean, outputMap);
		mapper.getKKSV005933SC(paramBean, outputMap);
// ▽▽▽ ANK-3412-00-00 ADD START
		// コース変更可能一覧の取得前に１０ギガコースのエリアチェック結果を取得
		mapper.getKKSV005965CC(paramBean, outputMap);
// ▲▲▲ ANK-3412-00-00 ADD END
		mapper.getKKSV005936SC(paramBean, outputMap);
		mapper.getKKSV005936_01SC(paramBean, outputMap);
		mapper.getKKSV005937SC(paramBean, outputMap);
		mapper.getKKSV005940SC(paramBean, outputMap);
		mapper.getKKSV005945SC(paramBean, outputMap);
		mapper.getKKSV005946SC(paramBean, outputMap);
		mapper.getKKSV005947SC(paramBean, outputMap);
		mapper.getKKSV005948SC(paramBean, outputMap);
		mapper.getKKSV005950SC(paramBean, outputMap);
		mapper.getKKSV005951SC(paramBean, outputMap);
		mapper.getKKSV005952SC(paramBean, outputMap);
		mapper.getKKSV005953SC(paramBean, outputMap);
		mapper.getKKSV005994SC(paramBean, outputMap);
		mapper.getKKSV005995CC(paramBean, outputMap);
		mapper.getKKSV005996CC(paramBean, outputMap);
		mapper.getKKSV005997SC(paramBean, outputMap);
		// 20130604 IT1-2013-0001255 ADD START
		mapper.getKKSV005955SC(paramBean, outputMap);
		// 20130604 IT1-2013-0001255 ADD END
		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 START
		mapper.getKKSV005956SC(paramBean, outputMap);
		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 END
		//ANK-1918-00-00 ADD START
		mapper.getKKSV005958SC(paramBean, outputMap);
		//ANK-1918-00-00 ADD END
		
		// ANK-2423-00-00 ADD START
		mapper.getKKSV005959SC(paramBean, outputMap);
		// ANK-2423-00-00 ADD END
		
		// ▼▼ ANK-2480-00-00 新電力案件 ADD START ▼▼
		mapper.getKKSV005961SC(paramBean, outputMap);
		// ▲▲ ANK-2480-00-00 新電力案件  ADD  END ▲▲
// ANK-3095-00-00 ADD START
		mapper.getKKSV005963SC(paramBean, outputMap);
// ANK-3095-00-00 ADD END
// ANK-3210-00-00 ADD START
		mapper.getKKSV005964SC(paramBean, outputMap);
// ANK-3210-00-00 ADD END
// ANK-3834-00-00 ADD START
		mapper.getKKSV005968SC(paramBean, outputMap);
// ANK-3834-00-00 ADD END
// ANK-3987-00-00 ADD START
		mapper.getKKSV005970SC(paramBean, outputMap);
		mapper.getKKSV005971SC(paramBean, outputMap);
// ANK-3987-00-00 ADD END
// ANK-4038-00-00 ADD START
		mapper.getKKSV005975SC(paramBean, outputMap);
		mapper.getKKSV005976CC(paramBean, outputMap);
// ANK-4038-00-00 ADD END
// ANK-4129-00-00 ADD START
		mapper.getKKSV005976SC(paramBean, outputMap);
// ANK-4129-00-00 ADD END
		// OM-2021-0000633 ADD START
		mapper.getKKSV005977SC(paramBean, outputMap);
		// OM-2021-0000633 ADD END
        // ANK-4174-00-00 ADD START
		mapper.getKKSV005977CC(paramBean, outputMap);
        // ANK-4174-00-00 ADD END
		// ANK-4315-00-00 ADD START
		mapper.getKKSV005978SC(paramBean, outputMap);
        // ANK-4315-00-00 ADD END
		// ANK-4427-00-00 ADD START	
		mapper.getKKSV005981SC(paramBean, outputMap);
	 	// ANK-4427-00-00 ADD END	

		return outputMap;
	}
	
	/**
	 * 登録画面「登録確認」ボタン押下時処理
	 * 
	 * @return
	 * @throws Exception
	 */
	public boolean actionUpdcfm() throws Exception
	{
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		HashMap<String, Object> outputMap = new HashMap<String, Object>();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// IT2-2014-0000175 2014/04/02 ADD START
		// 地図を開くフラグのクリア
		svcFormBean.sendMessageString(KKW00128SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// IT2-2014-0000175 2014/04/02 ADD END
		
		
		//IT1-2023-0000059 2023/10/08 ADD START
		//ONU交換工事情報取得用
		mapOnukknkjinfstku(svcFormBean);
		//IT1-2023-0000059 2023/10/08 ADD END
		
		if (updcfmErrCheck(svcFormBean))
		{
			// チェック結果がエラーの場合、処理終了
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00128);
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00128);
			return false;
		}

		// サービスパラメタ設定
		setServiceParamater(ido_div, paramMap);

		// 登録用値(リストボックス)を編集する
		cfmListKKW00128SFBean(svcFormBean);

		// 登録用値(テキスト)を編集する
		cfmTbxKKW00128SFBean(svcFormBean);


		// マッピング用Bean作成
		X31SDataBeanAccess[] paramBean =
		{
			svcFormBean
		};


		// IT1-2013-0001103_インターネットオフィスへの引継による解約サービスが回復される 2013/05/03 START
		// サービスIFでチェックするようにしたためコメントアウト(メッセージIDもおかしい)
//		//2012-04-19 UI残_No.708 ADD_START
//		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div)){
//
//			X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
//			X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);
//			String hojinsvkei_hktgi_sbt_cd =  svc_kei_subbean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_GET_VALUE);
//			
//			if( "01".equals(hojinsvkei_hktgi_sbt_cd)) {
//				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2210_KW);
//				
//				return false;
//			}
//		}
		// IT1-2013-0001103_インターネットオフィスへの引継による解約サービスが回復される 2013/05/03 END

		// 異動区分が解約の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
		{
			boolean isNetOfHktg = getBoolean(paramBean[0], "インターネットオフィスへの引継ぎ");
			if (isNetOfHktg)
			{
				X31SDataBeanAccessArray pnlty_hassei_div_Info = svcFormBean
						.getDataBeanArray(KKW00128SFConst.PNLTY_HASSEI_DIV_LIST);
				X31SDataBeanAccess pnlty_hassei_div_subbean = pnlty_hassei_div_Info.getDataBean(0);
				String idx6 = pnlty_hassei_div_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
						X31CWebConst.DATABEAN_GET_VALUE);
				String upd_pnlty_hassei_cd = pnlty_hassei_div_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
						X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx6));
				if ("1".equals(upd_pnlty_hassei_cd))
				{
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA060__Q);
				}
				else {
					String[] str2 =
					{
						"違約金なし"
					};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, str2);
				}
			}
			
			// OM-2021-0000633 ADD START
			// ■コース変更予約チェック■
			// コース変更予約フラグ
			String cschRsvFlg = svcFormBean.sendMessageString(KKW00128SFConst.CSCH_RSV_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			
			// コース変更予約フラグが"1"(コース変更予約あり)の場合、エラー
			if ("1".equals(cschRsvFlg))
			{
				String[] errMsg = { "コース変更","予約中","解約"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1040_JW, errMsg);
				return false;
			}
			// OM-2021-0000633 ADD END
		}
		//ANK-4315-00-00 ADD START
		//コース変更時
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			//工事案件種別コード
			String kojiakSbtCd = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
			//工事案件ステータス
			String kojiakStat = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_STAT , X31CWebConst.DATABEAN_GET_VALUE);
			// IT1-2023-0000059 ADD START
			//申込書明細番号
			String mskmshoDtlNo = svcFormBean.sendMessageString(KKW00128SFConst.MSKMSHO_DTL_NO , X31CWebConst.DATABEAN_GET_VALUE);
			// IT1-2023-0000059 ADD END
			
			//工事案件種別がＯＮＵ交換工事かつ工事案件ステータスが開通工事前の場合、エラーメッセージを表示。
			// IT1-2023-0000062 MOD START
			// IT1-2023-0000050 MOD START
//			if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)))
			//if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)) && !("900".equals(kojiakStat)))
			// IT1-2023-0000050 MOD END
			if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && ("140".compareTo(kojiakStat) <= 0) && ("190".compareTo(kojiakStat) >= 0 ))
			// IT1-2023-0000062 MOD END
			{
				// IT1-2023-0000062 MOD START
				//String[] errMsg = { "ONU交換工事中","キャンセル又は解約"};
				String[] errMsg = { "ONU交換工事中","コース変更は登録"};
				// IT1-2023-0000062 MOD END
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5440_JW, errMsg);
				return false;
			}
			
			
		}
		//解約、またはキャンセルの場合
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div) || JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div))
		{	
			// サービス契約情報
			X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
			X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);
			//サービス契約ステータスを取得
			String svcKeiStat = svc_kei_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
					X31CWebConst.DATABEAN_GET_VALUE);
			//ｅｏ光ネットが開通前の場合
			if (JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0)
			{
				//工事案件種別コード
				String kojiakSbtCd = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
				//工事案件ステータス
				String kojiakStat = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_STAT , X31CWebConst.DATABEAN_GET_VALUE);
				//工事案件種別がＯＮＵ交換工事かつ工事案件ステータスが開通工事前の場合、エラーメッセージを表示。
				// IT1-2023-0000062 MOD START
				// IT1-2023-0000050 MOD START
//				if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)))
				//if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)) && !("900".equals(kojiakStat)))
				// IT1-2023-0000050 MOD END
				if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && ("140".compareTo(kojiakStat) <= 0) && ("190".compareTo(kojiakStat) >= 0 ))
				// IT1-2023-0000062 MOD END

				{
					String[] errMsg = { "ONU交換工事中（開通前）","キャンセル又は解約"};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5440_JW, errMsg);
					return false;
				}
			}
		}
		//ANK-4315-00-00 ADD END

		// 更新確認ボタン押下時はすべて機能コード"2"（チェック）を設定
		mapForDbUpd(paramBean, inputMap, JKKCommonConst.FUNC_CODE_2);

		// サービス呼出処理
		invokeService(paramMap, inputMap, outputMap);

		// サービス契約の件数を確認
		checkSvcKeiNum(paramBean, outputMap,  JKKCommonConst.FUNC_CODE_2);

		// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 START
		// エラーチェック
		if (checkError(paramBean, outputMap))
		{
			// エラーメッセージは設定済み
			// チェック結果がエラーの場合、処理終了
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00128);
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00128);
			return false;
		}
		// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 END

		// OM-2021-0000384 ADD START
		// 住所変更に伴うコース変更の異動予約がある場合エラーを表示する
		if(outputMap.containsKey("KKSV020298CC"))
		{
			HashMap<String, Object> kksv020298ccHash = (HashMap<String, Object>)outputMap.get("KKSV020298CC");
			if ("1".equals(kksv020298ccHash.get("err_cd")))  // 異動予約ありの場合
			{
				JCCWebCommon.setMessageInfo(this, "EKB1040-JW",new String[]{ "住所変更・登録（継続）","予約中","サービス契約料金プラン変更" });
				return false;
			}
		}
		// OM-2021-0000384 ADD END
		
		// 申込書明細番号重複チェック
		checkDbleMskmDslNo(paramBean, outputMap);
		
		// ANK-3987-00-00 ADD START
		//事務手数料「無」となる場合のメッセージを表示
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))//コース変更
		{
			if (chkSameSpeedCrsChg(svcFormBean))
			{
				//メッセージを表示
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF520__I);
			}
		}
		
		//サービス開始前のコース変更時「Netflixプレミアム」に登録済みの場合、エラーメッセージを表示
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			if (chkNetflixPremiumOP(svcFormBean))
			{
				String[] errMsg = { "Netflixプレミアム","登録済み","コース変更"};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1040_JW, errMsg);
				return false;
			}
		}
		// ANK-3987-00-00 ADD END
		
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
		{
			// ANK-3655-00-00 ADD START
			// 回復事務手数料がかかる場合はメッセージを表示
			
			String[] idoRsnCodeArray = getStringArray(svcFormBean, JKKCommonConst.HKTGI_IDO_RSN_CD);
			
			if (idoRsnCodeArray != null && idoRsnCodeArray.length > 0)
			{
				String idoRsnCD = idoRsnCodeArray[0];

				if (JKKCommonConst.IDO_RSN_CD_VALUE_T6.equals(idoRsnCD)) {
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF330__I);
				} 
			}
			
			// ANK-3655-00-00 ADD END

			// 回復の場合
			// 機能コード（チェックのみ）の場合、
			// バリューコード警告出力フラグ
			String valCdKkokuOputFlg = paramBean[0].sendMessageString(KKW00128SFConst.VAL_CD_KKOKU_OPUT_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.FLG_ON.equals(valCdKkokuOputFlg))
			{
				// バリューコード警告出力フラグが"1"(警告有り)の場合
				JCCWebCommon.setMessageInfo(this, "EKBB100--I");
			}
			
			// ANK-4287-00-00 ADD START
			// 機器オプション(ルーター機能)予約中の場合
			HashMap<String, Object> kksv019437ccMap= (HashMap<String, Object>)outputMap.get("KKSV0194137SC");
			if (kksv019437ccMap != null && kksv019437ccMap.containsKey("kikiOpRsvFlg"))
			{
				String kikiOpRsvFlg = (String) kksv019437ccMap.get("kikiOpRsvFlg");
				if("1".equals(kikiOpRsvFlg))
				{
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF760__I);
				}
			}
			// ANK-4287-00-00 ADD END
			
		}
		// ANK-0406-00-00 スマートバリュー ADD END
		
		// ANK-0572-00-00 請求書用部屋番号 ADD START
		if (JKKCommonConst.IDO_DIV_VALUE_00032.equals(ido_div) || JKKCommonConst.IDO_DIV_VALUE_00033.equals(ido_div))
		{
			// 部屋番号重複チェック
			HashMap<String, Object> map= (HashMap<String, Object>)outputMap.get("KKSV020031SC");
			if (map != null && map.containsKey("EKK0251B505CBSMsg1List"))
			{
				ArrayList ary = (ArrayList)map.get("EKK0251B505CBSMsg1List");
				HashMap<String, Object> cntMap = (HashMap<String, Object>)ary.get(0);
				int cnt = Integer.parseInt(String.valueOf(cntMap.get("cnt")));
				if (0 != cnt)
				{
					// 請求書用部屋番号
					String seikyusYoRmNo = getString(paramBean[0], KKW00128SFConst.SEIKYUS_YO_RM_NO);
					String[] str3 =
					{
							seikyusYoRmNo
					};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA550__Q, str3);
				}
			}
			
			// ST3-2013-0000040 2013/03/01 ADD START
			// EKK0251C030（サービス契約回線内訳内容変更）の住所最下層チェック
			KKSV0200_KKSV0200OPDBMapper mapper = new KKSV0200_KKSV0200OPDBMapper();
			mapper.getKKSV020013SC(paramBean, outputMap);
			
			String kisn_ad_chk_flg = getString(paramBean[0], KKW00128SFConst.KISN_AD_CHK_LV);
			if (kisn_ad_chk_flg != null &&  !"".equals(kisn_ad_chk_flg)){
				
				String[] str4 =
				{
						"利用場所住所"
				};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD290__Q, str4);
			}
			// ST3-2013-0000040 2013/03/01 ADD END
		}
		// ANK-0572-00-00 請求書用部屋番号 ADD END		
		// 20121001 ANK-0392-03-00 長期割引契約制度対応
		checkChokiWrib();
		
		// 20121001 ANK-0546-00-00 宅内PF
		checkKapKei();
		
		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125
		checkPcrsCgWribCpAly(paramBean, outputMap);
		
		// ANK-1429-00-00 住所変更に伴うVA移動機器登録の解除対応 2013/03/20
		checkAdchgRsv(paramBean, outputMap, JKKCommonConst.FUNC_CODE_2);

		// 20130604 IT1-2013-0001255 ADD START
		// サービス開始年月日チェック
		checkSvcStaYmd();
		
		// サービス利用開始希望年月日チェック
		checkSvcUseStaKiboYmd();
		
		// サービス解約年月日日チェック
		checkSvcEndYmd();
		// 20130604 IT1-2013-0001255 ADD END
		
		// ANK-2079-00-00 解約予約が入っていても即時解約の投入を可能とする 2014/06/16 藤田 ADD START
		// 解約予約の存在チェック
		checkDslPreExec(outputMap, ido_div, JKKCommonConst.FUNC_CODE_2);
		// ANK-2079-00-00 解約予約が入っていても即時解約の投入を可能とする 2014/06/16 藤田 ADD END
		
		// 表示用値を編集する
		dspTbxKKW00128SFBean(svcFormBean);
		
		// 共有フォームBean設定(サービス契約情報更新(eo光ネット)→サービス契約情報更新確認(eo光ネット))
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00134);
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00134);

		// サービス契約照会共通画面読み込み
		JKKWebCommon.setSvckeiInfo(this, svc_kei_dataMap);
		
		//  IT1-2013-0001239 2013/05/28 START
		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		
		String svc_kei_stat_h = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div) || JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div)) {
			
			if ("100".compareTo(svc_kei_stat_h) > 0)
			{
				JCCWebCommon.setMessageInfo(this, "EKBD670--I");
			}

		}
		// IT1-2013-0001239 2013/05/28 END

		//IT1-2014-0000024 20140107 START
		// JKKKkopSvcUseKeiUpdCCにてメッセージ表示用の処理があります。
		// 自動解約されたＶＡが存在する場合
		if (outputMap.containsKey("KKSV020292CC"))
		{
			// 物流CCマップ
			Map<String, Object> kikiopMap = (HashMap<String, Object>)outputMap.get("KKSV020292CC");

			// 宅内機器マップ
			List<Map<String, Object>> kikiopList = (List<Map<String, Object>>)kikiopMap.get("trgt_data_list");
			
			if (kikiopList != null && kikiopList.size() > 0) 
			{
				for (int r = 0; r < kikiopList.size(); r++)
				{
					Map<String, Object> kikiopMap2 = kikiopList.get(r);
					
					if(kikiopMap2.containsKey("VA_FLG"))
					{
						if ("1".equals( kikiopMap2.get("VA_FLG")))
						{
							JCCWebCommon.setMessageInfo(this, "EKBE096--Q",new String[]{ "コース変更","多機能ルーターへの交換となる","ＶＡの解約" });
							break;
						}
					}
				}
			}
		}
		//IT1-2014-0000024 20140107 END
		
		// メッセージ表示処理
		String[] str =
		{
			"更新"
		};
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, str);

		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div) 
				|| JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div)
				|| JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div)
				|| JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA350__I);
		}
		
		// 異動区分「00033：サービス情報訂正」
		if (JKKCommonConst.IDO_DIV_VALUE_00033.equals(ido_div))
		{
			String svcFlg = paramBean[0].sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_GET_VALUE);

			// マンションタイプ、メゾンタイプ
			if ("2".equals(svcFlg) || "3".equals(svcFlg) || "4".equals(svcFlg))
			{
				// 建物名
				String useplaceAdrttm = paramBean[0].sendMessageString(KKW00128SFConst.USEPLACE_ADRTTM, X31CWebConst.DATABEAN_GET_VALUE);
				// 親マンション名
				String oyaUseplaceAdrttm = paramBean[0].sendMessageString(KKW00128SFConst.OYA_USEPLACE_ADRTTM, X31CWebConst.DATABEAN_GET_VALUE);

				// 建物名、親マンション名が空でない場合
				if (useplaceAdrttm != null && !"".equals(useplaceAdrttm) && oyaUseplaceAdrttm != null && !"".equals(oyaUseplaceAdrttm))
				{
					// 建物名、親マンション名が一致しない場合
					if (! useplaceAdrttm.equals(oyaUseplaceAdrttm))
					{
						// 確認メッセージを出力する
						String[] str4 = { useplaceAdrttm, oyaUseplaceAdrttm };
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB7860__Q, str4);
					}
				}
			}
		}
		// ▲▲▲▲▲ 2012/10/19 ADD IT1-2012-0001425 E N D ▲▲▲▲▲

		// ANK-2631-00-00 2015/08/26 ADD START
		// 異動区分「00009：コース変更」
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			if(outputMap.containsKey("KKSV020278CC"))
			{
				Object kksv020278cc = outputMap.get("KKSV020278CC");
				if(kksv020278cc instanceof String)
				{
					String kksv020278ccStr = (String)kksv020278cc;
					if("WA".equals(kksv020278ccStr))
					{
						String[] errMsg = { "利用中のメールアドレス","存在しないため通知メールが送信できない状態","コース変更"};
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA880__Q,errMsg);
					}
				}
			}
// ▽▽▽ ANK-3412-00-00 ADD START
			// 自動交換ＣＣのエラーをチェックし、交換不可能パターンの場合エラーを表示する
			if(outputMap.containsKey("KKSV020296CC"))
			{
				HashMap<String, Object> kksv020296ccHash = (HashMap<String, Object>)outputMap.get("KKSV020296CC");
				if ("1".equals(kksv020296ccHash.get("err_cd")))  // 交換不可の場合
				{
					JCCWebCommon.setMessageInfo(this, "EKBF280-KW");
// ▽▽▽ ANK-3412-15-00 ADD START
					// 戻り値をエラーで返却されていなかった。エラーを返す様に修正
					return false;
// ▲▲▲ ANK-3412-15-00 ADD END
				}
			}
// ▲▲▲ ANK-3412-00-00 ADD END
		}
		// ANK-2631-00-00 2015/08/26 ADD END
// ANK-4516-00-00 ADD START
		// サービス情報訂正もしくは、登録情報修正
		if (JKKCommonConst.IDO_DIV_VALUE_00032.equals(ido_div) || JKKCommonConst.IDO_DIV_VALUE_00033.equals(ido_div))
		{
			// 
			// HGW付替不可フラグが更新されているかどうかを判定し、不可に設定変更された場合エラーメッセージを出力する
			// 
			
			// サービス契約回線内訳情報
			X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
			X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

			// サービス契約回線内訳．HGW交換不可フラグ
			String hgw_kkn_ffg = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.HGW_KKN_FFG, X31CWebConst.DATABEAN_GET_VALUE);

			// 表示用HGW交換不可フラグ
			boolean disp_hgw_kkn_flg = svcFormBean.sendMessageBoolean(KKW00128SFConst.DSP_HGW_KKN_FFG, X31CWebConst.DATABEAN_GET_VALUE);
			
			if ("1".equals(hgw_kkn_ffg) != disp_hgw_kkn_flg && disp_hgw_kkn_flg)
			{
				JCCWebCommon.setMessageInfo(this, "EKBF920--Q");
			}
		}
// ANK-4516-00-00 ADD END
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 登録画面「戻る」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionRn() throws Exception
	{

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// 遷移元画面の情報に顧客契約引継リストを付加する
		HashMap<String, Object> hktgiMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		String prevScreenId = JCCWebCommon.getScreenId(this);
		HashMap<String, Object> prevScreenInfo = JCCWebCommon.getScreenInfo(this, prevScreenId);
		
		if (null == prevScreenInfo)
		{
			prevScreenInfo = new HashMap<String, Object>();
		}
		for (Map.Entry<String, Object> entry : hktgiMap.entrySet())
		{
			prevScreenInfo.put(entry.getKey(), entry.getValue());
		}
		JCCWebCommon.setScreenInfo(this, prevScreenId, prevScreenInfo);
		
		// 共有フォームBean設定()
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getScreenId(this));
		
		return true;
	}

	/**
	 * 登録確認画面「確定」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionFix() throws Exception
	{
		// ユースケースID格納用のHashMap
		HashMap<String, Object> paramMap = null;
		// マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> inputMap = null;
		// サービス呼出結果を格納するHashMap
		HashMap<String, Object> outputMap = null;

		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		paramMap = new HashMap<String, Object>(); // パラメタマップ生成
		inputMap = new HashMap<String, Object>(); // インプットマップ生成
		outputMap = new HashMap<String, Object>(); // アウトプットマップ生成

		// マッピング用Bean作成
		X31SDataBeanAccess[] paramBean =
		{
			svcFormBean
		};

		// 登録用値(リストボックス)を編集する
		cfmListKKW00128SFBean(svcFormBean);

		// 登録用値(テキスト)を編集する
		cfmTbxKKW00128SFBean(svcFormBean);
		
		// 確定ボタン押下時はすべて機能コード"1"（チェック＆登録）を設定
		mapForDbUpd(paramBean, inputMap, JKKCommonConst.FUNC_CODE_1);
		
		//ANK-4315-00-00 ADD START
		//コース変更時
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			//工事案件種別コード
			String kojiakSbtCd = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
			//工事案件ステータス
			String kojiakStat = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_STAT , X31CWebConst.DATABEAN_GET_VALUE);
			//工事案件種別がＯＮＵ交換工事かつ工事案件ステータスが開通工事前の場合、エラーメッセージを表示。
			// IT1-2023-0000062 MOD START
			// IT1-2023-0000050 MOD START
//			if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)))
			//if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)) && !("900".equals(kojiakStat)))
			// IT1-2023-0000050 MOD END
			if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && ("140".compareTo(kojiakStat) <= 0) && ("190".compareTo(kojiakStat) >= 0 ))	
			// IT1-2023-0000062 MOD END
			{
				// IT1-2023-0000062 MOD START
				//String[] errMsg = { "ONU交換工事中","キャンセル又は解約"};
				String[] errMsg = { "ONU交換工事中","コース変更は登録"};
				// IT1-2023-0000062 MOD END
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5440_JW, errMsg);
				return false;
			}
		}
		//解約、またはキャンセルの場合
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div) || JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div))
		{
			// サービス契約情報
			X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
			X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);
			//サービス契約ステータスを取得
			String svcKeiStat = svc_kei_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
					X31CWebConst.DATABEAN_GET_VALUE);
			//ｅｏ光ネットが開通前の場合
			if (JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0)
			{
				//工事案件種別コード
				String kojiakSbtCd = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
				//工事案件ステータス
				String kojiakStat = svcFormBean.sendMessageString(KKW00128SFConst.KOJIAK_STAT , X31CWebConst.DATABEAN_GET_VALUE);
				//工事案件種別がＯＮＵ交換工事かつ工事案件ステータスが開通工事前の場合、エラーメッセージを表示。
				// IT1-2023-0000062 MOD START
				// IT1-2023-0000050 MOD START
//				if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)))
				//if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && !("200".equals(kojiakStat)) && !("900".equals(kojiakStat)))
				// IT1-2023-0000050 MOD END
				if (null != kojiakSbtCd && "015".equals(kojiakSbtCd) && null != kojiakStat && ("140".compareTo(kojiakStat) <= 0) && ("190".compareTo(kojiakStat) >= 0 ))		
				// IT1-2023-0000062 MOD END	
				{
					String[] errMsg = { "ONU交換工事中","キャンセル又は解約"};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB5440_JW, errMsg);
					return false;
				}
			}
		}
		//ANK-4315-00-00 ADD END

		// サービスパラメタ設定
		setServiceParamater(ido_div, paramMap);

		// サービス呼出処理
		invokeService(paramMap, inputMap, outputMap);

		// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 START
		// エラーチェック
		if (checkError(paramBean, outputMap))
		{
			// エラーメッセージは設定済み
			// チェック結果がエラーの場合、処理終了
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00134);
			svcFormBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00134);
			return false;
		}
		// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 END

		if (!JKKSvkeiUpdScreenUtil.executeAxMRnkSjisho(ido_div, sysid, this))
		{
			// DataBeanログ出力
			JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

			return false;
		}

		// 表示用値の編集
		dspTbxKKW00128SFBean(svcFormBean);
		
		// 共有フォームBean設定(サービス契約情報更新確認(eo光ネット)→サービス契約情報更新完了(eo光ネット))
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00140);
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00140);

		// サービス契約照会共通画面読み込み
		JKKWebCommon.setSvckeiInfo(this, svc_kei_dataMap);

		// メッセージ表示処理
		String[] str =
		{
			"更新"
		};
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB4390__I, str);

		// 異動区分：コース変更
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// コース変更時、割引自動適用CC呼出を行っていない為、キー名称は仮
			if (outputMap.containsKey("KKSV020231CC"))
			{
				// 物流CCマップ
				Map<String, Object> buturyMap = (HashMap<String, Object>)outputMap.get("KKSV020231CC");

				// 宅内機器マップ
				List<Map<String, Object>> taknKikiList = (List<Map<String, Object>>)buturyMap.get("taknkiki_info_list");

				// OM-2013-0004029 2013/11/21 MOD START
				if (taknKikiList != null && taknKikiList.size() > 0) 
				{
					for (int i = 0; i < taknKikiList.size(); i++)
					{
						Map<String, Object> taknKikiMap = taknKikiList.get(i);
	
						// 自動交換されたフラグが存在する場合
						if (taknKikiMap.containsKey("kksv0202flg"))
						{
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB9350__I);
							break;
						}
					}
				}
				// OM-2013-0004029 2013/11/21 MOD END
			}
			
			// ANK-2631-00-00 2015/08/26 ADD START
			if(outputMap.containsKey("KKSV020278CC"))
			{
				// OM-2019-0000915 ADD START
				if(outputMap.get("KKSV020278CC") instanceof String)
				{
					String returncd = (String)outputMap.get("KKSV020278CC");
					if ("WA".equals(returncd))
					{
						String[] errMsg = { "ネットコース変更登録完了メール","送信エラーの状態"};
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB8090__I,errMsg);
					}
				}
				else
				{
				// OM-2019-0000915 ADD END
					HashMap kksv020278ccMap = (HashMap)outputMap.get("KKSV020278CC");
					if(kksv020278ccMap != null)
					{
						Object mail_send_err_flg = kksv020278ccMap.get("mail_send_err_flg");
						if(mail_send_err_flg instanceof String)
						{
							String kksv020278ccStr = (String)mail_send_err_flg;
							if("1".equals(kksv020278ccStr))
							{
								String[] errMsg = { "ネットコース変更登録完了メール","送信エラーの状態"};
								JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB8090__I,errMsg);
							}
						}
					}
				// OM-2019-0000915 ADD START
				}
				// OM-2019-0000915 ADD END
			}
			// ANK-2631-00-00 2015/08/26 ADD END
			
		}

		// 異動区分が「00004:回復」「00005:解約」「キャンセル:00008」「00009:コース変更」の場合割引からのメッセージを取得する
		if (isNeedWrisvcMsg(ido_div))
		{
			Map<String, Object> wrisvcMap = getMsgList(ido_div, outputMap);

			ArrayList<HashMap<String, Object>> msgList = null;

			if (wrisvcMap != null && wrisvcMap.containsKey("msg_list"))
			{
				msgList = (ArrayList<HashMap<String, Object>>)wrisvcMap.get("msg_list");
				// メッセージ登録部品呼出
				JKKSetSessionMessage.setSessionMessage(this, msgList);
			}
		}
		
		// OM-2014-0004036 2015/01/16 ADD START
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div)) 
		{
			// 
			if (outputMap.containsKey("KKSV0194124SC"))
			{
				// KKSV0194124SCマップ
				Map<String, Object> kaifukuKanoMap = (HashMap<String, Object>)outputMap.get("KKSV0194124SC");
				// 「kaifuku_kano_ymd_err」の取得
				if (kaifukuKanoMap != null && kaifukuKanoMap.size() > 0 && kaifukuKanoMap.containsKey("kaifuku_kano_ymd_err")) {
					String kaifukuKanoErr = (String)kaifukuKanoMap.get("kaifuku_kano_ymd_err");
					if (kaifukuKanoErr != null && !"".equals(kaifukuKanoErr) &&  "1".equals(kaifukuKanoErr))
					{
						// kaifuku_kano_ymd_errが「１」の場合はエラーとして判断し、メッセージ[EKB3880--I]を表示する
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB3880__I);
					}
					else
					{
						// kaifuku_kano_ymd_errが「１」以外の場合はエラーなしとして何もしない
					}
				}
				else if (kaifukuKanoMap.size() == 0)
				{
					// kaifuku_kano_ymd_errが「１」の場合はエラーとして判断し、メッセージ[EKB3880--I]を表示する
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB3880__I);
				}
				else
				{
					// 何もしない
				}
			}
			// ▼ ANK-2646-00-00 2015/11/30 ADD START ▼
			if (outputMap.containsKey("KKSV0194128SC"))
			{
				// KKSV0194128SCマップ
				Map<String, Object> kikiSkipMap = (HashMap<String, Object>)outputMap.get("KKSV0194128SC");
				// 「kiki_connect_skip_info」の取得
				if (kikiSkipMap != null && kikiSkipMap.size() > 0 && kikiSkipMap.containsKey("kiki_connect_skip_info"))
				{
					String kikiSkipInfo = (String)kikiSkipMap.get("kiki_connect_skip_info");
					if (kikiSkipInfo != null && !"".equals(kikiSkipInfo) &&  "1".equals(kikiSkipInfo))
					{
						// kiki_connect_skip_infoが「１」の場合はメッセージ[EKBE197--I]を表示する
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE197__I);
					}
					else
					{
						// kiki_connect_skip_infoが「１」以外の場合はエラーなしとして何もしない
					}
				}
			}
			// ▲ ANK-2646-00-00 2015/11/30 ADD END ▲
		}
		// OM-2014-0004036 2015/01/16 ADD END
		
		// OM-2019-0001446 ADD START
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005))
		{
			if (outputMap.containsKey("KKSV019501CC"))
			{
				HashMap<String, Object> kksv019501cc = (HashMap<String, Object>)outputMap.get("KKSV019501CC");
				String kiki_rntai_kei_kkop_svc_dsl_Flg = (String) kksv019501cc.get("kiki_rntai_kei_kkop_svc_dsl_cnsl_Flg");
				if("1".equals(kiki_rntai_kei_kkop_svc_dsl_Flg))
				{
					String[] arg = {"解約"};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF390__I, arg);
				}
			}
		}
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00008))
		{
			if (outputMap.containsKey("trgt_data"))
			{
				HashMap<String, Object> kksv019601cc = (HashMap<String, Object>)outputMap.get("trgt_data");
				String kiki_rntai_kei_kkop_svc_dsl_Flg = (String) kksv019601cc.get("kiki_rntai_kei_kkop_svc_dsl_cnsl_Flg");
				if("1".equals(kiki_rntai_kei_kkop_svc_dsl_Flg))
				{
					String[] arg = {"キャンセル"};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBF390__I, arg);
				}
			}
		}
		// OM-2019-0001446 ADD END
		
		checkSvcKeiNum(paramBean, outputMap,  JKKCommonConst.FUNC_CODE_1);
		
		// ANK-1429-00-00 住所変更に伴うVA移動機器登録の解除対応 2013/03/20
		checkAdchgRsv(paramBean, outputMap, JKKCommonConst.FUNC_CODE_1);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 登録確認画面「修正」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionShusei() throws Exception
	{

		// ANK-1933-00-00 2014/02/20 ADD START
		// 地図を開くフラグのクリア
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		svcFormBean.sendMessageString(KKW00128SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// ANK-1933-00-00 2014/02/20 ADD END
		
		// 共有フォームBean設定(サービス契約情報更新確認(eo光ネット))
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00128);
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00128);

		// サービス契約照会共通画面読み込み
		JKKWebCommon.setSvckeiInfo(this, svc_kei_dataMap);

		return true;
	}

	/**
	 * 引き継ぎ情報を取得し、サービス契約情報更新(eo光ネット)サービスフォームBeanに設定する
	 * 
	 * @param svcFormBean
	 *            DataBeanアクセスクラス
	 * @throws Exception
	 */
	public void getSessionKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{
		// 引継情報を取得
		JCCWebCommon.getScreenInfo(this);
		X31SDataBeanAccessArray custKeiHktgiList = svcFormBean
				.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);

		ido_div = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		sysid = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSID, X31CWebConst.DATABEAN_GET_VALUE);
		svc_kei_no = custKeiHktgiInf
				.sendMessageString(JKKCommonConst.HKTGI_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		popup_mode = custKeiHktgiInf
				.sendMessageString(JKKCommonConst.HKTGI_POPUP_MODE, X31CWebConst.DATABEAN_GET_VALUE);
		/*--<< 20151211 ANK-2693-00-00 ADD START >>--*/
		//外部システムコード
		syscd = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSCD, X31CWebConst.DATABEAN_GET_VALUE);
		/*--<< 20151211 ANK-2693-00-00 ADD  END  >>--*/

		// 引継情報を第一階層に設定

		// 異動区分
		svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_SET_VALUE, ido_div);

		// SYSID
		svcFormBean.sendMessageString(KKW00128SFConst.SYS_ID, X31CWebConst.DATABEAN_SET_VALUE, sysid);

		// サービス契約番号
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_no);

		// 遷移区分
		svcFormBean.sendMessageString(KKW00128SFConst.POPUP_MODE, X31CWebConst.DATABEAN_SET_VALUE, popup_mode);

		/*--<< 20151211 ANK-2693-00-00 ADD START >>--*/
		//外部システムコード
		svcFormBean.sendMessageString(KKW00128SFConst.SYS_CD, X31CWebConst.DATABEAN_SET_VALUE, syscd);
		/*--<< 20151211 ANK-2693-00-00 ADD  END  >>--*/
		
		// 異動理由
		int maxIndex = (Integer)custKeiHktgiInf.sendMessage(JKKCommonConst.HKTGI_IDO_RSN_CD,
				X31CWebConst.DATABEAN_GET_COUNT);

		for (int i = 0; i < maxIndex; i++)
		{
			String idoRsnCd = custKeiHktgiInf
					.sendMessageString(JKKCommonConst.HKTGI_IDO_RSN_CD, X31CWebConst.DATABEAN_GET_VALUE, i);
			// ANK-2477-00-00 2015/03/27 ADD START
			// 契約者死亡登録 有無チェック
			if(JKKCommonConst.IDO_RSN_CD_VALUE_T5.equals(idoRsnCd))
			{
				// 「有」を設定
				keisya_die_add_ari_flg = "1";
			}
			else
			{
				
			}
			// ANK-2477-00-00 2015/03/27 ADD END
			svcFormBean.sendMessageString(KKW00128SFConst.IDO_RSN, X31CWebConst.DATABEAN_ADD_VALUE, idoRsnCd);
		}
		// ANK-2477-00-00 2015/03/27 ADD START
		// 契約者死亡登録有フラグ登録
		svcFormBean.sendMessageString(KKW00128SFConst.KEISYA_DIE_ADD_ARI_FLG, X31CWebConst.DATABEAN_SET_VALUE, keisya_die_add_ari_flg);
		// ANK-2477-00-00 2015/03/27 ADD END
		maxIndex = (Integer)svcFormBean.sendMessage(KKW00128SFConst.IDO_RSN, X31CWebConst.DATABEAN_GET_COUNT);

		//異動理由メモ
		String idoRsnMemo = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_RSN_MEMO, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.IDO_RSN_MEMO, X31CWebConst.DATABEAN_SET_VALUE, idoRsnMemo);
		
		// 運用年月日セット
		svcFormBean.sendMessageString(KKW00128SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDate(this, null));

		// 運用年月日時分秒セット
		svcFormBean.sendMessageString(KKW00128SFConst.UNYO_DTM, X31CWebConst.DATABEAN_SET_VALUE,
				JKKWebCommon.getOpeDateTimeStamp(this, null));

		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 START
		// 異動区分選択画面遷移パターン
		String idoDivSeniPtn = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_SET_VALUE, idoDivSeniPtn);

		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD START
		String wribAutoAplyTgGaiFlg =  custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_WRIB_AUTO_APLY_TG_GAI_FLG,X31CWebConst.DATABEAN_GET_VALUE);
		
		if (wribAutoAplyTgGaiFlg != null && !"".equals(wribAutoAplyTgGaiFlg)){
			// 異動区分
			svcFormBean.sendMessageString(KKW00128SFConst.WRIB_AUTO_APLY_TG_GAI_FLG, X31CWebConst.DATABEAN_SET_VALUE, wribAutoAplyTgGaiFlg);
		}
		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD END

		// ポップアップで起動された際、親画面遷移で画面情報を使用する場合があるため、再度セッションに設定する
		HashMap<String, Object> bkHktgiDataMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		// 一時的な親画面遷移パターンの場合
		if (IDO_DIV_SENI_PTN_TMP_OYA_SENI.equals(idoDivSeniPtn))
		{
			// 自画面遷移パターンに戻す
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)bkHktgiDataMap.get(KKW00128SFConst.CUST_KEI_HKTGI_LIST);
			dataList.get(0).put(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI);
		}
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00128, bkHktgiDataMap);
		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 END
	}

	/**
	 * 取得したデータをサービス契約情報更新(eo光ネット)サービスフォームBean(リスト系)に設定する
	 * 
	 * @param svcFormBean
	 *            DataBeanアクセスクラス
	 * @param outputMap
	 *            HashMap<String, Object>
	 * @throws Exception
	 */
	public void setListKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{
		// ********Subbeanセット**********
		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);

		// サービス契約回線内訳情報
		X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

		// 割引サービス
		X31SDataBeanAccessArray wribki_svc_kei_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0451B010CBSMSG1LIST);
		X31SDataBeanAccess wribki_svc_kei_subbean = wribki_svc_kei_Info.getDataBean(0);

		// 工事案件
		X31SDataBeanAccessArray koji_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0011A010BSMSG1LIST);
		X31SDataBeanAccess koji_subbean = koji_Info.getDataBean(0);

		// 工事案件＜eo光ネット＞情報
		X31SDataBeanAccessArray koji_net_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0021A010BSMSG1LIST);
		X31SDataBeanAccess koji_net_subbean = koji_net_Info.getDataBean(0);

		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 START
		// 工事案件＜eo光ネットマンション＞情報
		X31SDataBeanAccessArray koji_netmans_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0061A010BSMSG1LIST);
		String svcFlg = svcFormBean.sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		// ホームタイプ以外の場合
		if (!"1".equals(svcFlg))
		{
			koji_net_subbean = koji_netmans_Info.getDataBean(0);
		}
		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 END
		//ANK-1918-00-00 ADD START
		//工事が未連携なのかチェック(未連携ならサービス開始希望日を活性にする)
		//工事未連携フラグを設定
		boolean kojiNotRenFlg = false;
		//工事未連携チェック明細
		X31SDataBeanAccessArray koji_ren_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KOJI_NOT_REN_CHK_LIST_LIST);
		X31SDataBeanAccess koji_ren_Info_subbean = koji_ren_Info.getDataBean(0);
		//サービス契約の料金グループコードを取得
		String prcGrpCd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PRC_GRP_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
		//サービス契約の料金コースコードを取得
		String pcrsCd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PCRS_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
		//工事案件ステータスを取得
		String kojiakStatRenChk = koji_ren_Info_subbean.sendMessageString(KKW00128SFConst.KOJIAK_STAT_19, X31CWebConst.DATABEAN_GET_VALUE);
		//ANK-2410-00-00 MOD START
		//機器出荷予定日算出基準年月日を取得
		//String kkshkaRsvdSnststdYmd = koji_ren_Info_subbean.sendMessageString(KKW00128SFConst.KKSHKA_RSVD_SNSTSTD_YMD_19, X31CWebConst.DATABEAN_GET_VALUE);
		//マンション工事案件状態コードを取得
		String mansKojiakStatCd = koji_ren_Info_subbean.sendMessageString(KKW00128SFConst.MANS_KOJIAK_STAT_CD_19, X31CWebConst.DATABEAN_GET_VALUE);
		//ANK-2410-00-00 MOD END
		
		// ANK-2423-00-00 ADD START
		//サービス契約履歴一覧照会明細
		X31SDataBeanAccessArray ekk0081b024bean = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081B024CBSMSG1LIST_LIST);
		X31SDataBeanAccess ekk0081b024bean_subbean = ekk0081b024bean.getDataBean(0);
		
		// 異動区分(最古世代)を取得
		String idoDivOldest = ekk0081b024bean_subbean.sendMessageString(KKW00128SFConst.IDO_DIV_20, X31CWebConst.DATABEAN_GET_VALUE);
		// ANK-2423-00-00 ADD END
		
		if (JKKCommonConst.PRC_GRP_CD_04.equals(prcGrpCd))
		{
			//ANK-2410-00-00 ADD START
			//サービス契約ステータスを取得
			String svcKeiStat = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
					X31CWebConst.DATABEAN_GET_VALUE);
			//サービス契約ステータスが提供中未満の場合のみ工事未連携チェックを行う
			if(JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0)
				{
			//ANK-2410-00-00 ADD END
				// ANK-3387-00-00 MOD START
				////料金コースコードがマンションプライベートまたはグローバルの場合
				//if (isMansionPrivate(pcrsCd)||isMansionGlobal(pcrsCd))
				//料金コースコードがマンションプライベートまたはグローバルまたは光コンセント(提供方式パターンコードが"51")の場合
				if (isMansionPrivate(pcrsCd) || isMansionGlobal(pcrsCd) || isHikariConsent(svcFormBean))
				// ANK-3387-00-00 MOD END
				{
					// ANK-2423-00-00 ADD START
					// 登録異動起因が"サービス追加"かつサービス契約ステータスが"サービス提供中"未満の場合開始希望日を活性
					if (JKKCommonConst.IDO_DIV_VALUE_00002.equals(idoDivOldest))
					{
						//工事未連携フラグをON
						kojiNotRenFlg = true;
					}
					// ANK-2423-00-00 ADD END
					// ANK-2423-00-00 MOD START
//					if(kojiakStatRenChk != null && !"".equals(kojiakStatRenChk))
					else if(kojiakStatRenChk != null && !"".equals(kojiakStatRenChk))
					// ANK-2423-00-00 MOD END
					{
						//工事案件ステータスが 120(登録済)〜200(工事完了済) の場合
						if(JKUStrConst.CD00474_TOROKU_ZM.compareTo(kojiakStatRenChk) <= 0 && JKUStrConst.CD00474_KOJI_FIN_ZM.compareTo(kojiakStatRenChk) >= 0)
						{
							//ANK-2410-00-00 MOD START
							//機器出荷予定日算出基準年月日が設定されていない場合
							//if(kkshkaRsvdSnststdYmd == null || "".equals(kkshkaRsvdSnststdYmd))
							//マンション工事案件状態コードが200(工事完了済) 未満の場合
							if(JKUStrConst.MANS_KOJIAK_STAT_CD_KOJI_FIN_ZM.compareTo(mansKojiakStatCd)> 0)
							//ANK-2410-00-00 MOD END
							{	
								//工事未連携フラグをON
								kojiNotRenFlg = true;
							}
							else
							{
								//工事未連携フラグをOFF
								kojiNotRenFlg = false;
							}
						}
						else
						{
							//ANK-2410-00-00 DEL START
							//工事未連携フラグをON
							//kojiNotRenFlg = true;
							//ANK-2410-00-00 DEL END
						}
	
					}	
				}
				// 料金コースコードがマンションプライベートまたはグローバル以外の場合→光回線(光コンセント以外)
				else
				{
					// ANK-2423-00-00 ADD START
					// 登録異動起因が"サービス追加"かつサービス契約ステータスが"サービス提供中"未満の場合開始希望日を活性
					if (JKKCommonConst.IDO_DIV_VALUE_00002.equals(idoDivOldest))
					{
						//工事未連携フラグをON
						kojiNotRenFlg = true;
					}
					// ANK-2423-00-00 ADD END
					// ANK-2423-00-00 MOD START
//					if(kojiakStatRenChk != null && !"".equals(kojiakStatRenChk))
					else if(kojiakStatRenChk != null && !"".equals(kojiakStatRenChk))
					// ANK-2423-00-00 MOD END
					{
						//ANK-2410-00-00 MOD START
						//工事案件ステータスが 140(依頼済)〜200(工事完了済) の場合
						//if(JKUStrConst.CD00474_IRI_ZM.compareTo(kojiakStatRenChk) <= 0&& JKUStrConst.CD00474_KOJI_FIN_ZM.compareTo(kojiakStatRenChk) >= 0)
						//{
						//	//工事未連携フラグをOFF
						//	kojiNotRenFlg = false;
						//}
						//else
						//{
						//	//工事未連携フラグをON
						//	kojiNotRenFlg = true;
						//}
						//工事案件ステータスが 200(工事完了済) 未満の場合
						if(JKUStrConst.CD00474_KOJI_FIN_ZM.compareTo(kojiakStatRenChk) > 0)
						{
							//工事未連携フラグをOFF
							kojiNotRenFlg = true;
						}
						else
						{
							//工事未連携フラグをON
							kojiNotRenFlg = false;
						}
						//ANK-2410-00-00 MOD END
							
					}
				}
			//ANK-2410-00-00 ADD START
			}
			//ANK-2410-00-00 ADD END
			
		}
		svcFormBean.sendMessageString(KKW00128SFConst.KOJI_NOT_REN_FLG, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(kojiNotRenFlg).toLowerCase());
		//ANK-1918-00-00 ADD END
		// ********事務手・標準工事費**********
		// 異動区分がプラン変更の場合
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
// ▽▽▽ ANK-3412-14-00 Modify START
//			selectedPulldownIndex(svcFormBean, KKW00128SFConst.JIMU_COMMISION_LIST, "0");
//			String jimu_commision_nm = getPulldownMame(svcFormBean, KKW00128SFConst.JIMU_COMMISION_LIST, "0");
//			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JIMU_COMMISION_LIST, X31CWebConst.DATABEAN_SET_VALUE, "0"
//					+ "." + jimu_commision_nm);
//
//			selectedPulldownIndex(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_LIST, "0");
//			String kojihi_nm = getPulldownMame(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_LIST, "0");
//			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_HOKI_VALUE, X31CWebConst.DATABEAN_SET_VALUE, "0" + "."
//					+ kojihi_nm);
			// 事務手数料の初期化（有）
			String commisionCd = "02";
			
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.JIMU_COMMISION_LIST, commisionCd);
			String jimu_commision_nm = getPulldownMame(svcFormBean, KKW00128SFConst.JIMU_COMMISION_LIST, commisionCd);
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JIMU_COMMISION_LIST, X31CWebConst.DATABEAN_SET_VALUE, commisionCd
					+ "." + jimu_commision_nm);

			// 工事費(標準／無料／・・・)の初期化（標準）
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_DIV_LIST, "01");

			// 工事費有無（有）
			String kojihiUm = "1";
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_LIST, kojihiUm);
			String kojihi_nm = getPulldownMame(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_LIST, kojihiUm);
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_HOKI_VALUE, X31CWebConst.DATABEAN_SET_VALUE, kojihiUm + "."
					+ kojihi_nm);
// ▲▲▲ ANK-3412-14-00 Modify START
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JIMU_COMMISION_LIST, X31CWebConst.DATABEAN_SET_VALUE, "");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_HOKI_VALUE, X31CWebConst.DATABEAN_SET_VALUE, "");
		}

// ▽▽▽ ANK-3412-14-00 Modify START
//		// 異動区分がプラン変更または解約の場合
//		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009) || ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005))
		// 異動区分が解約の場合
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005))
// ▲▲▲ ANK-3412-14-00 Modify START
		{
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.STDARD_KOJIHI_DIV_LIST, "0");
		}

		// ********料金コース**********
		// 料金コースコード取得
		String pcrs_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PCRS_CD_03, X31CWebConst.DATABEAN_GET_VALUE);

		// 異動区分がプラン変更の場合
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// 更新モード時
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.PCRS_LIST, pcrs_cd);
		}
		else
		{
			// 照会モード時
			String pcrs_nm = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.PCRS_CD_NM_03,
					X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_PCRS_VALUE, X31CWebConst.DATABEAN_SET_VALUE, pcrs_nm);
		}

		// ********即割****************
		// 割引サービス契約No取得
		String wribki_svc_kei_no = wribki_svc_kei_subbean.sendMessageString(KKW00128SFConst.WRIB_SVC_KEI_NO_08,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 割引サービス契約Noチェック
		if (wribki_svc_kei_no.equals(""))
		{
			// 存在しない場合は無しをセット
			svcFormBean.sendMessageString(KKW00128SFConst.SKWARI_UM, X31CWebConst.DATABEAN_SET_VALUE, "無");
		}
		else
		{
			// 存在する場合は有をセット
			svcFormBean.sendMessageString(KKW00128SFConst.SKWARI_UM, X31CWebConst.DATABEAN_SET_VALUE, "有");
		}

		// ********違約金発生区分******
		// 違約金発生コード取得
		String pnlty_hassei_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PNLTY_HASSEI_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 異動区分がコース変更の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			// 違約金発生区分の初期値を「無」で設定する。
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "0");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE,
					X31CWebConst.DATABEAN_SET_VALUE, "無");
		// 異動区分が解約の場合
		}
		else if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
		{
			// 違約金発生区分の初期値を「有」で設定する。
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "1");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE,
					X31CWebConst.DATABEAN_SET_VALUE, "有");
		// 上記異動区分以外の場合
		}
		else
		{
			// 更新モード
			if ("0".equals(pnlty_hassei_cd))
			{
				selectedPulldownIndex(svcFormBean, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "0");
				svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE,
						X31CWebConst.DATABEAN_SET_VALUE, "無");
			}
			else if ("1".equals(pnlty_hassei_cd))
			{
				selectedPulldownIndex(svcFormBean, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "1");
				svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE,
						X31CWebConst.DATABEAN_SET_VALUE, "有");
			}
			else
			{
				selectedPulldownIndex(svcFormBean, KKW00128SFConst.PNLTY_HASSEI_DIV_LIST, "");
				svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE,
						X31CWebConst.DATABEAN_SET_VALUE, "");
			}
		}
		// ANK-3834-00-00 ADD START
		// ********マルウェアブロッキング有無********
		// マルウェアブロッキング無しフラグ取得
		String malware_blocking_non_flg = svcFormBean.sendMessageString(KKW00128SFConst.MALWARE_BLOCKING_NON_FLG,
				X31CWebConst.DATABEAN_GET_VALUE);
		if("1".equals(malware_blocking_non_flg))
		{
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.MALWARE_BLOCKING_UM_LIST, "0");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_MALWARE_BLOCKING_NON_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, "無");
		}
		else
		{
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.MALWARE_BLOCKING_UM_LIST, "1");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_MALWARE_BLOCKING_NON_FLG,
					X31CWebConst.DATABEAN_SET_VALUE, "有");
		}
		// ANK-3834-00-00 ADD END
		// ********審査結果通知********
		// 審査結果通知コード取得
		String skekka_tchi = svc_kei_subbean.sendMessageString(KKW00128SFConst.SKEKKA_TCHI_03,
				X31CWebConst.DATABEAN_GET_VALUE);
			selectedPulldownIndex(svcFormBean, KKW00128SFConst.SKEKKA_TCHI_LIST, skekka_tchi);

		// ********審査結果補記********
		// 審査結果補記コード取得
		String skekka_hoki = svc_kei_subbean.sendMessageString(KKW00128SFConst.SKEKKA_HOKI_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 更新モード
		selectedPulldownIndex(svcFormBean, KKW00128SFConst.SKEKKA_HOKI_LIST, skekka_hoki);
		String skekka_hoki_nm = getPulldownMame(svcFormBean, KKW00128SFConst.SKEKKA_HOKI_LIST, skekka_hoki);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_HOKI_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
				getLabelString(skekka_hoki, skekka_hoki_nm));
		// 20121106 ANK-1223-00-00_進捗補足事項編集対応 ADD START
		svcFormBean.sendMessageString(KKW00128SFConst.SKEKKA_HOKI_CD, X31CWebConst.DATABEAN_SET_VALUE, skekka_hoki);
		
		// ********PON種別*************
		// PON種別取得
		String pon_sbt = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.PON_SBT_CD_07,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 更新モード
		selectedPulldownIndex(svcFormBean, KKW00128SFConst.PON_SBT_LIST, pon_sbt);

		setString(svcFormBean, KKW00128SFConst.PON_SBT_CD, pon_sbt);

		// ********住居形態*************
		// 住居形態取得
		String ad_form_cd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.AD_FORM_CD_07,
				X31CWebConst.DATABEAN_GET_VALUE);

		String ad_form_nm = getPulldownMame(svcFormBean, KKW00128SFConst.AD_FORM_LIST, ad_form_cd);

		if (ad_form_cd.equals(""))
		{

		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JUKYO_FORM_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
					getLabelString(ad_form_cd, ad_form_nm));
		}

		// ********住居階数*************

		// 住居階数取得
		String flr_cnt_cd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.SHUGJ_NYUKYO_FLR_CNT_CD_07,
				X31CWebConst.DATABEAN_GET_VALUE);

		String flr_cnt_nm = getPulldownMame(svcFormBean, KKW00128SFConst.SHUGJ_NYUKYO_FLR_CNT_LIST, flr_cnt_cd);

		if (flr_cnt_cd.equals(""))
		{

		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JUKYO_FLR_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
					getLabelString(flr_cnt_cd, flr_cnt_nm));
		}

		// ********工事範囲*************
		String kj_scope = koji_net_subbean.sendMessageString(KKW00128SFConst.KJ_SCOPE_11,
				X31CWebConst.DATABEAN_GET_VALUE);
		String kj_scope_nm = getPulldownMame(svcFormBean, KKW00128SFConst.KJ_SCOPE_LIST, kj_scope);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_KJ_SCOPE, X31CWebConst.DATABEAN_SET_VALUE, getLabelString(
				kj_scope, kj_scope_nm));

		// ********情報授受同意*************
		String info_juju_doi = koji_subbean.sendMessageString(KKW00128SFConst.INFO_JUJU_DOI_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		String info_juju_doi_nm = getPulldownMame(svcFormBean, KKW00128SFConst.INFO_JUJU_DOI_LIST, info_juju_doi);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_INFO_JUJU_DOI, X31CWebConst.DATABEAN_SET_VALUE,
				getLabelString(info_juju_doi, info_juju_doi_nm));

		// ********移設区分*************
		String isetsu_div = koji_net_subbean.sendMessageString(KKW00128SFConst.ISETSU_DIV_11,
				X31CWebConst.DATABEAN_GET_VALUE);
		String isetsu_nm = getPulldownMame(svcFormBean, KKW00128SFConst.ISETSU_DIV_LIST, isetsu_div);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_ISETSU_DIV, X31CWebConst.DATABEAN_SET_VALUE, getLabelString(
				isetsu_div, isetsu_nm));

		// ********工事ＰＯＮ種別*************
		String koji_pon_sbt = koji_subbean.sendMessageString(KKW00128SFConst.KOJI_PON_SBT_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		String koji_pon_sbt_nm = getPulldownMame(svcFormBean, KKW00128SFConst.KJ_PON_SBT_LIST, koji_pon_sbt);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_PON_SBT2, X31CWebConst.DATABEAN_SET_VALUE, getLabelString(
				koji_pon_sbt, koji_pon_sbt_nm));

		// ********新築物件*************
		String newconst_bukken = koji_subbean.sendMessageString(KKW00128SFConst.NEWCONST_BUKKEN_CD_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		String newconst_bukken_nm = getPulldownMame(svcFormBean, KKW00128SFConst.NEWCONST_BUKKEN_LIST, newconst_bukken);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_NEWCONST_BUKKEN, X31CWebConst.DATABEAN_SET_VALUE,
				getLabelString(newconst_bukken, newconst_bukken_nm));

		// ********同一設備再申込*************
		String same_equip_re_mskm = koji_net_subbean.sendMessageString(KKW00128SFConst.SAME_EQUIP_RE_MSKM_11,
				X31CWebConst.DATABEAN_GET_VALUE);
		String same_equip_re_mskm_nm = getPulldownMame(svcFormBean, KKW00128SFConst.SAME_EQUIP_RE_MSKM_LIST,
				same_equip_re_mskm);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_SAME_EQUIP_RE_MSKM, X31CWebConst.DATABEAN_SET_VALUE,
				getLabelString(same_equip_re_mskm, same_equip_re_mskm_nm));

		// ********電話連絡希望時間帯*************
		String telno_rrk_kibo_time = koji_subbean.sendMessageString(KKW00128SFConst.TELNO_RRK_KIBO_TIME_CD_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		String telno_rrk_kibo_time_nm = getPulldownMame(svcFormBean, KKW00128SFConst.TELNO_RRK_KIBO_TIME_LIST,
				telno_rrk_kibo_time.trim());
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_TELNO_RRK_KIBO_TIME, X31CWebConst.DATABEAN_SET_VALUE,
				getLabelString(telno_rrk_kibo_time.trim(), telno_rrk_kibo_time_nm));

		// ********工事アポ連絡先*************
		String kj_apo_rrks = koji_subbean.sendMessageString(KKW00128SFConst.KJ_APO_RRKS_CD_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		String kj_apo_rrks_nm = getPulldownMame(svcFormBean, KKW00128SFConst.KJ_APO_RRKS_LIST, kj_apo_rrks);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_KJ_APO_RRKS, X31CWebConst.DATABEAN_SET_VALUE, getLabelString(
				kj_apo_rrks, kj_apo_rrks_nm));
	}

	/**
	 * 取得したデータをサービス契約情報更新(eo光ネット)サービスフォームBean(隠し項目)に設定する
	 * 
	 * @param svcFormBean
	 *            DataBeanアクセスクラス
	 * @param outputMap
	 *            HashMap<String, Object>
	 * @throws Exception
	 */
	public void sethiddenKKW00128SFBean(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap) throws Exception
	{
		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		// X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 隠し項目セット（休止中断区分）
		String pase_stp_cd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PAUSE_STP_CD_03);	//2012-02-14追加
		svcFormBean.sendMessageString(KKW00128SFConst.PAUSE_STP_DIV, X31CWebConst.DATABEAN_SET_VALUE, pase_stp_cd);

		// 隠し項目セット（サービス休止年月日）
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_PAUSE_YMD_H, X31CWebConst.DATABEAN_SET_VALUE, "");

		// 隠し項目セット（サービス契約ステータス隠し項目）
		// サービス契約ステータスにて、審査結果補記リストの項目制御をおこなう為
		String svc_kei_stat_h = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_H, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_stat_h);

		// SUB 隠し項目セット（運用日）
		svcFormBean.sendMessageString(KKW00128SFConst.OPE_YMD, X31CWebConst.DATABEAN_SET_VALUE, svcFormBean
				.sendMessageString(KKW00128SFConst.UNYO_YMD, X31CWebConst.DATABEAN_GET_VALUE));

		// SUB サービス判定（HT、MTの判定の為に必要）
		// 1:ホームタイプ 2:マンションタイプ 3:マンションタイプ（プライベート） 4:メゾンタイプ
		String svcFlg = "1";
		String pplanCdFlg = "0";

		String prcGrpCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PRC_GRP_CD_03);

		// マンションタイプ
		if (JKKCommonConst.PRC_GRP_CD_04.equals(prcGrpCd))
		{
			svcFlg = "2";
			String pcrsCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PCRS_CD_03);
			if (isMansionPrivate(pcrsCd))
			{
				svcFlg = "3";
			}
			
			String pplanCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PPLAN_CD_03);
			if (JKKCommonConst.PPLAN_CD_PA5611.equals(pplanCd)){
				pplanCdFlg = "1";
			}
		}
		// メゾンタイプ
		else if (JKKCommonConst.PRC_GRP_CD_03.equals(prcGrpCd))
		{
			svcFlg = "4";
		}
		// ANK-1296-00-00 eo64エア・IPテレメト対応 ADD START
		else if (JKKCommonConst.PRC_GRP_CD_01.equals(prcGrpCd))
		{
			// eo64エア
			svcFlg = "11";
		}
		else if (JKKCommonConst.PRC_GRP_CD_15.equals(prcGrpCd))
		{
			// IPテレメト
			svcFlg = "12";
		}
		// ANK-1296-00-00 eo64エア・IPテレメト対応 ADD END
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_SET_VALUE, svcFlg);
		
		svcFormBean.sendMessageString(KKW00128SFConst.PPLAN_CD_FLG, X31CWebConst.DATABEAN_SET_VALUE, pplanCdFlg);

		String oyaUseplaceAdrttm = "";
		// サービス契約情報
		HashMap<String, ArrayList<HashMap<String, String>>> svcKeiMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV005902SC");
		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);

				oyaUseplaceAdrttm = (String)svcKeiChildMap.get("mansion_nm");
			}
		}
		// 親マンション名
		svcFormBean.sendMessageString(KKW00128SFConst.OYA_USEPLACE_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, oyaUseplaceAdrttm);

		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD START
		// 変更前料金グループコード
		svcFormBean.sendMessageString(KKW00128SFConst.PRC_GRP_CD_BF, X31CWebConst.DATABEAN_SET_VALUE, prcGrpCd);
		// 変更前料金コースコード
		String pcrsCdbf = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PCRS_CD_03);
		svcFormBean.sendMessageString(KKW00128SFConst.PCRS_CD_BF, X31CWebConst.DATABEAN_SET_VALUE, pcrsCdbf);
		// 変更前料金プランコード
		String pplanCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PPLAN_CD_03);;
		svcFormBean.sendMessageString(KKW00128SFConst.PPLAN_CD_BF, X31CWebConst.DATABEAN_SET_VALUE, pplanCd);
		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD END
	}

	/**
	 * 取得したデータをサービス契約情報更新(eo光ネット)サービスフォームBean(テキスト系)に設定する
	 * 
	 * @param svcFormBean DataBeanアクセスクラス
	 * @param outputMap HashMap<String, Object>
	 * @throws Exception
	 */
	public void setTbxKKW00128SFBean(X31SDataBeanAccess svcFormBean, Map<String, Object> outputMap) throws Exception
	{
		// ****データSubBean定義****
		// サービス契約情報
		X31SDataBeanAccessArray svcKeiList = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svcKeiInfo = svcKeiList.getDataBean(0);
		
		// 備考
		setString(svcFormBean, KKW00128SFConst.BIKO,
				svcKeiInfo.sendMessageString(KKW00128SFConst.BIKO_03, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 20130604 IT1-2013-0001255 サービス契約内訳は未使用のため削除 DEL START
//		// ST2-2012-0000456 2012/03/22 MOD START
//		// サービス契約内訳情報
//		X31SDataBeanAccess svc_kei_ucwk_subbean = getUcwkBean(svcFormBean);
//		// ST2-2012-0000456 2012/03/22 MOD END
		// 20130604 IT1-2013-0001255 サービス契約内訳は未使用のため削除 DEL END
		
		// サービス契約回線内訳情報
		X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

		// 工事案件
		X31SDataBeanAccessArray koji_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0011A010BSMSG1LIST);
		X31SDataBeanAccess koji_subbean = koji_Info.getDataBean(0);

		// 工事案件＜eo光ネット＞情報
		X31SDataBeanAccessArray koji_net_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0021A010BSMSG1LIST);
		X31SDataBeanAccess koji_net_subbean = koji_net_Info.getDataBean(0);

		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 START
		// 工事案件＜eo光ネットマンション＞情報
		X31SDataBeanAccessArray koji_netmans_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.KU0061A010BSMSG1LIST);
		String svcFlg = svcFormBean.sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		// ホームタイプ以外の場合
		if (!"1".equals(svcFlg))
		{
			koji_net_subbean = koji_netmans_Info.getDataBean(0);
		}
		// LT-2013-0000279 サービス契約情報更新・照会画面の解約希望日が正しく表示されない 2013/07/08 END

		// ▼▼ ANK-2480-00-00 新電力案件 ADD START ▼▼
		// eo電気契約情報
		X31SDataBeanAccessArray eoElecKeiList = svcFormBean.getDataBeanArray(KKW00128SFConst.EKKA0040001CBSMSG2LIST);
		X31SDataBeanAccess eoElecKeiSubbean = eoElecKeiList.getDataBean(0);
		// ▲▲ ANK-2480-00-00 新電力案件  ADD  END ▲▲


		// 郵便番号
		String work_ad_pcd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_07,
				X31CWebConst.DATABEAN_GET_VALUE);

		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_1, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_ad_pcd, 0, 3));
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_2, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_ad_pcd, 3, 7));

		// 郵便番号編集
		work_ad_pcd = JPCUtilCommon.hyhunPcd(work_ad_pcd);
		String ad_pcd = "〒" + work_ad_pcd;
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_PCD, X31CWebConst.DATABEAN_SET_VALUE, ad_pcd);

		// 住所コード
		String work_ad_cd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_CD_07,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 住所コード編集
		work_ad_cd = JPCUtilCommon.hyhunAdCd(work_ad_cd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_CD, X31CWebConst.DATABEAN_SET_VALUE, work_ad_cd);

		// 竣工予定年月
		String work_shuko_rsv_ymd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_YMD_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_YEAR, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_shuko_rsv_ymd, 0, 4));
		svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_MON, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_shuko_rsv_ymd, 4, 6));

		// 年月編集
		work_shuko_rsv_ymd = JPCUtilCommon.formatDate(work_shuko_rsv_ymd);
		if(work_shuko_rsv_ymd != null && work_shuko_rsv_ymd.length() == 10)
		{
			work_shuko_rsv_ymd = work_shuko_rsv_ymd.substring(0,7);
		}
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_SHUNKO_RSV_YM, X31CWebConst.DATABEAN_SET_VALUE, work_shuko_rsv_ymd);

		//未確定チェック
		// 未確定フラグ設定
		String mi_fix_flg = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.AD_MI_FIX_FLG,
				X31CWebConst.DATABEAN_GET_VALUE);
		boolean ad_mi_fix_flg = false;
		
		if ("1".equals(mi_fix_flg))
		{
			ad_mi_fix_flg = true;
		}
		svcFormBean.sendMessageBoolean(KKW00128SFConst.DSP_AD_MI_FIX_FLG, X31CWebConst.DATABEAN_SET_VALUE, new Boolean(
				ad_mi_fix_flg));
				
		// ANK-4315-00-00 2023/04/11 ADD START
		//HGW交換不可チェック
		// HGW交換不可フラグ設定
		String hgw_ffg = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.HGW_KKN_FFG,
				X31CWebConst.DATABEAN_GET_VALUE);
		boolean hgw_kkn_ffg = false;
		
		if ("1".equals(hgw_ffg))
		{
			hgw_kkn_ffg = true;
		}
		svcFormBean.sendMessageBoolean(KKW00128SFConst.DSP_HGW_KKN_FFG, X31CWebConst.DATABEAN_SET_VALUE, new Boolean(
				hgw_kkn_ffg));
		// ANK-4315-00-00 2023/04/11 ADD END 
		
		// 区画整理中フラグ
		String kukaku_seiri_chu = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.KISN_PLC_KKK_SEIRI_CHU_FLG,
				X31CWebConst.DATABEAN_GET_VALUE);
		boolean kukaku_seiri_chu_flg = false;
		if ("1".equals(kukaku_seiri_chu))
		{
			kukaku_seiri_chu_flg = true;
		}
		svcFormBean.sendMessageBoolean(KKW00128SFConst.DSP_KUKAKU_SEIRI_CHU_FLG, X31CWebConst.DATABEAN_SET_VALUE, new Boolean(
				kukaku_seiri_chu_flg));

		// ST2-2012-0000989 2012/05/31 MOD START
		// 20130604 IT1-2013-0001255 サービス開始希望日を画面項目として追加したため変更 MOD START
//		// サービス開始年月日
//		Map<String, Object> kksv005903sc = (Map<String, Object>)outputMap.get("KKSV005903SC");
//		List<Map<String, Object>> ekk0081a010list = (List<Map<String, Object>>)kksv005903sc
//				.get("EKK0081A010CBSMsg1List");
//		setString(svc_kei_ucwk_subbean, KKW00128SFConst.SVC_STA_YMD_05, (String)ekk0081a010list.get(0).get(
//				"svc_sta_ymd"));
//		String svcStaYmd = getString(svc_kei_ucwk_subbean, KKW00128SFConst.SVC_STA_YMD_05);
//		// サービス開始年月日が空の場合、サービス利用開始希望年月日を設定する
//		if (svcStaYmd == null || "".equals(svcStaYmd))
//		{
//			svcStaYmd = (String)ekk0081a010list.get(0).get("svc_use_sta_kibo_ymd");
//		}
		
		// サービス開始年月日 ← サービス契約一意リスト.サービス開始年月日
		String svcStaYmd = svcKeiInfo.sendMessageString(KKW00128SFConst.SVC_STA_YMD_03,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 20130604 IT1-2013-0001255 サービス開始希望日を画面項目として追加したため変更 MOD END
		
		setString(svcFormBean, KKW00128SFConst.SVC_STA_YEAR, subString(svcStaYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_STA_MON, subString(svcStaYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_STA_DAY, subString(svcStaYmd, 6, 8));

		// 年月日編集
		setString(svcFormBean, KKW00128SFConst.SVC_STA_YMD, svcStaYmd);
		setString(svcFormBean, KKW00128SFConst.DSP_SVC_STA_YMD, JPCUtilCommon.formatDate(svcStaYmd));

		// 隠し項目セット（サービス開始年月日）
		setString(svcFormBean, KKW00128SFConst.SVC_STA_YMD_H, svcStaYmd);
	    // 2012-06-13 IT2-2012-0000721 ADD END
		
		// 20130604 IT1-2013-0001255 サービス開始希望日を追加 ADD START
		// サービス利用開始希望年月日 ← サービス契約一意リスト.サービス利用開始希望年月日
		String svcUseStaKiboYmd = svcKeiInfo.sendMessageString(KKW00128SFConst.SVC_USE_STA_KIBO_YMD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		
		// サービス利用開始希望年月日をbeanに設定
		setString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YEAR, subString(svcUseStaKiboYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_MON, subString(svcUseStaKiboYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_DAY, subString(svcUseStaKiboYmd, 6, 8));
		setString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YMD, svcUseStaKiboYmd);
		setString(svcFormBean, KKW00128SFConst.DSP_SVC_USE_STA_KIBO_YMD, JPCUtilCommon.formatDate(svcUseStaKiboYmd));
		// 20130604 IT1-2013-0001255 サービス開始希望日を追加 ADD END


		// サービス課金開始年月日
		String work_svc_chrg_staymd = svcKeiInfo.sendMessageString(KKW00128SFConst.SVC_CHRG_STAYMD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		// 年月日編集
		work_svc_chrg_staymd = JPCUtilCommon.formatDate(work_svc_chrg_staymd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_CHRG_STA_YMD, X31CWebConst.DATABEAN_SET_VALUE,
				work_svc_chrg_staymd);

		// サービス終了年月日
		String svcEndYmd = getString(svcKeiInfo, KKW00128SFConst.SVC_END_DTM_03);

		// 年月日が最大値だった場合は表示しない
		// 2012/10/24 IT1-2012-0001586 MOD START 値なし時の条件を追加
		if (svcEndYmd == null || "".equals(svcEndYmd) || isMaxYmd(svcEndYmd))
		{
			// 異動区分が「00005：解約」の場合は初期値に運用日を設定する
			if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
			{
				svcEndYmd = JCCWebCommon.getOpeDate(this, null);
			}
		}
		else
		{
			// 年月日編集
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_END_YMD, JPCUtilCommon.formatDate(svcEndYmd));
		}
		
		// サービス終了年月日が空白の場合
		if (svcEndYmd == null || "".equals(svcEndYmd) || isMaxYmd(svcEndYmd))
		{
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_END_YMD, "");
			setString(svcFormBean, KKW00128SFConst.SVC_END_YEAR, "");
			setString(svcFormBean, KKW00128SFConst.SVC_END_MON, "");
			setString(svcFormBean, KKW00128SFConst.SVC_END_DAY, "");
		}
		// 空白でない場合は編集してセット
		else
		{
			// 年月日編集
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_END_YMD, JPCUtilCommon.formatDate(svcEndYmd));
			setString(svcFormBean, KKW00128SFConst.SVC_END_YEAR, svcEndYmd.substring(0, 4));
			setString(svcFormBean, KKW00128SFConst.SVC_END_MON, svcEndYmd.substring(4, 6));
			setString(svcFormBean, KKW00128SFConst.SVC_END_DAY, svcEndYmd.substring(6, 8));
		}

		// 課金終了年月日ではなく解約起算年月日を設定(仮)
		// サービス課金終了年月日
		String svcChrgEndYmd = getString(svcKeiInfo, KKW00128SFConst.SVC_DSL_KISAN_YMD);

		// 年月日が最大値だった場合は表示しない
		if (svcChrgEndYmd == null || "".equals(svcChrgEndYmd) || isMaxYmd(svcChrgEndYmd))
		{
			// 異動区分が「00005：解約」の場合は初期値に運用日を設定する
			if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
			{
				svcChrgEndYmd = JCCWebCommon.getOpeDate(this, null);
			}
		}
		else
		{
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_CHRG_END_YMD, JPCUtilCommon.formatDate(svcChrgEndYmd));
		}
		
		// サービス終了年月日が空白の場合
		if (svcChrgEndYmd == null || "".equals(svcChrgEndYmd) || isMaxYmd(svcChrgEndYmd))
		{
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_CHRG_END_YMD, "");
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YEAR, "");
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_MON, "");
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_DAY, "");
			}
		// 空白でない場合は編集してセット
		else
		{
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_CHRG_END_YMD, JPCUtilCommon.formatDate(svcChrgEndYmd));
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YEAR, svcChrgEndYmd.substring(0, 4));
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_MON, svcChrgEndYmd.substring(4, 6));
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_DAY, svcChrgEndYmd.substring(6, 8));
		}

		String unyoYmd = JCCWebCommon.getOpeDate(this, null);

		// 利用停止日・利用再開日
		// 休止開始日・休止解除日・休止料金適用年月
		setSvcPauseStpInfo(svcFormBean, outputMap, svcKeiInfo, unyoYmd);

		// 入居予定年月日
		String work_nyukyo_rsv_ymd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.NYUKYO_RSV_YMD_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.NYUKYO_RSV_YEAR, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_nyukyo_rsv_ymd, 0, 4));
		svcFormBean.sendMessageString(KKW00128SFConst.NYUKYO_RSV_MON, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_nyukyo_rsv_ymd, 4, 6));
		svcFormBean.sendMessageString(KKW00128SFConst.NYUKYO_RSV_DAY, X31CWebConst.DATABEAN_SET_VALUE, subString(
				work_nyukyo_rsv_ymd, 6, 8));
		// 年月日編集
		work_nyukyo_rsv_ymd = JPCUtilCommon.formatDate(work_nyukyo_rsv_ymd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_NYUKYO_RSV_YMD, X31CWebConst.DATABEAN_SET_VALUE,
				work_nyukyo_rsv_ymd);

		// 面開発登録
		String add_flg = svcKeiInfo.sendMessageString(KKW00128SFConst.MENKAIHAT_ANKEN_KR_ADD_FLG_03,
				X31CWebConst.DATABEAN_GET_VALUE);

		if (add_flg.equals("1"))
		{
			svcFormBean.sendMessageString(KKW00128SFConst.MENKAIHAT_ADD, X31CWebConst.DATABEAN_SET_VALUE, "面開発登録データ");
		}
		
		// ANK-1933-00-00 2014/02/20 ADD START
		//経度、緯度をsvcFormBeanにセット
		svcFormBean.sendMessageString(KKW00128SFConst.LGTD, X31CWebConst.DATABEAN_SET_VALUE,
				svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.LGTD_07,X31CWebConst.DATABEAN_GET_VALUE));
		svcFormBean.sendMessageString(KKW00128SFConst.LTTD, X31CWebConst.DATABEAN_SET_VALUE,
				svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.LTTD_07,X31CWebConst.DATABEAN_GET_VALUE));
		// ANK-1933-00-00 2014/02/20 ADD END

		// **************工事データセット************
		// 工事希望年月日
		String work_kjkibo_ymd = koji_subbean.sendMessageString(KKW00128SFConst.KJ_KIBO_YMD_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		work_kjkibo_ymd = JPCUtilCommon.formatDate(work_kjkibo_ymd);
		svcFormBean
				.sendMessageString(KKW00128SFConst.DSP_KJ_KIBO_YMD, X31CWebConst.DATABEAN_SET_VALUE, work_kjkibo_ymd);

		// 解約年月日
		String work_dsl_ymd = koji_net_subbean.sendMessageString(KKW00128SFConst.DSL_YMD_11,
				X31CWebConst.DATABEAN_GET_VALUE);
		work_dsl_ymd = JPCUtilCommon.formatDate(work_dsl_ymd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_DSL_YMD, X31CWebConst.DATABEAN_SET_VALUE, work_dsl_ymd);

		// アポ期限
		String workApoYmd = koji_subbean.sendMessageString(KKW00128SFConst.KJ_KIBO_APO_KIGEN_YMD_10,
				X31CWebConst.DATABEAN_GET_VALUE);
		workApoYmd = JPCUtilCommon.formatDate(workApoYmd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_KJ_KIBO_APO_KIGEN_YMD, X31CWebConst.DATABEAN_SET_VALUE,
				workApoYmd);

		// 復活案件
		String work_hukkat_anken = koji_net_subbean.sendMessageString(KKW00128SFConst.HUKKAT_ANKEN_11,
				X31CWebConst.DATABEAN_GET_VALUE);
		if (("1").equals(work_hukkat_anken))
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_HUKKAT_ANKEN, X31CWebConst.DATABEAN_SET_VALUE, "復活案件");
		}

		// 法人サービス契約引継ぎ種別コード
		String hojinsvkei_hktgi_sbt_cd = svcKeiInfo.sendMessageString("法人サービス契約引継ぎ種別コード",X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_SET_VALUE, hojinsvkei_hktgi_sbt_cd);

		if (hojinsvkei_hktgi_sbt_cd.equals("01"))
		{
			svcFormBean.sendMessageBoolean("インターネットオフィスへの引継ぎ", X31CWebConst.DATABEAN_SET_VALUE, true);
		}
		else{
			svcFormBean.sendMessageBoolean("インターネットオフィスへの引継ぎ", X31CWebConst.DATABEAN_SET_VALUE, false);
		}

		String webOpDontAddFlg = getString(svcKeiInfo, KKW00128SFConst.WEB_OP_ADD_FAIL_FLG_03);
		if ("1".equals(webOpDontAddFlg)) {
			svcFormBean.sendMessageBoolean("ＷＥＢオプション追加不可", X31CWebConst.DATABEAN_SET_VALUE, true);
		}
		// 20121001 ANK-0392-03-00 長期割引契約制度対応
		String wribSvcKeiNoChokiWrib = getString(svcFormBean, KKW00128SFConst.WRIB_SVC_KEI_NO_CHOKI_WRIB);
		if (wribSvcKeiNoChokiWrib != null && !"".equals(wribSvcKeiNoChokiWrib)) 
		{
			svcFormBean.sendMessageString(KKW00128SFConst.CHOWARI_UM, X31CWebConst.DATABEAN_SET_VALUE, "有");
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.CHOWARI_UM, X31CWebConst.DATABEAN_SET_VALUE, "無");
		}
		// 20121001 ANK-0546-00-00 宅内PF ADD START
		HashMap<String, Object> kksv005998sc = (HashMap<String, Object>)outputMap.get("KKSV005998SC");
		List<HashMap<String, Object>> eKK2541B004CBSMsg1List = (List<HashMap<String, Object>>)kksv005998sc.get("EKK2541B004CBSMsg1List");
		if(eKK2541B004CBSMsg1List != null && eKK2541B004CBSMsg1List.size() > 0)
		{
			for (HashMap<String, Object>eKK2541B004CBSMsg1: eKK2541B004CBSMsg1List)
			{
				// 割賦契約ステータス
				String kapKeiStat = (String)eKK2541B004CBSMsg1.get("kap_kei_stat");
				if(kapKeiStat != null && !"".equals(kapKeiStat))
				{
					//割賦契約ステータス＝’締結済’(割賦で支払っている途中)の場合
					if(KAP_KEI_STAT_030.equals(kapKeiStat))
					{
						svcFormBean.sendMessageString(KKW00128SFConst.KAP_KEI_KKOKU_OPUT_FLG, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.FLG_ON);
						break;
					}
				}
			}
		}
		
		// ▼▼▼ ANK-2480-00-00 新電力案件 ADD START ▼▼▼
		// 同一利用場所・eo電気
		String svcKeiNo = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.SVC_KEI_NO_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashStateNm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_STATE_NM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashCityNm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_CITY_NM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashOaztsuNm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_OAZTSU_NM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashAzchoNm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_AZCHO_NM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashBnchigo = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_BNCHIGO_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashAdrttm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_ADRTTM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String ryobashAdrrm = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.RYOBSH_ADRRM_21,X31CWebConst.DATABEAN_GET_VALUE);
		String kykychtnTktNo = eoElecKeiSubbean.sendMessageString(KKW00128SFConst.KYKYCHTN_TKT_NO_21,X31CWebConst.DATABEAN_GET_VALUE);
		
		String kaisenSamePlcEoelec = null;
		if(svcKeiNo != null && !"".equals(svcKeiNo)){
			kaisenSamePlcEoelec = svcKeiNo + ":" + kykychtnTktNo + ":" + 
												ryobashStateNm + ryobashCityNm + ryobashOaztsuNm + ryobashAzchoNm + ryobashBnchigo + ryobashAdrttm + ryobashAdrrm;
		}
		svcFormBean.sendMessageString(KKW00128SFConst.KAISEN_SAME_PLC_EOELEC, X31CWebConst.DATABEAN_SET_VALUE, kaisenSamePlcEoelec);
		// ▲▲▲ ANK-2480-00-00 新電力案件  ADD  END ▲▲▲
		// ANK-4038-00-00 ADD START
		// コンセント設置内容
		String consnt_stc_ny = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.CONSNT_STC_NYO_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
		HashMap<String, Object> kksv005972sc = (HashMap<String, Object>)outputMap.get("KKSV005972SC");
		List<HashMap<String, Object>> eZM0171B010CBSMsg1List3 = (List<HashMap<String, Object>>)kksv005972sc.get("EZM0171B010CBSMsg1List");
		if(eZM0171B010CBSMsg1List3 != null && eZM0171B010CBSMsg1List3.size() > 0)
		{
			for (HashMap<String, Object>eZM0171B010CBSMsg3: eZM0171B010CBSMsg1List3)
			{
				// コード区分
				String cdDiv = (String)eZM0171B010CBSMsg3.get("cd_div");
				if(cdDiv != null && !"".equals(cdDiv))
				{
					
					if(cdDiv.equals(consnt_stc_ny))
					{
						// コード区分と一致
						String cdDivNm = (String)eZM0171B010CBSMsg3.get("cd_div_nm");
						svcFormBean.sendMessageString(KKW00128SFConst.DSP_CONSNT_STC_NY, X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);
						break;
					}
				}
			}
		}

		// 局のONU
		String kyokuOnu = svcFormBean.sendMessageString(KKW00128SFConst.KYOKU_ONU, X31CWebConst.DATABEAN_GET_VALUE);
		HashMap<String, Object> kksv005973sc = (HashMap<String, Object>)outputMap.get("KKSV005973SC");
		List<HashMap<String, Object>> eZM0171B010CBSMsg1List = (List<HashMap<String, Object>>)kksv005973sc.get("EZM0171B010CBSMsg1List");
		if(eZM0171B010CBSMsg1List != null && eZM0171B010CBSMsg1List.size() > 0)
		{
			for (HashMap<String, Object>eZM0171B010CBSMsg1: eZM0171B010CBSMsg1List)
			{
				// コード区分
				String cdDiv = (String)eZM0171B010CBSMsg1.get("cd_div");
				if(cdDiv != null && !"".equals(cdDiv))
				{
					
					if(cdDiv.equals(kyokuOnu))
					{
						// コード区分と一致
						String cdDivNm = (String)eZM0171B010CBSMsg1.get("cd_div_nm");
						svcFormBean.sendMessageString(KKW00128SFConst.DSP_KYOKU_ONU, X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);
						break;
					}
				}
			}
		}
		
		// ＣＴ空き有無
		String ctAki = svcFormBean.sendMessageString(KKW00128SFConst.CT_AKI, X31CWebConst.DATABEAN_GET_VALUE);
		HashMap<String, Object> kksv005974sc = (HashMap<String, Object>)outputMap.get("KKSV005974SC");
		List<HashMap<String, Object>> eZM0171B010CBSMsg1List2 = (List<HashMap<String, Object>>)kksv005974sc.get("EZM0171B010CBSMsg1List");
		if(eZM0171B010CBSMsg1List2 != null && eZM0171B010CBSMsg1List2.size() > 0)
		{
			for (HashMap<String, Object>eZM0171B010CBSMsg2: eZM0171B010CBSMsg1List2)
			{
				// コード区分
				String cdDiv = (String)eZM0171B010CBSMsg2.get("cd_div");
				if(cdDiv != null && !"".equals(cdDiv))
				{
					
					if(cdDiv.equals(ctAki))
					{
						// コード区分と一致
						String cdDivNm = (String)eZM0171B010CBSMsg2.get("cd_div_nm");
						svcFormBean.sendMessageString(KKW00128SFConst.DSP_CT_AKI, X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);
						break;
					}
				}
			}
		}

		// コース変更工事スキップ対象
		String rozettChkRslt = svcFormBean.sendMessageString(KKW00128SFConst.ROZETT_CHK_RSLT, X31CWebConst.DATABEAN_GET_VALUE);
		
		if(JKKStrConst.ROZETT_CHK_RSLT_1.equals(rozettChkRslt)){
			svcFormBean.sendMessageString(KKW00128SFConst.CRSHEN_KJSKP_TAISHO, X31CWebConst.DATABEAN_SET_VALUE, "対象");
		}else{
			svcFormBean.sendMessageString(KKW00128SFConst.CRSHEN_KJSKP_TAISHO, X31CWebConst.DATABEAN_SET_VALUE, "非対象");
		}

		// ANK-4038-00-00 ADD END
	}

	/**
	 * サービス契約情報更新確認(eo光ネット)サービスフォームBean(リスト系)のを設定する
	 * 
	 * @param paramBean
	 * @param svcFormBean
	 *            DataBeanアクセスクラス
	 * @throws Exception
	 */
	public void cfmListKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{

		// ***事務手数料***
		// 事務手数料のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray jimu_commision_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.JIMU_COMMISION_LIST);
		X31SDataBeanAccess jimu_commision_subbean = jimu_commision_Info.getDataBean(0);
		String idx1 = jimu_commision_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 事務手数料が非活性の場合は空文字をセット
		if (idx1 == null || idx1.length() == 0)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JIMU_COMMISION_LIST, X31CWebConst.DATABEAN_SET_VALUE, "");
			idx1 = "0";
		}
		else
		{
			String dsp_jimu_commision = jimu_commision_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx1));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_JIMU_COMMISION_LIST, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_jimu_commision);
		}
		
		String jimuCommision = jimu_commision_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx1));
		if(!"04".equals(jimuCommision))
		{
			//指定額以外は金額をクリア
			svcFormBean.sendMessageString(KKW00128SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		
		
		// ***標準工事費***
		// 標準工事費のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray stdard_kojihi_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.STDARD_KOJIHI_LIST);
		X31SDataBeanAccess stdard_kojihi_subbean = stdard_kojihi_Info.getDataBean(0);
		String idx2 = stdard_kojihi_subbean
				.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);

		// 標準工事費が非活性の場合は空文字をセット
		if (idx2 == null || idx2.length() == 0)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_LIST, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		else
		{
			String dsp_stdard_kojihi = stdard_kojihi_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx2));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_LIST, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_stdard_kojihi);
		}

		// ***標準工事費（区分）***
		// 標準工事費（区分）のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray stdard_kojihi_div_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.STDARD_KOJIHI_DIV_LIST);
		X31SDataBeanAccess stdard_kojihi_div_subbean = stdard_kojihi_div_Info.getDataBean(0);
		String idx3 = stdard_kojihi_div_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 標準工事費（区分）が非活性の場合は「無」をセット
		if (idx3 == null || idx3.length() == 0)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_DIV_VALUE, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		else
		{
			String dsp_stdard_kojihi_div = stdard_kojihi_div_subbean.sendMessageString(
					KKW00128SFConst.CD_DIV_NM_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx3));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_DIV_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_stdard_kojihi_div);

		}
		
		// ***料金プラン、即割***
		// 異動区分がプラン変更の場合
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// 料金プランのセット（リストボックスからの選択値の取得）
			X31SDataBeanAccessArray pcrs_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrs_subbean = pcrs_Info.getDataBean(0);
			String idx4 = pcrs_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);
			String dsp_pcrs = pcrs_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx4));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_PCRS_VALUE, X31CWebConst.DATABEAN_SET_VALUE, dsp_pcrs);
		}

		// ***違約金発生区分***
		// 違約金発生区分のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray pnlty_hassei_div_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.PNLTY_HASSEI_DIV_LIST);
		X31SDataBeanAccess pnlty_hassei_div_subbean = pnlty_hassei_div_Info.getDataBean(0);

		String idx6 = pnlty_hassei_div_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
				X31CWebConst.DATABEAN_GET_VALUE);
		String upd_pnlty_hassei_cd = pnlty_hassei_div_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx6));
		String dsp_pnlty_hassei_div = pnlty_hassei_div_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx6));

		svcFormBean.sendMessageString(KKW00128SFConst.PNLTY_HASSEI_CD, X31CWebConst.DATABEAN_SET_VALUE,
				upd_pnlty_hassei_cd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_PNLTY_HASSEI_DIV_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
				dsp_pnlty_hassei_div);
		// ANK-3834-00-00 ADD START
		// マルウェアブロッキング有無のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray malware_blocking_non_flg_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.MALWARE_BLOCKING_UM_LIST);
		X31SDataBeanAccess malware_blocking_non_flg_subbean = malware_blocking_non_flg_Info.getDataBean(0);

		String idx10 = malware_blocking_non_flg_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
				X31CWebConst.DATABEAN_GET_VALUE);
		String upd_malware_blocking_non_flg = malware_blocking_non_flg_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx10));
		String dsp_malware_blocking_non_flg = malware_blocking_non_flg_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx10));
		if("1".equals(upd_malware_blocking_non_flg))
		{
			svcFormBean.sendMessageString(KKW00128SFConst.UPD_MALWARE_BLOCKING_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		else if("0".equals(upd_malware_blocking_non_flg))
		{
			svcFormBean.sendMessageString(KKW00128SFConst.UPD_MALWARE_BLOCKING_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE, "1");
		}
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_MALWARE_BLOCKING_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE,
				dsp_malware_blocking_non_flg);

		// ANK-3834-00-00 ADD END
		// ***審査結果通知***
		// 審査結果通知のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray skekka_tchi_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.SKEKKA_TCHI_LIST);
		X31SDataBeanAccess skekka_tchi_subbean = skekka_tchi_Info.getDataBean(0);

		String idx7 = skekka_tchi_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);
		String upd_skekka_cd = skekka_tchi_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx7));
		String dsp_skekka_tchi = skekka_tchi_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx7));

		svcFormBean.sendMessageString(KKW00128SFConst.SKEKKA_SEND_CD, X31CWebConst.DATABEAN_SET_VALUE, upd_skekka_cd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_TCHI_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
				dsp_skekka_tchi);

		// ***審査結果補記***
		// 審査結果補記のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray skekka_hoki_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.SKEKKA_HOKI_LIST);
		X31SDataBeanAccess skekka_hoki_subbean = skekka_hoki_Info.getDataBean(0);

		String idx8 = skekka_hoki_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);

		// 審査結果補記のNullチェック
		if (idx8 != null)
		{
			String upd_skekka_hoki_cd = skekka_hoki_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx8));
			String dsp_skekka_hoki = skekka_hoki_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx8));

			svcFormBean.sendMessageString(KKW00128SFConst.SKEKKA_HOKI_CD, X31CWebConst.DATABEAN_SET_VALUE,
					upd_skekka_hoki_cd);
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SKEKKA_HOKI_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_skekka_hoki);
		}

		// ***PON種別***
		// PON種別のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray pon_sbt_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.PON_SBT_LIST);
		X31SDataBeanAccess pon_sbt_subbean = pon_sbt_Info.getDataBean(0);

		String idx9 = pon_sbt_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);

		String upd_pon_sbt_cd = pon_sbt_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx9));
		String dsp_pon_sbt = pon_sbt_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx9));

		svcFormBean.sendMessageString(KKW00128SFConst.PON_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, upd_pon_sbt_cd);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_PON_SBT, X31CWebConst.DATABEAN_SET_VALUE, dsp_pon_sbt);
	}

	/**
	 * サービス契約情報更新確認(eo光ネット)サービスフォームBean情報を表示に適した形に編集する
	 * @param svcFormBean
	 * @throws Exception
	 */
	public void dspTbxKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{
		
		// ***標準工事費***
		// 標準工事費のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray stdard_kojihi_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.STDARD_KOJIHI_LIST);
		X31SDataBeanAccess stdard_kojihi_subbean = stdard_kojihi_Info.getDataBean(0);
		String idx2 = stdard_kojihi_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);

		// 標準工事費が非活性の場合は空文字をセット
		if (idx2 == null || idx2.length() == 0)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_LIST, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		else
		{
			String dsp_stdard_kojihi = stdard_kojihi_subbean.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx2));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_LIST, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_stdard_kojihi);
		}

		// ***標準工事費（区分）***
		// 標準工事費（区分）のセット（リストボックスからの選択値の取得）
		X31SDataBeanAccessArray stdard_kojihi_div_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.STDARD_KOJIHI_DIV_LIST);
		X31SDataBeanAccess stdard_kojihi_div_subbean = stdard_kojihi_div_Info.getDataBean(0);
		String idx3 = stdard_kojihi_div_subbean.sendMessageString(KKW00128SFConst.INDEX_12,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 標準工事費（区分）が非活性の場合は「無」をセット
		if (idx3 == null || idx3.length() == 0)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_DIV_VALUE, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		else
		{
			String dsp_stdard_kojihi_div = stdard_kojihi_div_subbean.sendMessageString(
					KKW00128SFConst.CD_DIV_NM_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx3));
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_STDARD_KOJIHI_DIV_VALUE, X31CWebConst.DATABEAN_SET_VALUE,
					dsp_stdard_kojihi_div);
		}
	}

	/**
	 * サービス契約情報更新確認(eo光ネット)サービスフォームBean(テキスト系)のを設定する
	 * 
	 * @param svcFormBean DataBeanアクセスクラス
	 * @throws Exception
	 */
	public void cfmTbxKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{
		// 申込種別コード
		String upd_mskm_sbt_cd = JKKCommonConst.MSKM_SBT_CD_VALUE_00027;
		svcFormBean.sendMessageString(KKW00128SFConst.MSKM_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, upd_mskm_sbt_cd);

		// 進捗ステータス
		String upd_prg_stat = "1001";
		svcFormBean.sendMessageString(KKW00128SFConst.PRG_STAT, X31CWebConst.DATABEAN_SET_VALUE, upd_prg_stat);

		// ***サービス契約情報更新***

		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);

		// 面開発案件番号
		String upd_menkaihat_anken_no = svc_kei_subbean.sendMessageString(KKW00128SFConst.MENKAIHAT_ANKEN_NO_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.MENKAIHAT_ANKEN_NO, X31CWebConst.DATABEAN_SET_VALUE,
				upd_menkaihat_anken_no);

		// 更新用審査結果コード
		String upd_skekka_send_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.SKEKKA_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SKEKKA_CD, X31CWebConst.DATABEAN_SET_VALUE, upd_skekka_send_cd);

		// 更新用審査結果詳細コード
		String upd_skekka_dtl_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.SKEKKA_DTL_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean
				.sendMessageString(KKW00128SFConst.SKEKKA_DTL_CD, X31CWebConst.DATABEAN_SET_VALUE, upd_skekka_dtl_cd);

		// 更新用備考
		String upd_biko = svc_kei_subbean.sendMessageString(KKW00128SFConst.BIKO_03, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.BIKO, X31CWebConst.DATABEAN_SET_VALUE, upd_biko);

		// 更新年月日時分秒
		String svc_kei_last_upd_dtm = svc_kei_subbean.sendMessageString(KKW00128SFConst.LAST_UPD_DTM_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_LAST_DTM, X31CWebConst.DATABEAN_SET_VALUE,
				svc_kei_last_upd_dtm);

		// ***サービス契約内訳情報更新***

		// サービス契約内訳一覧情報
		X31SDataBeanAccessArray svc_kei_ucwk_list_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0161B004CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_ucwk_list_subbean = svc_kei_ucwk_list_Info.getDataBean(0);

		// サービス契約内訳番号
		String upd_svc_kei_ucwk_no = svc_kei_ucwk_list_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_UCWK_NO_04,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE,
				upd_svc_kei_ucwk_no);

		// サービス契約内訳情報
		X31SDataBeanAccess svc_kei_ucwk_subbean = getUcwkBean(svcFormBean);

		// 更新年月日時分秒
		String svc_kei_ucwk_last_upd_dtm = svc_kei_ucwk_subbean.sendMessageString(KKW00128SFConst.LAST_UPD_DTM_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_UCWK_LAST_DTM, X31CWebConst.DATABEAN_SET_VALUE,
				svc_kei_ucwk_last_upd_dtm);

		// ***サービス契約回線内訳情報更新***

		// サービス契約回線内訳情報
		X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

		// サービス契約回線内訳番号
		String upd_svc_kei_kaisen_ucwk_no = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.SVC_KEI_KAISEN_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_KAISEN_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE,
				upd_svc_kei_kaisen_ucwk_no);

		// 郵便番号
		// 郵便番号 = 郵便番号上３桁 + 郵便番号下４桁
		String ad_pcd1 = svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_1,
				X31CWebConst.DATABEAN_GET_VALUE);
		String ad_pcd2 = svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_2,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 更新用郵便番号
		String upd_ad_pcd = ad_pcd1 + ad_pcd2;
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD, X31CWebConst.DATABEAN_SET_VALUE, upd_ad_pcd);

		// 電話番号
		String upd_useplace_telno = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_TELNO_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_TELNO, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_telno);

		// 請求書用部屋番号
		String seikyus_yo_rm_no = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.SEIKYUS_YO_RM_NO_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SEIKYUS_YO_RM_NO, X31CWebConst.DATABEAN_SET_VALUE,
				seikyus_yo_rm_no);
		
		// 住所コード
		String upd_useplace_ad_cd = svcFormBean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_CD,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_CD, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_ad_cd.replaceAll("-", ""));

		// 都道府県
		String upd_useplace_state_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.USEPLACE_STATE_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_STATE_NM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_state_nm);

		// 市区町村
		String upd_useplace_city_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.USEPLACE_CITY_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_CITY_NM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_city_nm);

		// 大字通称名
		String upd_useplace_oaztsu_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.USEPLACE_OAZTSU_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_OAZTSU_NM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_oaztsu_nm);

		// 字丁
		String upd_useplace_azcho_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.USEPLACE_AZCHO_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AZCHO_NM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_azcho_nm);

		// 番地号
		String upd_useplace_bnchigo = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.USEPLACE_BNCHIGO_07, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_bnchigo);

		// 建物名
		String upd_useplace_adrttm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_ADRTTM_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_adrttm);

		// 部屋番号
		String upd_useplace_adrrm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_ADRRM_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_ADRRM, X31CWebConst.DATABEAN_SET_VALUE,
				upd_useplace_adrrm);

		// 竣工予定年月 = 竣工予定年 + 竣工予定月
		String upd_shunko_rsv_y = svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_YEAR,
				X31CWebConst.DATABEAN_GET_VALUE);
		String upd_shunko_rsv_m = svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_MON,
				X31CWebConst.DATABEAN_GET_VALUE);

		// 仮で日をセット
		if (upd_shunko_rsv_y != null && upd_shunko_rsv_m != null && !"".equals(upd_shunko_rsv_y)
				&& !"".equals(upd_shunko_rsv_m))
		{
			svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_YM, X31CWebConst.DATABEAN_SET_VALUE,
					upd_shunko_rsv_y + upd_shunko_rsv_m + "01");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SHUNKO_RSV_YM, X31CWebConst.DATABEAN_SET_VALUE,
					upd_shunko_rsv_y + "/" + upd_shunko_rsv_m);
		}
		else{
			// クリアする
			svcFormBean.sendMessageString(KKW00128SFConst.SHUNKO_RSV_YM, X31CWebConst.DATABEAN_SET_VALUE,"");
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_SHUNKO_RSV_YM, X31CWebConst.DATABEAN_SET_VALUE,"");
		}
		// 未確定チェック
		// 未確定フラグ設定
		boolean ad_mi_fix_flg = getBoolean(svcFormBean, KKW00128SFConst.DSP_AD_MI_FIX_FLG);
		if (ad_mi_fix_flg)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.AD_MI_FIX_FLG, X31CWebConst.DATABEAN_SET_VALUE, "1");
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.AD_MI_FIX_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// ANK-4315-00-00 ADD START
		// HGW交換不可チェック
		// HGW交換不可フラグ設定
		boolean hgw_kkn_ffg = getBoolean(svcFormBean, KKW00128SFConst.DSP_HGW_KKN_FFG);
		if (hgw_kkn_ffg)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.HGW_KKN_FFG, X31CWebConst.DATABEAN_SET_VALUE, "1");
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.HGW_KKN_FFG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		// ANK-4315-00-00 ADD END

		// 区画整理中
		boolean kukaku_seiri_chu_flg = getBoolean(svcFormBean, KKW00128SFConst.DSP_KUKAKU_SEIRI_CHU_FLG);
		if (kukaku_seiri_chu_flg)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.KUKAKU_SEIRI_CHU_FLG, X31CWebConst.DATABEAN_SET_VALUE, "1");
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.KUKAKU_SEIRI_CHU_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");

		}
		// 入居予定日 = 入居予定年 + 入居予定月 + 入居予定日
		String upd_nyukyo_rsv_y = getString(svcFormBean, KKW00128SFConst.NYUKYO_RSV_YEAR);
		String upd_nyukyo_rsv_m = getString(svcFormBean, KKW00128SFConst.NYUKYO_RSV_MON);
		String upd_nyukyo_rsv_d = getString(svcFormBean, KKW00128SFConst.NYUKYO_RSV_DAY);

// IT2-2013-0000524 2013-06-13 DEL_START
//		if (!isNull(upd_nyukyo_rsv_y) && !isNull(upd_nyukyo_rsv_m) && !isNull(upd_nyukyo_rsv_d))
//		{
// IT2-2013-0000524 2013-06-13 DEL_END
		setString(svcFormBean, KKW00128SFConst.NYUKYO_RSV_YMD, 
				upd_nyukyo_rsv_y + 
				upd_nyukyo_rsv_m + 
				upd_nyukyo_rsv_d);
			
		setString(svcFormBean, KKW00128SFConst.DSP_NYUKYO_RSV_YMD, 
				editPrettyYmd(
						upd_nyukyo_rsv_y + 
						upd_nyukyo_rsv_m + 
						upd_nyukyo_rsv_d
				)
		);
			
//		}

		// 更新年月日時分秒
		String svc_kei_kai_ucwk_last_upd_dtm = svc_kei_kaisen_ucwk_subbean.sendMessageString(
				KKW00128SFConst.LAST_UPD_DTM_03, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_KAI_UCWK_LAST_DTM, X31CWebConst.DATABEAN_SET_VALUE,
				svc_kei_kai_ucwk_last_upd_dtm);

		// サービス開始年月日
		String svcStaYmd = getString(svcFormBean, KKW00128SFConst.SVC_STA_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STA_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STA_DAY);
		if (svcStaYmd != null && svcStaYmd.length() != 0 && !JKKCommonConst.MAX_YMD.equals(svcStaYmd))
		{
			setString(svcFormBean, KKW00128SFConst.SVC_STA_YMD, svcStaYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_STA_YMD, JPCUtilCommon.formatDate(svcStaYmd));
		}

		// サービス終了年月日
		String svcEndYmd = getString(svcFormBean, KKW00128SFConst.SVC_END_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_END_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_END_DAY);
		if (svcEndYmd != null && svcEndYmd.length() != 0 && !JKKCommonConst.MAX_YMD.equals(svcEndYmd))
		{
			setString(svcFormBean, KKW00128SFConst.SVC_END_YMD, svcEndYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_END_YMD, JPCUtilCommon.formatDate(svcEndYmd));
		}
		// 20130604 IT1-2013-0001255 ADD START
		// サービス開始希望年月日
		String svcUseStaKiboYmd = getString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_DAY);
		//ANK-2410-00-00 MOD START サービス開始希望日のnullチェックを復活
		////ANK-1918-00-00 MOD START
		////if (svcUseStaKiboYmd != null && svcUseStaKiboYmd.length() != 0 && !JKKCommonConst.MAX_YMD.equals(svcUseStaKiboYmd))
		//if (!JKKCommonConst.MAX_YMD.equals(svcUseStaKiboYmd))
		////ANK-1918-00-00 MOD END
		if (svcUseStaKiboYmd != null && svcUseStaKiboYmd.length() != 0 && !JKKCommonConst.MAX_YMD.equals(svcUseStaKiboYmd))
		//ANK-2410-00-00 MOD END サービス開始希望日のnullチェックを復活
		{
			setString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YMD, svcUseStaKiboYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_USE_STA_KIBO_YMD, JPCUtilCommon.formatDate(svcUseStaKiboYmd));
		}
		// 20130604 IT1-2013-0001255 ADD END

		// サービス課金終了年月日
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
		{
			// 解約の場合、サービス課金終了年月日が未設定なら、サービス終了年月日を設定する
			if (isNull(getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YEAR)))
			{
				setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YEAR, getString(svcFormBean, KKW00128SFConst.SVC_END_YEAR));
			}
			if (isNull(getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_MON)))
			{
				setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_MON, getString(svcFormBean, KKW00128SFConst.SVC_END_MON));
			}
			if (isNull(getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_DAY)))
			{
				setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_DAY, getString(svcFormBean, KKW00128SFConst.SVC_END_DAY));
			}
		}
		
		String svcChrgEndYmd = getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_DAY);
		if (svcChrgEndYmd != null && svcChrgEndYmd.length() != 0 && !JKKCommonConst.MAX_YMD.equals(svcChrgEndYmd))
		{
			setString(svcFormBean, KKW00128SFConst.SVC_CHRG_END_YMD, svcChrgEndYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_CHRG_END_YMD, JPCUtilCommon.formatDate(svcChrgEndYmd));
		}

		// サービス停止・中断年月日
		String svcStpYmd = getString(svcFormBean, KKW00128SFConst.SVC_STP_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STP_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STP_DAY);

		setString(svcFormBean, KKW00128SFConst.SVC_STP_YMD,     svcStpYmd);
		setString(svcFormBean, KKW00128SFConst.DSP_SVC_STP_YMD, JPCUtilCommon.formatDate(svcStpYmd));

		// サービス停止・中断解除年月日
		String svcStpRlsYmd = getString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_DAY);

		setString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_YMD,     svcStpRlsYmd);
		setString(svcFormBean, KKW00128SFConst.DSP_SVC_STP_RLS_YMD, JPCUtilCommon.formatDate(svcStpRlsYmd));

		// サービス休止年月日
		String svcPauseYmd = getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_DAY);

		if (svcPauseYmd != null && svcPauseYmd.length() == 8)
		{
			setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_YMD,     svcPauseYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_YMD, JPCUtilCommon.formatDate(svcPauseYmd));
		}
		else
		{
			setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_YMD,     "");
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_YMD, "");
		}

		// サービス休止解除年月日
		String svcPauseRlsYmd = getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_MON)
				+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_DAY);

		if (svcPauseRlsYmd != null && svcPauseRlsYmd.length() == 8)
		{
			setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_YMD,     svcPauseRlsYmd);
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_RLS_YMD, JPCUtilCommon.formatDate(svcPauseRlsYmd));
		}
		else
		{
			setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_YMD,     "");
			setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_RLS_YMD, "");
		}

		// 休止料金適用年月
		String pauseAplyPrc = getString(svcFormBean, KKW00128SFConst.PAUSE_APLY_YEAR)
				+ getString(svcFormBean, KKW00128SFConst.PAUSE_APLY_MON);

		if (pauseAplyPrc != null && pauseAplyPrc.length() == 6)
		{
			setString(svcFormBean, KKW00128SFConst.PAUSE_APLY_YM,     pauseAplyPrc);
			setString(svcFormBean, KKW00128SFConst.DSP_PAUSE_APLY_YM, getYYYYMM(pauseAplyPrc));
		}
		else
		{
			setString(svcFormBean, KKW00128SFConst.PAUSE_APLY_YM,     "");
			setString(svcFormBean, KKW00128SFConst.DSP_PAUSE_APLY_YM, "");
		}

		boolean isNetOfHktg = getBoolean(svcFormBean, "インターネットオフィスへの引継ぎ");
		if (isNetOfHktg)
		{
			svcFormBean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_SET_VALUE, "01");
			svc_kei_subbean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_SET_VALUE, "01");
		}
		else
		{
			svcFormBean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_SET_VALUE, "");
			svc_kei_subbean.sendMessageString("法人サービス契約引継ぎ種別コード", X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		
//ANK-4640-00-00 20250321 張 ADD START
		// ***WAO連携可否***
		// WAO連携可否のセット
		String wao_rnki_yks_dsl= "";
		wao_rnki_yks_dsl = svcFormBean.sendMessageString(KKW00128SFConst.WAO_RNKI_YKS_FLG_DSL, X31CWebConst.DATABEAN_GET_VALUE);
		String wao_rnki_yks_csch= "";
		wao_rnki_yks_csch = svcFormBean.sendMessageString(KKW00128SFConst.WAO_RNKI_YKS_FLG_CSCH, X31CWebConst.DATABEAN_GET_VALUE);
		//解約
		if(WAO_RNKI_HI_1.equals(wao_rnki_yks_dsl)){
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_WAO_RNKI_YKS_FLG_DSL, X31CWebConst.DATABEAN_SET_VALUE, "否");
		}
		else{
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_WAO_RNKI_YKS_FLG_DSL, X31CWebConst.DATABEAN_SET_VALUE, "要");
		}
		//コース変更
		//ANK-4640-06-00 20250422 張 ADD START
		//ＮＦパック切り替えかどうかを判定すること
		isNfPackJudge(svcFormBean);
		//ＮＦパック切り替えの場合、WAO連携要否は「否」にすること。
		if(isWaornkiflgHi){
			svcFormBean.sendMessageString(KKW00128SFConst.WAO_RNKI_YKS_FLG_CSCH, X31CWebConst.DATABEAN_SET_VALUE, WAO_RNKI_HI_1);
			svcFormBean.sendMessageString(KKW00128SFConst.DSP_WAO_RNKI_YKS_FLG_CSCH, X31CWebConst.DATABEAN_SET_VALUE, "否");
		}
		else{
		//ANK-4640-06-00 20250422 張 ADD END	
			if(WAO_RNKI_HI_1.equals(wao_rnki_yks_csch)){
			    svcFormBean.sendMessageString(KKW00128SFConst.DSP_WAO_RNKI_YKS_FLG_CSCH, X31CWebConst.DATABEAN_SET_VALUE, "否");
		    }
		    else{
			    svcFormBean.sendMessageString(KKW00128SFConst.DSP_WAO_RNKI_YKS_FLG_CSCH, X31CWebConst.DATABEAN_SET_VALUE, "要");
		    }
	    //ANK-4640-06-00 20250422 張 ADD START
		}
		//ANK-4640-06-00 20250422 張 ADD END
//ANK-4640-00-00 20250321 張 ADD END
	}

	/**
	 * 「再表示」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionRedsp() throws Exception
	{

		re_flg = true;
		
		// 共有フォームBean設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00128);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00128);
		
		// 初期表示処理へ
		actionInit();

		return true;
	}

	/**
	 * 「コース履歴」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionCourserireki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// 画面情報を設定（コース履歴画面）
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		ArrayList<HashMap<String, Object>> hktgiList = (ArrayList<HashMap<String, Object>>)hktgiDataMap.get(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		HashMap<String, Object> hktgiListElement = hktgiList.get(0);
		hktgiListElement.put(JKKCommonConst.HKTGI_POPUP_MODE, "1");
		
		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD START
		
		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		
		String pcrsCd = "";
		String pplanCd = "";
		
		// 異動区分がコース変更の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			// 料金プランのセット（リストボックスからの選択値の取得）
			X31SDataBeanAccess pcrs_subbean = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST).getDataBean(0);
			String idx = pcrs_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);
			String pcrsListValue = pcrs_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx));
			// 料金プランコードを作成
			pcrsCd = pcrsListValue.split(":")[0];
			pplanCd = pcrsListValue.split(":")[1];
			
		}
		else
		{
			// コース変更以外の場合
			pcrsCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PCRS_CD_03);
			pplanCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PPLAN_CD_03);
		}
		
		// サービスコード
		hktgiListElement.put(JKKCommonConst.HKTGI_SVC_CD, JKKCommonConst.SVC_CD_NET);
		// 料金グループコード
		String prcGrpCd = getString(svc_kei_Info.getDataBean(0), KKW00128SFConst.PRC_GRP_CD_03);
		hktgiListElement.put(JKKCommonConst.HKTGI_PRC_GRP_CD, prcGrpCd);
		// 料金コースコード
		hktgiListElement.put(JKKCommonConst.HKTGI_PCRS_CD, pcrsCd);
		// 料金プランコード
		hktgiListElement.put(JKKCommonConst.HKTGI_PPLAN_CD, pplanCd);
		// 変更前サービスコード
		hktgiListElement.put(JKKCommonConst.HKTGI_SVC_CD_BF, JKKCommonConst.SVC_CD_NET);
		// 変更前料金グループコード
		String prcGrpCdBf = svcFormBean.sendMessageString(KKW00128SFConst.PRC_GRP_CD_BF, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiListElement.put(JKKCommonConst.HKTGI_PRC_GRP_CD_BF, prcGrpCdBf);
		// 変更前料金コースコード
		String prcCdBf = svcFormBean.sendMessageString(KKW00128SFConst.PCRS_CD_BF, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiListElement.put(JKKCommonConst.HKTGI_PCRS_CD_BF, prcCdBf);
		// 変更前料金プランコード
		String pplanCdBf = svcFormBean.sendMessageString(KKW00128SFConst.PPLAN_CD_BF, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiListElement.put(JKKCommonConst.HKTGI_PPLAN_CD_BF, pplanCdBf);
		// 割引自動適用対象外フラグ
		String wribAutoAplyTgGaiFlg = svcFormBean.sendMessageString(KKW00128SFConst.WRIB_AUTO_APLY_TG_GAI_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiListElement.put(JKKCommonConst.HKTGI_WRIB_AUTO_APLY_TG_GAI_FLG, wribAutoAplyTgGaiFlg);
		// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD END

		JCCWebCommon.setScreenInfo(
				this,
				JKKScreenConst.SCREEN_ID_KKW02701, 
				hktgiDataMap);
		
		// 20120415 ST2-2012-0000651 END
		
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW02701, JKKScreenConst.SCREEN_ID_KKW00128);
		
		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW02701);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW02701);

		return true;
	}

	// 20130125 ANK-1270-00-00 1ギガコースその他価格改定対応 ADD START
	/**
	 * 「コース履歴画面」戻り処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionCourserirekirefresh() throws Exception
	{

		// 引継情報を取得
		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);
		HashMap<String, Object> hktgiInfMap = ((ArrayList<HashMap<String, Object>>)dataMap.get(KKW00128SFConst.CUST_KEI_HKTGI_LIST)).get(0);
		// 割引自動適用対象外フラグ
		String wribAutoAplyTgGaiFlg = (String)hktgiInfMap.get(KKW00128SFConst.WRIB_AUTO_APLY_TG_GAI_FLG);

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		svcFormBean.sendMessageString(KKW00128SFConst.WRIB_AUTO_APLY_TG_GAI_FLG, X31CWebConst.DATABEAN_SET_VALUE, wribAutoAplyTgGaiFlg);

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00128);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00128);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

// 20130125 ANK-1270-00-00 1ギガコースその他価格改定対応 ADD END
	/**
	 * 「工事案件一覧照会画面」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionKojirireki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);

		// 2012-06-13 IT2-2012-0000727 ADD START ポップアップ「閉じる」ボタン表示設定
		dataMap.put("POPUP_MODE", "1");
		
		// 画面情報を設定（工事案件一覧照会画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KUW00101, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KUW00101, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KUW00101);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KUW00101);

		return true;
	}

	/**
	 * 「住所検索画面」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionUseplaceadschbtn() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);

		// 画面情報を設定（住所検索画面）
		JCCWebCommon.setScreenInfo(this, JZMScreenConst.SCREEN_ID_ZMW10601, dataMap);
		JCCWebCommon.setScreenId(this, JZMScreenConst.SCREEN_ID_ZMW10601, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JZMScreenConst.SCREEN_ID_ZMW10601);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JZMScreenConst.SCREEN_NAME_ZMW10601);

		return true;
	}

	/**
	 * 「住所検索画面」戻り処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionUseplaceadschrefresh() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// サービス契約回線内訳情報
		X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);

		// 郵便番号
		String pcd1 = (String)dataMap.get(ZMW10601SFConst.SESSION_RET_PCD_1);
		String pcd2 = (String)dataMap.get(ZMW10601SFConst.SESSION_RET_PCD_2);
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_1, X31CWebConst.DATABEAN_SET_VALUE, pcd1);
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_2, X31CWebConst.DATABEAN_SET_VALUE, pcd2);

		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_1, X31CWebConst.DATABEAN_SET_VALUE, pcd1);
		svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_2, X31CWebConst.DATABEAN_SET_VALUE, pcd2);

		//↓↓↓2012-08-06追加　IT2-2012-0001376対応↓↓↓
		//表示用郵便番号
		String ad_pcd = "〒" + JKKCommonUtil.hyhunPcd(pcd1 + pcd2);
		svcFormBean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_PCD, X31CWebConst.DATABEAN_SET_VALUE, ad_pcd);

		// 住所コード
		String editAdCd = (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_1) + "-"
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_2) + "-"
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_3) + "-"
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_4);
		String adCd = (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_1)
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_2)
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_3)
				+ (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AD_CD_4);
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_CD,
				X31CWebConst.DATABEAN_SET_VALUE, editAdCd);

		svcFormBean.sendMessageString(KKW00128SFConst.DSP_USEPLACE_AD_CD,
				X31CWebConst.DATABEAN_SET_VALUE, editAdCd);

		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_CD_07,
				X31CWebConst.DATABEAN_SET_VALUE, adCd);

		// 都道府県
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_STATE_NM_07,
				X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get(ZMW10601SFConst.SESSION_RET_STATE_NM));

		// 市区町村
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_CITY_NM_07,
				X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get(ZMW10601SFConst.SESSION_RET_CITY_NM));

		// 大字通称名
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_OAZTSU_NM_07,
				X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get(ZMW10601SFConst.SESSION_RET_OAZTSU_NM));

		// 字丁目
		svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AZCHO_NM_07,
				X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get(ZMW10601SFConst.SESSION_RET_AZCHO_NM));

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00128);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00128);

		return true;
	}

	/**
	 * 「認証ID情報詳細画面」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionNinshoidrireki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		// 画面情報を設定（認証ID情報詳細画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02528, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW02528, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW02528);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW02528);

		return true;
	}

	/**
	 * 「工事情報登録画面」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionKojiifinput() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// ST2-2012-0001429 2012/08/16 MOD START 引き渡し情報設定
		// セッション情報引渡処理
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<Map<String, Object>> dataList = new ArrayList<Map<String,Object>>();
		HashMap<String, Object> childMap = new HashMap<String, Object>();
		
		// SYSID (引継ぎ項目)
		childMap.put(JKKCommonConst.HKTGI_SYSID, svcFormBean.sendMessageString(KKW00128SFConst.SYS_ID, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号 (引継ぎ項目)
		childMap.put(JKKCommonConst.HKTGI_SVC_KEI_NO, svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		// 異動区分 (引継ぎ項目)
		childMap.put(JKKCommonConst.HKTGI_IDO_DIV, svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE));
		// ポップアップモード
		childMap.put(JKKCommonConst.HKTGI_POPUP_MODE, "1");
		dataList.add(childMap);
		dataMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, dataList);
		
		// 工事情報入力フラグ取得
		String koji_input_flg = svcFormBean.sendMessageString(KKW00128SFConst.KOJI_INPUT_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(koji_input_flg != null && koji_input_flg.equals("1"))
		{
			// 入力フラグONの場合、入力済み値を設定
			dataMap.put("ret_set_btn_flg", koji_input_flg);
			dataMap.put("ret_rrk_way_hoki", svcFormBean.sendMessageString(KKW00128SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_hukkat_anken", svcFormBean.sendMessageBoolean(KKW00128SFConst.HUKKAT_ANKEN, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_router_kind", svcFormBean.sendMessageString(KKW00128SFConst.ROUTER_SBT, X31CWebConst.DATABEAN_GET_VALUE));
			// ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD START
			// 同時案件有無
			String doujiAnkenUm = getString(svcFormBean, KKW00128SFConst.DOUJI_ANKEN_UM);
			dataMap.put("ret_douji_anken_um", JKKCommonConst.FLG_ON.equals(doujiAnkenUm));
			// ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD END
			
			// ANK-3136-00-00 ADD START
			dataMap.put("ret_takcho_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TAKCHO_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_dsgn_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.DSGN_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_takcho_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TAKCHO_HUYO_FLG, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_sdaks_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_SDAKS_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_kj_rrks_nm", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TKJ_RRKS_NM, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_kj_rrks_tln", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TKJ_RRKS_TLN, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_takcho_ji_rrks_nm", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TAKCHO_JI_RRKS_NM, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_takcho_ji_rrks_tln", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TAKCHO_JI_RRKS_TLN, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_rrk_kibo_date", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_RRK_KIBO_DATE, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_tachiaisha_nm", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TACHIAISHA_NM, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_kzn_kei_inf", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_KZN_KEI_INF, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_hbi_kaishou_ymd", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_HBI_KAISHOU_YMD, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_campaign_inf", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_CAMPAIGN_INF, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_koji_hi", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_KOJI_HI, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_doji_koji_inf", svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_DOJI_KOJI_INF, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_hkks_sisak_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_HKKS_SISAK_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_ttk_ji_nsank_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TTK_JI_NSANK_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_map_um", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_MAP_UM, X31CWebConst.DATABEAN_GET_VALUE));
			// ANK-3136-00-00 ADD END
		}
// ▽▽▽ ANK-3412-15-00 ADD START
		else if(koji_input_flg != null && koji_input_flg.equals("2"))
		{
			// 初期値を設定します。
			dataMap.put("ret_set_btn_flg", "1");
			dataMap.put("ret_takcho_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TAKCHO_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_dsgn_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.DSGN_YH, X31CWebConst.DATABEAN_GET_VALUE));
			dataMap.put("ret_tsyrn_takcho_yh", svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TAKCHO_HUYO_FLG, X31CWebConst.DATABEAN_GET_VALUE));			
		}
// ▲▲▲ ANK-3412-15-00 ADD END

//		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);
		// ST2-2012-0001429 2012/08/16 MOD END

		// 画面情報を設定（工事情報登録画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00401, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00401, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00401);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00401);

		return true;
	}

	/**
	 * 「工事情報登録画面」戻り処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionKojiifinputrefresh() throws Exception
	{

		 //共有Bean アクセスクラスの取得
		 X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		 //サービスフォームBean アクセスクラスの取得
		 X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
				
		 HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);
		
		// ST2-2012-0001429 2012/08/16 MOD START 情報受け取り
		svcFormBean.sendMessageString(KKW00128SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_rrk_way_hoki"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.HUKKAT_ANKEN, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_hukkat_anken"));
		svcFormBean.sendMessageString(KKW00128SFConst.ROUTER_SBT, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_router_kind"));
		svcFormBean.sendMessageString(KKW00128SFConst.KOJI_INPUT_FLG, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_set_btn_flg"));
//		 svcFormBean.sendMessageString(KKW00128SFConst.ROUTER_SBT, (String)dataMap.get(KKW00401SFConst.ROUTER_KIND));
		// ST2-2012-0001429 2012/08/16 MOD END
		// ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD START
		// 同時案件有無
		boolean retDoujiAnkenUm = (Boolean)dataMap.get("ret_douji_anken_um");
		if(retDoujiAnkenUm)
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DOUJI_ANKEN_UM, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.FLG_ON);
		}
		else
		{
			svcFormBean.sendMessageString(KKW00128SFConst.DOUJI_ANKEN_UM, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.FLG_OFF);
		}
		// ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD END
		
		// ANK-3136-00-00 ADD START
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TAKCHO_YH, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_takcho_yh"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.DSGN_YH, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_dsgn_yh"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TAKCHO_HUYO_FLG, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_tsyrn_takcho_yh"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_SDAKS_YH, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_tsyrn_sdaks_yh"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TKJ_RRKS_NM, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_kj_rrks_nm"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TKJ_RRKS_TLN, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_kj_rrks_tln"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TAKCHO_JI_RRKS_NM, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_takcho_ji_rrks_nm"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TAKCHO_JI_RRKS_TLN, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_takcho_ji_rrks_tln"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_RRK_KIBO_DATE, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_rrk_kibo_date"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_TACHIAISHA_NM, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_tachiaisha_nm"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_KZN_KEI_INF, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_kzn_kei_inf"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_HBI_KAISHOU_YMD, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_hbi_kaishou_ymd"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_CAMPAIGN_INF, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_campaign_inf"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_KOJI_HI, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_koji_hi"));
		svcFormBean.sendMessageString(KKW00128SFConst.TSYRN_DOJI_KOJI_INF, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tsyrn_doji_koji_inf"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_HKKS_SISAK_YH, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_tsyrn_hkks_sisak_yh"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TTK_JI_NSANK_YH, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_tsyrn_ttk_ji_nsank_yh"));
		svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_MAP_UM, X31CWebConst.DATABEAN_SET_VALUE, (Boolean)dataMap.get("ret_tsyrn_map_um"));
		// ANK-3136-00-00 ADD END
		
		 //共有フォームBean設定
		 commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
		 X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00128);
		 commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
		 X31CWebConst.DATABEAN_SET_VALUE,
		 JKKScreenConst.SCREEN_NAME_KKW00128);

		return true;
	}

	/**
	 * 「訪問履歴一覧照会画面」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionVsitshokai() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);

		// 画面情報を設定（訪問履歴一覧照会画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW06304, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW06304, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW06304);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW06304);

		return true;
	}

	/**
	 * 「他システムヘ」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTasys() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 他システム選択画面から遷移する他システムへのパラメータが不正 2013/05/10 START
		// セッション情報引渡処理
//		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);
		// 顧客契約引継リストを取得
		HashMap<String, Object> dataMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		// 他システム選択画面から遷移する他システムへのパラメータが不正 2013/05/10 END

		// 画面情報を設定（他システム選択画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00146, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00146, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00146);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00146);

		return true;
	}

	/**
	 * 「料金ヘ」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionPrche() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// IT2-2012-0000308 2012/04/24 MOD START
		// セッション情報引渡処理
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		Map<String, Object> childMap = setSessionKKW00128SFBean(svcFormBean);
		List<Map<String, Object>> dataList = new ArrayList<Map<String,Object>>();
		dataList.add(childMap);
		dataMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, dataList);
		// 請求契約番号
		dataMap.put(JCHCommonConst.SCREEN_HKTGI_SEIKY_KEI_NO, svc_kei_dataMap
				.get(JKKCommonConst.SVCKEICOMMON_ID_SEIKY_KEI_NO));
		// IT2-2012-0000308 2012/04/24 MOD END

		// 画面情報を設定（債権照会画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_CHW00101, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_CHW00101, JKKScreenConst.SCREEN_ID_KKW00128);

		// IT2-2012-0000308 2012/04/23 ADD START
		// 遷移先から戻る際に必要な情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00128, dataMap);
		// IT2-2012-0000308 2012/04/23 ADD END

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_CHW00101);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_CHW00101);

		return true;
	}

	// ANK-3346-01-00 ADD START
	/**
	 * 解約レター検索ボタン押下時に解約レター検索画面に遷移を行います。
	 * <br>
	 * @return true/false
	 * @exception Exception
	 */
	public boolean actionDslLetterSch() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		hktgiDataMap.put(KKW21811SFConst.SEARCH_FLG, JKKStrConst.CD00001_0);

		// 画面情報を設定（解約レター検索画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW21811, hktgiDataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW21811, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有BeanのSCREEN_ID、SCREEN_NMに遷移先の画面IDをセット
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW21811);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW21811);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
	// ANK-3346-01-00 ADD END

	/**
	 * 「対応履歴」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTaiorrki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// セッション情報引渡処理
		HashMap<String, Object> dataMap = setSessionKKW00128SFBean(svcFormBean);

		// 画面情報を設定（総合案内問合せ対応画面）
		// 2012/11/13 IT2-2012-0001662 Mod Start
//		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_CRW03401, dataMap);
//		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_CRW03401, JKKScreenConst.SCREEN_ID_KKW00128);
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_CRW01201, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_CRW01201, JKKScreenConst.SCREEN_ID_KKW00128);
		// 2012/11/13 IT2-2012-0001662 Mod End

		// 共有フォームBean設定
		// 2012/11/13 IT2-2012-0001662 Mod Start
//		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
//				JKKScreenConst.SCREEN_ID_CRW03401);
//		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
//				JKKScreenConst.SCREEN_NAME_CRW03401);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_CRW01201);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_CRW01201);
		// 2012/11/13 IT2-2012-0001662 Mod End

		return true;
	}
		// ANK-1452-00-00 2013/01/29 ADD START
	/**
	 * 「利用不可期間履歴」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionRiyofukaRireki() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW17801, hktgiData);

		// 戻り先画面IDを設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW17801, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW17801);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW17801);
		
		

		return true;
	}
	// ANK-1452-00-00 2013/01/29 ADD END
	

	/**
	 * 「異動区分選択へ」ボタン(KKW00128_入力画面)押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionIdodivchoice() throws Exception
	{
		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 START
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 異動区分選択画面遷移パターン
		String idoDivSeniPtn = svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV_SENI_PTN, X31CWebConst.DATABEAN_GET_VALUE);

		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		// 戻り時の情報を保持
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00128, hktgiData);

		// 自画面遷移パターンの場合
		if (JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI.equals(idoDivSeniPtn))
		{
			JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00145, hktgiData);

			// 戻り先画面IDを設定
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00145, JKKScreenConst.SCREEN_ID_KKW00128);

			// 共有フォームBean設定
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_ID_KKW00145);
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
					JKKScreenConst.SCREEN_NAME_KKW00145);
		}
		// 親画面遷移パターンの場合
		else
		{
			// ポップアップモード
			String popupMode = svcFormBean.sendMessageString(KKW00128SFConst.POPUP_MODE, X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.HKTGI_POPUP_MODE_MODAL.equals(popupMode))
			{
				// モーダル用反映画面へ画面遷移
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_ID_CCW00105);
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_NAME_CCW00105);
			}
			else
			{
				// モーダレス用反映画面へ画面遷移
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_ID_CCW00104);
				commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JCCScreenConst.SCREEN_NAME_CCW00104);
			}
		}

		// 一時的な親画面遷移パターンの場合
		if (IDO_DIV_SENI_PTN_TMP_OYA_SENI.equals(idoDivSeniPtn))
		{
			// 自画面遷移パターンに戻す
			List<HashMap<String, Object>> dataList = (List<HashMap<String, Object>>)hktgiData.get(KKW00128SFConst.CUST_KEI_HKTGI_LIST);
			dataList.get(0).put(JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN, JKKCommonConst.HKTGI_IDO_DIV_SENI_PTN_SELF_SENI);
		}
		// ANK-1289-00-00 サービス契約更新の参照モード起動時の子画面内からの異動区分選択画面への遷移 2012/11/19 END

		return true;
	}

	// IT2-2012-0001930 完了画面の「異動区分選択へ」ボタン押下でシステムエラー 2012/12/03 START
	/**
	 * 「異動区分選択へ」ボタン(KKW00140_完了画面)押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionIdodivchoiceFin() throws Exception
	{
		// IT1-2012-0001198 2012/10/15 start
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		// 顧客契約内引継ぎデータセット
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00145, getHktgiDataMap(svcFormBean,
				KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS));
		// IT1-2012-0001198 2012/10/15 end
		
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00145);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00145);

		return true;
	}
	// IT2-2012-0001930 完了画面の「異動区分選択へ」ボタン押下でシステムエラー 2012/12/03 END

	/**
	 * 「お客様一覧照会へ」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionCustshokai() throws Exception
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JCKScreenConst.SCREEN_ID_CKW00101);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JCKScreenConst.SCREEN_NAME_CKW00101);

		return true;
	}
	
	// ANK-1933-00-00 2014/02/20 ADD START
	/**
	 * 「位置確認」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionItiKakunin() throws Exception
	{
		// 共有フォームBean設定
		JKKWebCommon.setSelfScreenID(this);
		
		X31SDataBeanAccess dataBean = getServiceFormBean();
		
		// パラメータマップを作成する。
		HashMap paramMap = new HashMap();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, CCSV0006);
		
		CCSV0006_CCSV0006OPDBMapper mapper = new CCSV0006_CCSV0006OPDBMapper();
		X31SDataBeanAccess[] paramBean = { dataBean };
		HashMap dataMap = new HashMap();
		mapper.setCCSV000601SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		
		// 検索結果格納用マップ
		HashMap outputMap = new HashMap();
		
		try
		{
			invokeService(paramMap, dataMap, outputMap);
		}
		catch (JCCWebServiceException e1)
		{
			// エラーの場合はシステムエラーを表示する
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0400_CE, new String[]{""}, "");
			return false;
		}

//		mapper.getCCSV000601SC(paramBean, outputMap);
		HashMap parentMap = null;
		if(outputMap.containsKey("CCSV000601SC")){
			parentMap = (HashMap)outputMap.get("CCSV000601SC");
		}
		// ワンタイムパスワード ← ワンタイムパスワード登録.ワンタイムパスワード
		paramBean[0].sendMessageString("ワンタイムパスワード", X31CWebConst.DATABEAN_SET_VALUE, (String)parentMap.get("one_time_pwd"));


		// プロパティファイルより総合営業C向けエリアチェック画面のURLを取得
		String mapGmnURL = JCMAPLConstMgr.getString(JKKCommonConst.PROP_MAP_GMN_URL);

		String encryptPw = dataBean.sendMessageString(KKW00128SFConst.ONE_TIME_PWD, X31CWebConst.DATABEAN_GET_VALUE);
		String sysId = dataBean.sendMessageString(KKW00128SFConst.ONE_TIME_SYS_ID, X31CWebConst.DATABEAN_GET_VALUE);
		String cnsmrLng = dataBean.sendMessageString(KKW00128SFConst.LGTD, X31CWebConst.DATABEAN_GET_VALUE);
		String cnsmrLat = dataBean.sendMessageString(KKW00128SFConst.LTTD, X31CWebConst.DATABEAN_GET_VALUE);
		
		String formatUrl = String.format(mapGmnURL, encryptPw, cnsmrLng, cnsmrLat);
		dataBean.sendMessageString(KKW00128SFConst.MAP_GMN_URL, X31CWebConst.DATABEAN_SET_VALUE, formatUrl);
		dataBean.sendMessageString(KKW00128SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "1");

		return true;
	}
	// ANK-1933-00-00 2014/02/20 ADD END

	/**
	 * 引き継ぎ情報をセッションに設定する
	 * 
	 * @param svcFormBean
	 *            DataBeanアクセスクラス
	 * @return dataMap セッション情報
	 * @throws Exception
	 */
	public HashMap<String, Object> setSessionKKW00128SFBean(X31SDataBeanAccess svcFormBean) throws Exception
	{

		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);

		// サービス契約内訳＜eo光ネット＞情報
		X31SDataBeanAccessArray svc_kei_ucwk_eonetInfo = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0171A010CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_ucwk_eonet_subbean = svc_kei_ucwk_eonetInfo.getDataBean(0);

		// サービス契約回線内訳情報
		X31SDataBeanAccessArray svc_kei_kaisen_ucwk_Info = svcFormBean
				.getDataBeanArray(KKW00128SFConst.EKK0241B001CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_kaisen_ucwk_subbean = svc_kei_kaisen_ucwk_Info.getDataBean(0);

		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// SYSID (引継ぎ項目)
		dataMap.put("SYSID", svcFormBean.sendMessageString(KKW00128SFConst.SYS_ID, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号 (引継ぎ項目)
		dataMap.put("SVC_KEI_NO", svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_NO,
				X31CWebConst.DATABEAN_GET_VALUE));
		// 異動区分 (引継ぎ項目)
		dataMap.put("IDO_DIV", svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE));

		// 料金グループコード（サービス契約）
		String prc_grp_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PRC_GRP_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("PRC_GRP_CD", prc_grp_cd);

		// 料金コースコード（サービス契約）
		String pcrs_cd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PCRS_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("PCRS_CD", pcrs_cd);

		// サービス契約ステータス（サービス契約）
		String svc_kei_stat = svc_kei_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("SVC_KEI_STAT", svc_kei_stat);

		// お客様名（サービス契約共通画面から取得したデータ）
		dataMap.put("CUST_NM", cust_nm);

		// 郵便番号上３桁（画面）
		dataMap.put(ZMW10601SFConst.SESSION_KEY_PCD_1, svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_1,
				X31CWebConst.DATABEAN_GET_VALUE));

		// 郵便番号下４桁（画面）
		dataMap.put(ZMW10601SFConst.SESSION_KEY_PCD_2, svcFormBean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_2,
				X31CWebConst.DATABEAN_GET_VALUE));

		// 郵便番号７桁（サービス契約回線内訳）
		String pcd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_PCD_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("AD_PCD", pcd);

		// 住所コード（サービス契約回線内訳）
		String ad_cd = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AD_CD_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("AD_CD", ad_cd);

//		// 住所コード１
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_AD_CD_1, subString(ad_cd, 0, 2));
//		// 住所コード２
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_AD_CD_2, subString(ad_cd, 2, 5));
//		// 住所コード３
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_AD_CD_3, subString(ad_cd, 5, 8));
//		// 住所コード４
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_AD_CD_4, subString(ad_cd, 8, 11));

//		// 都道府県（サービス契約回線内訳）
//		String state_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_STATE_NM_07,
//				X31CWebConst.DATABEAN_GET_VALUE);
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_STATE_NM, state_nm);
//
//		// 市区町村（サービス契約回線内訳）
//		String city_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_CITY_NM_07,
//				X31CWebConst.DATABEAN_GET_VALUE);
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_CITY_NM, city_nm);
//
//		// 大字通称（サービス契約回線内訳）
//		String oaztsu_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_OAZTSU_NM_07,
//				X31CWebConst.DATABEAN_GET_VALUE);
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_OAZTSU_NM, oaztsu_nm);
//
//		// 字丁目（サービス契約回線内訳）
//		String azcho_nm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_AZCHO_NM_07,
//				X31CWebConst.DATABEAN_GET_VALUE);
//		dataMap.put(ZMW10601SFConst.SESSION_KEY_AZCHO_NM, azcho_nm);

		// 番地号（サービス契約回線内訳）
		String bnchigo = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_BNCHIGO_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("BNCHIGO", bnchigo);

		// 建物名（サービス契約回線内訳）
		String adrttm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_ADRTTM_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("ADRTTM", adrttm);

		// 部屋番号（サービス契約回線内訳）
		String adrrm = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_ADRRM_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("ADRRM", adrrm);

		// 電話番号（サービス契約回線内訳）
		String telno = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.USEPLACE_TELNO_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("TELNO", telno);
		
		// ANK-0572-00-00 2012/09/22 start 
		// 請求書用部屋番号
		String seikyus_yo_rm_no = svc_kei_kaisen_ucwk_subbean.sendMessageString(KKW00128SFConst.SEIKYUS_YO_RM_NO_07,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("SEIKYUS_YO_RM_NO", seikyus_yo_rm_no);
		// ANK-0572-00-00 2012/09/22 end

		// ISP認証ID（サービス契約内訳（eo光ネット））
		String ninsho_id = svc_kei_ucwk_eonet_subbean.sendMessageString(KKW00128SFConst.NINSHO_ID_06,
				X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put("NINSHO_ID", ninsho_id);

		// サービス開始年月日（画面）
		dataMap.put("SVC_STA_YMD", svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_STA_YMD,
				X31CWebConst.DATABEAN_GET_VALUE));

		// サービス課金開始年月日（画面）
		dataMap.put("SVC_CHRG_STA", svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_CHRG_STA_YMD,
				X31CWebConst.DATABEAN_GET_VALUE));

		// サービス停止年月日（画面）
		dataMap.put("SVC_STP_YMD", svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_STP_YMD,
				X31CWebConst.DATABEAN_GET_VALUE));

		// サービス停止解除年月日（画面）
		dataMap.put("SVC_STP_RLS_YMD", svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_STP_RLS_YMD,
				X31CWebConst.DATABEAN_GET_VALUE));

		// サービス終了年月日（画面）
		dataMap.put("SVC_END_YMD", svcFormBean.sendMessageString(KKW00128SFConst.DSP_SVC_END_YMD,
				X31CWebConst.DATABEAN_GET_VALUE));

		// IT2-2012-0000308 2012/04/23 ADD START
		// SYSID (引継ぎ項目)
		dataMap.put(KKW00128SFConst.SYSID_01, svcFormBean.sendMessageString(KKW00128SFConst.SYS_ID,
				X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号 (引継ぎ項目)
		dataMap.put(KKW00128SFConst.SVC_KEI_NO_01, svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_NO,
				X31CWebConst.DATABEAN_GET_VALUE));
		// IT2-2012-0000308 2012/04/23 ADD END

		//↓↓↓2012/11/21追加　ロット２IT2-2012-0001715↓↓↓
		// ポップアップモード (引継ぎ項目)
		dataMap.put(KKW00128SFConst.POPUP_MODE_01, svcFormBean.sendMessageString(KKW00128SFConst.POPUP_MODE,
				X31CWebConst.DATABEAN_GET_VALUE));
		//↑↑↑2012/11/21追加　ロット２IT2-2012-0001715↑↑↑

		return dataMap;
	}

	/**
	 * オブジェクトに値が設定されているか判定します。 <br>
	 * 
	 * @param arg0
	 *            判定するオブジェクト
	 * @return オブジェクトに値が設定されていない場合はtrue
	 */
	private boolean isNull(Object arg0)
	{
		if (arg0 == null)
		{
			return true;
		}

		if (arg0 instanceof String)
		{
			return "".equals(arg0);
		}

		return 0 == arg0.toString().length();
	}

	/**
	 * 文字列を指定値で切り出します。 <br>
	 * 
	 * @param str
	 *            対象文字列
	 * @param startIndex
	 *            開始位置
	 * @param endIndex
	 *            終了位置
	 * @return 切り出した文字列
	 */
	private String subString(String str, int startIndex, int endIndex)
	{

		if (isNull(str))
		{
			return null;
		}

		if (str.length() < endIndex)
		{
			return null;
		}
		return str.substring(startIndex, endIndex);
	}

	/**
	 * <dd>メソッド名：プルダウン名称取得処理 <dd>メソッド説明：指定のコードに該当するプルダウン表示名を取得する。 <dd>備考：なし。
	 * 
	 * @param bean
	 *            サービスフォームBean
	 * @param pulldownInfName
	 *            プルダウン情報名(キー値)
	 * @param targetCd
	 *            指定コード
	 * @return getPulldownMame プルダウン表示名
	 */
	private String getPulldownMame(X31SDataBeanAccess bean, String pulldownInfName, String targetCd)
	{
		String name = "";

		X31SDataBeanAccessArray pulldownInfList = bean.getDataBeanArray(pulldownInfName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);

		if (!isNull(targetCd))
		{
			int count = (Integer)pulldownInf.sendMessage(KKW00128SFConst.CD_DIV_LIST_12,
					X31CWebConst.DATABEAN_GET_COUNT);
			for (int i = 0; i < count; i++)
			{
				String cd = pulldownInf.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
						X31CWebConst.DATABEAN_GET_VALUE, i);
				if (cd.equals(targetCd))
				{
					// IT2-2012-0000595 2012/06/03 start
					String names[] = pulldownInf.sendMessageString(KKW00128SFConst.CD_DIV_NM_LIST_12,
							X31CWebConst.DATABEAN_GET_VALUE, i).split("\\.");					// プルダウンに表示している値から添え字部分を除いた文字列を名称として取得する
					// IT2-2012-0000595 2012/06/03 end
					// プルダウンに表示している値から添え字部分を除いた文字列を名称として取得する
					if (names.length >= 2)
					{
						name = names[1];
					}
					break;
				}
			}
		}

		return name;
	}

	/**
	 * <dd>メソッド名：プルダウン選択処理 <dd>メソッド説明：指定のコードでプルダウンを選択状態にする。 <dd>備考：なし。
	 * 
	 * @param bean
	 *            サービスフォームBean
	 * @param pulldownInfName
	 *            プルダウン情報名(キー値)
	 * @param targetCd
	 *            指定コード
	 */
	private void selectedPulldownIndex(X31SDataBeanAccess bean, String pulldownInfName, String targetCd)
	{
		String index = "0";

		X31SDataBeanAccessArray pulldownInfList = bean.getDataBeanArray(pulldownInfName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);

		if (!isNull(targetCd))
		{
			int count = (Integer)pulldownInf.sendMessage(KKW00128SFConst.CD_DIV_LIST_12,
					X31CWebConst.DATABEAN_GET_COUNT);
			for (int i = 0; i < count; i++)
			{
				String cd = pulldownInf.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
						X31CWebConst.DATABEAN_GET_VALUE, i);
				if (cd.equals(targetCd))
				{
					index = String.valueOf(i);
					break;
				}
			}
		}

		pulldownInf.sendMessageString(pulldownInfName, X31CWebConst.DATABEAN_SET_VALUE, index);
		pulldownInf.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_SET_VALUE, index);
	}

	/**
	 * <dd>メソッド名：引継情報データマップ取得 <dd>メソッド説明：引数のサービスフォームBeanより引継情報データマップの生成を行う。 <dd>
	 * 備考：引継情報データタイプの可変項目はString[]のみ対応。
	 * 
	 * @param bean
	 *            サービスフォームBean
	 * @param hktgiKey
	 *            引継情報データタイプのキー
	 * @param hktgiPrmKeys
	 *            引継情報データタイプの項目キーリスト
	 * @return HashMap<String, Object> 引継情報データマップ
	 */
	private HashMap<String, Object> getHktgiDataMap(X31SDataBeanAccess bean, String hktgiKey, String[] hktgiPrmKeys)
	{
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();

		X31SDataBeanAccessArray infList = bean.getDataBeanArray(hktgiKey);
		for (int i = 0; i < infList.getCount(); i++)
		{
			HashMap<String, Object> inMap = new HashMap<String, Object>();

			X31SDataBeanAccess inf = infList.getDataBean(i);
			for (int j = 0; j < hktgiPrmKeys.length; j++)
			{
				// ※try-catchをfor内で実装してるため、PGRelief時にワーニングが発生する、意図的なロジックのため問題なしとする
				try
				{
					inMap.put(hktgiPrmKeys[j], inf.sendMessageObject(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE));
				}
				catch (X31SRuntimeException ex)
				{
					// 可変項目の場合(String[]のみ対応)
					int length = (Integer)inf.sendMessage(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_COUNT);
					String[] obj = new String[length];
					for (int k = 0; k < length; k++)
					{
						obj[k] = inf.sendMessageString(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE, k);
					}
					inMap.put(hktgiPrmKeys[j], obj);
				}
			}
			dataList.add(inMap);
		}
		dataMap.put(hktgiKey, dataList);

		return dataMap;
	}

	/**
	 * 「申込情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab1() throws Exception
	{
		return JKKTabCommonLogic.actionTab1(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「サービス契約」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab2() throws Exception
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 料金グループコード取得
		X31SDataBeanAccessArray svcKeiInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		String prcGrpCd = svcKeiInfo.getDataBean(0).sendMessageString(KKW00128SFConst.PRC_GRP_CD_03, X31CWebConst.DATABEAN_GET_VALUE);

		return JKKTabCommonLogic.actionTab2(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128,
				new String[]{ prcGrpCd });
	}

	/**
	 * 「お客様情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab3() throws Exception
	{
		return JKKTabCommonLogic.actionTab3(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「機器情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab4() throws Exception
	{
		return JKKTabCommonLogic.actionTab4(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「オプション情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab5() throws Exception
	{
		return JKKTabCommonLogic.actionTab5(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「請求契約情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab6() throws Exception
	{
		return JKKTabCommonLogic.actionTab6(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「進捗情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab7() throws Exception
	{
		return JKKTabCommonLogic.actionTab7(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「割引情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab8() throws Exception
	{
		return JKKTabCommonLogic.actionTab8(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「住所情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab9() throws Exception
	{
		return JKKTabCommonLogic.actionTab9(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}

	/**
	 * 「ADSL工事情報」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab10() throws Exception
	{
		return JKKTabCommonLogic.actionTab10(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}
	
	// ANK-2754-00-00 2016/05/26 ADD START
	/**
	 * 「コンテンツ」タブ押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTab11() throws Exception
	{
		return JKKTabCommonLogic.actionTab11(this,
				super.getCommonInfoBean(),
				super.getServiceFormBean(),
				JKKScreenConst.SCREEN_ID_KKW00128);
	}
	// ANK-2754-00-00 2016/05/26 ADD END

	/**
	 * <dd>メソッド名：サービス契約共通マップ取得 <dd>メソッド説明：サービス契約共通マップの生成を行う。 <dd>備考：なし。
	 * 
	 * @param outputMap
	 *            サービスI/Fからの取得データマップ
	 * @return HashMap サービス契約共通マップ
	 */
	@SuppressWarnings("unchecked")
	private HashMap<String, Object> getSvckeiCommonMap(HashMap<String, Object> outputMap, X31SDataBeanAccess[] paramBean)
	{
		HashMap<String, Object> svckeiCommonMap = new HashMap<String, Object>();

		// サービス契約情報
		HashMap<String, ArrayList<HashMap<String, String>>> svcKeiMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap
				.get("KKSV005902SC");
		
		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_IDO_DIV, "");
				svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SVC_KEI_STAT, (String)svcKeiChildMap.get("svc_kei_stat_nm"));
				
				// OM-2013-0004223 2013/12/24 MOD START
				// 料金コース一意照会の結果を参照
				// 該当サービス契約の料金コース速度コードを取得
				X31SDataBeanAccessArray prcsInfoList = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0791A010BSMSG1LIST);
				String pcrs_speed_cd = prcsInfoList.getDataBean(0).sendMessageString(KKW00128SFConst.PCRS_SPEED_CD_13,
						X31CWebConst.DATABEAN_GET_VALUE);
				
				// マンションIDの表示制御
				// 料金コース速度コードが1G以上の場合⇒マンション（１Ｇ以上のイーサネット、光配線）
// IT1-2025-0000002対応 20250114 星野 MOD START
//				if(PCRS_SPEED_CD_04.equals(pcrs_speed_cd))
				if(JKKStrConst.CD00688_OVER1G_LIST.contains(pcrs_speed_cd))
// IT1-2025-0000002対応 20250114 星野 MOD END
				{
					// サービス契約情報.ペアID（回線使用契約スキーマ）を設定
					svckeiCommonMap
					.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID, (String)svcKeiChildMap.get("pair_id"));
				}
				else
				{
					// サービス契約情報.マンションIDを設定
					svckeiCommonMap
					.put(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID, (String)svcKeiChildMap.get("mansion_id"));
				}
				// OM-2013-0004223 2013/12/24 MOD 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"));
				cust_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対応↑↑↑
				// 20121009 KAD-2012-0000331 P-IDを追加 ADD START
				svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_P_ID , (String)svcKeiChildMap.get("pid"));
				// 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
			}
			// 2016/06/03 ANK-2687-00-00 ADD START
			// サービス契約情報
			HashMap<String, ArrayList<HashMap<String, String>>> rankMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap.get("KKSV005962CC");
			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/03 ANK-2687-00-00 ADD END
		}

		// ▼▼▼▼▼ 2012/11/13 IT1-2012-0001795 UPD START ▼▼▼▼▼
		// 割引サービス契約情報
//		HashMap<String, ArrayList<HashMap<String, String>>> wribSvcKeiMap = (HashMap<String, ArrayList<HashMap<String, String>>>)outputMap
//				.get("KKSV005938SC");
//		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 kksv005990cc = null;
		kksv005990cc = (HashMap)outputMap.get("KKSV005990CC");
		String family_pack_um = (String) kksv005990cc.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 ▲▲▲▲▲

		// サービス契約情報
		X31SDataBeanAccessArray svc_kei_Info = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		String prc_grp_cd = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.PRC_GRP_CD_03,
				X31CWebConst.DATABEAN_GET_VALUE);
//		String svcKeiNm = svc_kei_Info.getDataBean(0).sendMessageString(KKW00128SFConst.SVC_KEI_STAT_NM_03,
//				X31CWebConst.DATABEAN_GET_VALUE);

		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_IDO_DIV, getCodeName(outputMap, "KKSV005934SC"));
//		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_SVC_KEI_STAT, svcKeiNm);

		if (prc_grp_cd.equals(JKKCommonConst.PRC_GRP_CD_05) || prc_grp_cd.equals(JKKCommonConst.PRC_GRP_CD_06))
		{
			svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ADSL_DSP_FLG, "1");
		}
		else
		{
			svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ADSL_DSP_FLG, "0");
		}

		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_NEXT_TAB, "Tab2");

		// 巻@ルーター有無表示対応 START
		String router_sbt_nm = (String) kksv005990cc.get("router_sbt_nm");
		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_ROUTER_SBT, router_sbt_nm);
		// 巻@ルーター有無表示対応 END

		//↓↓↓2012-03-08 ST2-2012-0000326対応↓↓↓
		HashMap<?, ?> tokusokuMap = (HashMap<?, ?>) outputMap.get("KKSV005990CC");
		String tokusoku_stat_nm = (String) tokusokuMap.get("tokusoku_stat_nm");
		svckeiCommonMap.put(JKKCommonConst.SVCKEICOMMON_ID_TOKUSOKU_STAT, tokusoku_stat_nm);
		//↑↑↑2012-03-08 ST2-2012-0000326対応↑↑↑

		svc_kei_dataMap = svckeiCommonMap;

		// v3.00.00 ANK-0049-00-00 ADD START
		// 請求契約番号をBEANに保持
		setString(paramBean[0], KKW00128SFConst.SEIKY_KEI_NO, (String)svckeiCommonMap
				.get(JKKCommonConst.SVCKEICOMMON_ID_SEIKY_KEI_NO));
		// v3.00.00 ANK-0049-00-00 ADD END
		// ANK-0572-00-00 請求書用部屋番号 ADD START
		// マンションＩＤ
		setString(paramBean[0], KKW00128SFConst.M_ID, (String)svckeiCommonMap
				.get(JKKCommonConst.SVCKEICOMMON_ID_MANSION_ID));
		// ANK-0572-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("KKSV005969CC");
		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;
	}

	/**
	 * サービス契約更新画面（eo光ネット）サービスフォームBean項目とサービス項目のマッピングを行う
	 * 
	 * @param paramBean
	 *            DataBean項目の配列
	 * @param inputMap
	 *            上りデータマップ
	 * @param func_code
	 *            機能コード
	 */
	private void mapForDbUpd(X31SDataBeanAccess[] paramBean, HashMap<String, Object> inputMap, String func_code)
	{
		// IT1-2012-0000674 2012-06-06 ADD_START
		boolean iyakFlg = true;
		// 1:ホームタイプ 2:マンションタイプ 3:マンションタイプ（プライベート） 4:メゾンタイプ
		String svcFlg = paramBean[0].sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		
		// マンションタイプの場合は違約金発生区分を設定しない
		if ("2".equals(svcFlg) || "3".equals(svcFlg))
		{
			// TAI-2012-0000081 2012.09.04 MOD START
//			iyakFlg = false;
			iyakFlg = true;
			// TAI-2012-0000081 2012.09.04 MOD END
		}
		// IT1-2012-0000674 2012-06-06 ADD_END
		
		// 異動区分：回復
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00004))
		{
			// DataBean-BPマッピングクラス生成
			KKSV0194_KKSV0194OPDBMapper mapper = new KKSV0194_KKSV0194OPDBMapper();

			//空マッピング
			mapper.setKKSV019411SC(paramBean, inputMap, func_code);		//サービス契約内訳回復SC
			mapper.setKKSV019412SC(paramBean, inputMap, func_code);		//休止中サービス契約内訳回復SC
			mapper.setKKSV019414SC(paramBean, inputMap, func_code);		//サービス契約内訳＜ｅｏ光電話＞移転トーキ設定SC
			mapper.setKKSV019419SC(paramBean, inputMap, func_code);		//オプションサービス契約回復SC
			mapper.setKKSV019420SC(paramBean, inputMap, func_code);		//休止中オプションサービス契約回復SC
			mapper.setKKSV019421SC(paramBean, inputMap, func_code);		//サブオプションサービス契約回復SC
			mapper.setKKSV019422SC(paramBean, inputMap, func_code);		//休止中サブオプションサービス契約回復SC
			mapper.setKKSV019424SC(paramBean, inputMap, func_code);		//機器提供サービス契約回復SC
			mapper.setKKSV019425SC(paramBean, inputMap, func_code);		//サービス提供前機器提供サービス契約回復SC
			mapper.setKKSV019426SC(paramBean, inputMap, func_code);		//休止中機器提供サービス契約回復SC
			mapper.setKKSV019428SC(paramBean, inputMap, func_code);		//返品機器取消SC
			mapper.setKKSV019439SC(paramBean, inputMap, func_code);		//エイジング回復SC
			mapper.setKKSV019447CC(paramBean, inputMap, func_code);		//ＳＯＤ発行CC
			mapper.setKKSV019451CC(paramBean, inputMap, func_code);		//割引サービス自動適用CC
			mapper.setKKSV019453SC(paramBean, inputMap, func_code);		//サービス契約解約取消SC
			mapper.setKKSV019454SC(paramBean, inputMap, func_code);		//照査後サービス契約キャンセル取消SC
			mapper.setKKSV019455SC(paramBean, inputMap, func_code);		//サービス契約内訳解約取消SC
			mapper.setKKSV019456SC(paramBean, inputMap, func_code);		//照査後サービス契約内訳キャンセル取消SC
			mapper.setKKSV019457SC(paramBean, inputMap, func_code);		//サービス契約回線内訳キャンセル取消SC
			mapper.setKKSV019458SC(paramBean, inputMap, func_code);		//照査後機器提供サービス契約キャンセル取消SC
			mapper.setKKSV019459SC(paramBean, inputMap, func_code);		//オプションサービス契約解約取消SC
			mapper.setKKSV019460SC(paramBean, inputMap, func_code);		//照査後オプションサービス契約キャンセル取消SC
			mapper.setKKSV019461SC(paramBean, inputMap, func_code);		//サブオプションサービス契約解約取消SC
			mapper.setKKSV019462SC(paramBean, inputMap, func_code);		//照査後サブオプションサービス契約キャンセル取消SC

			//上りマッピング
			mapper.setKKSV019401SC132(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019402SC128(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019404SC(paramBean, inputMap, func_code);
			mapper.setKKSV019405SC132(paramBean, inputMap, func_code);
			mapper.setKKSV019406SC132(paramBean, inputMap, func_code);
			mapper.setKKSV019407SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV019409SC132(paramBean, inputMap, func_code);
			mapper.setKKSV019427SC132(paramBean, inputMap, func_code);
			mapper.setKKSV019445SC130(paramBean, inputMap, func_code);
			mapper.setKKSV019446SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 Start
			mapper.setKKSV019452SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 End
			// OM-2014-0004036 2015/01/16 ADD START
			mapper.setKKSV0194124SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			// OM-2014-0004036 2015/01/16 ADD END
			// ANK-3239-00-00 ADD START
			mapper.setKKSV0194133SC(paramBean, inputMap, func_code);
			mapper.setKKSV0194134SC(paramBean, inputMap, func_code);
			// ANK-3239-00-00 ADD END
		}

		// 異動区分：解約
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005))
		{
			KKSV0195_KKSV0195OPDBMapper mapper = new KKSV0195_KKSV0195OPDBMapper();
			// v3.00.00 ANK-0049-00-00 ADD START
			mapper.setKKSV019502SC(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD END
			//ANK-4640-00-00 20250321 張 MOD START
			//mapper.setKKSV019501CC128(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV019501CC128(paramBean, inputMap, func_code, iyakFlg, isWaornkiflg);
			//ANK-4640-00-00 20250321 張 MOD END
		}

		// 異動区分：キャンセル
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00008))
		{
			KKSV0196_KKSV0196OPDBMapper mapper = new KKSV0196_KKSV0196OPDBMapper();
			mapper.settrgt_data(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD START
			mapper.setKKSV019602SC(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD END
		}

		// 異動区分：中断受付
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00010))
		{
			// DataBean-BPマッピングクラス生成
			KKSV0197_KKSV0197OPDBMapper mapper = new KKSV0197_KKSV0197OPDBMapper();
			mapper.setKKSV019701SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019702SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019704SC(paramBean, inputMap, func_code);
			mapper.setKKSV019705SC(paramBean, inputMap, func_code);
			mapper.setKKSV019709SC(paramBean, inputMap, func_code);
			mapper.setKKSV019710SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 Start
			mapper.setKKSV019713SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 End
			// v3.00.00 ANK-0049-00-00 MOD START
			mapper.setKKSV019714SC(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD END
		}

		// 異動区分：中断解除
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00011))
		{
			// DataBean-BPマッピングクラス生成
			KKSV0198_KKSV0198OPDBMapper mapper = new KKSV0198_KKSV0198OPDBMapper();
			mapper.setKKSV019801SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019802SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV019804SC(paramBean, inputMap, func_code);
			mapper.setKKSV019805SC(paramBean, inputMap, func_code);
			mapper.setKKSV019809SC(paramBean, inputMap, func_code);
			mapper.setKKSV019810SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 Start
			mapper.setKKSV019813SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 End
		}

		// 異動区分：登録内容修正、サービス情報訂正
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00032)
				|| ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00033))
		{
			// DataBean-BPマッピングクラス生成
			KKSV0200_KKSV0200OPDBMapper mapper = new KKSV0200_KKSV0200OPDBMapper();
			mapper.setKKSV020001SC(paramBean, inputMap, func_code);
			mapper.setKKSV020002SC(paramBean, inputMap, func_code);
			mapper.setKKSV020003SC(paramBean, inputMap, func_code);
			mapper.setKKSV020004SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV020008SC(paramBean, inputMap, func_code);
			// 20120423 ST2-2012-0000755 START
			//mapper.setKKSV020011SC128(paramBean, inputMap, func_code);
			// 20120423 ST2-2012-0000755 END
			//↓↓↓2012-08-08追加　IT2-2012-0001376派生対応↓↓↓
			String svc_kei_stat = paramBean[0].sendMessageString(KKW00128SFConst.SVC_KEI_STAT_H, X31CWebConst.DATABEAN_GET_VALUE);
			if (!JKKCommonConst.SVC_KEI_STAT_920.equals(svc_kei_stat))
			{
			//↑↑↑2012-08-08追加　IT2-2012-0001376派生対応↑↑↑
				mapper.setKKSV020013SC(paramBean, inputMap, func_code);
			}
			mapper.setKKSV020014CC(paramBean, inputMap, func_code);
			mapper.setKKSV020015SC(paramBean, inputMap, func_code);
			mapper.setKKSV020016SC(paramBean, inputMap, func_code);
			mapper
					.setKKSV020018SC(paramBean, inputMap, func_code, getString(paramBean[0],
							KKW00128SFConst.SVC_STA_YMD));
			// ANK-0572-00-00 請求書用部屋番号 ADD START
			// 支払方式コード
			String payHoshikiCd = getString(paramBean[0], KKW00128SFConst.PAY_HOSHIKI_CD);
			// 請求書用部屋番号
			String seikyusYoRmNo = getString(paramBean[0], KKW00128SFConst.SEIKYUS_YO_RM_NO);
			if ( seikyusYoRmNo != null && !"".equals( seikyusYoRmNo)
					&& ("001".equals(payHoshikiCd) || "003".equals(payHoshikiCd) || "004".equals(payHoshikiCd))) {
				mapper.setKKSV020031SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			}
			// ANK-0572-00-00 請求書用部屋番号 ADD END
			// ANK-3900-00-00 ADD START
			String koteiIpAd8 = JKKStringUtil.nullToBlank(paramBean[0].sendMessageString(KKW00128SFConst.KOTEI_IP_AD_8, X31CWebConst.DATABEAN_GET_VALUE));
			String bf_koteiIpAd8 = JKKStringUtil.nullToBlank(paramBean[0].sendMessageString(KKW00128SFConst.KOTEI_IP_AD_8_BF, X31CWebConst.DATABEAN_GET_VALUE));
			//固定IPアドレス８が変更されている場合、SODCCを実行する。
			if (!koteiIpAd8.equals(bf_koteiIpAd8))
			{
				mapper.setKKSV020032CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			}
			// ANK-3900-00-00 ADD END
			// ANK-4174-00-00 ADD START
			String bfDnskhDoi = paramBean[0].sendMessageString(KKW00128SFConst.DENSKH_DOI_UM_BF, X31CWebConst.DATABEAN_GET_VALUE);
			String dnskhDoi = paramBean[0].sendMessageString(KKW00128SFConst.DENSKH_DOI_UM, X31CWebConst.DATABEAN_GET_VALUE);
			if (!bfDnskhDoi.equals(dnskhDoi))
			{
				mapper.setKKSV020035CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			}
			// ANK-4174-00-00 ADD END
		}

		// 異動区分：解約予約取消
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00053))
		{
//			KKSV0201_KKSV0201OPDBMapper mapper = new KKSV0201_KKSV0201OPDBMapper();
//			mapper.setKKSV020101CC(paramBean, inputMap, func_code);
			KKSV0195_KKSV0195OPDBMapper mapper = new KKSV0195_KKSV0195OPDBMapper();
			// 2012.3.15 IT1-2012-0000349 Start
			//ANK-4640-00-00 20250324 張 MOD START
			//mapper.setKKSV019501CC128(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV019501CC128(paramBean, inputMap, func_code, iyakFlg, isWaornkiflg);
			//ANK-4640-00-00 20250324 張 MOD END
			// 2012.3.15 IT1-2012-0000349 End
		}

		// 異動区分：コース変更
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// サービス契約ステータス取得
			String svc_kei_stat = paramBean[0].sendMessageString(KKW00128SFConst.SVC_KEI_STAT_H, X31CWebConst.DATABEAN_GET_VALUE);

			KKSV0202_KKSV0202OPDBMapper mapper = new KKSV0202_KKSV0202OPDBMapper();
			mapper.setKKSV020201SC132(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV020202SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			//ANK-4640-00-00 20250321 張 MOD START
			//mapper.setKKSV020204SC(paramBean, inputMap, func_code);
			mapper.setKKSV020204SC(paramBean, inputMap, func_code, isWaornkiflg);
			//ANK-4640-00-00 20250321 張 MOD END
			mapper.setKKSV020205SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV020206SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV020224SC(paramBean, inputMap, func_code);
			mapper.setKKSV020225SC(paramBean, inputMap, func_code);
			//ANK-4640-00-00 20250321 張 MOD START
			//mapper.setKKSV020227SC(paramBean, inputMap, func_code);
			mapper.setKKSV020227SC(paramBean, inputMap, func_code, isWaornkiflg);
			//ANK-4640-00-00 20250321 張 MOD END
			mapper.setKKSV020231CC(paramBean, inputMap, func_code);
			mapper.setKKSV020234SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV020239SC(paramBean, inputMap, func_code, iyakFlg);
			mapper.setKKSV020241SC(paramBean, inputMap, func_code, iyakFlg);
			// OM-2015-0001645 2015/07/06 MOD START
			// mapper.setKKSV020245SC(paramBean, inputMap, func_code, svc_kei_stat);
			mapper.setKKSV020245SC(paramBean, inputMap, func_code, svc_kei_stat, true);
			// OM-2015-0001645 2015/07/06 MOD END
			mapper.setKKSV020215SC(paramBean, inputMap, func_code, (String)svc_kei_dataMap
					.get(JKKCommonConst.SVCKEICOMMON_ID_SEIKY_KEI_NO));
			mapper.setKKSV020216SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 Start
			mapper.setKKSV020258SC(paramBean, inputMap, func_code);
			// 2012.3.15 IT1-2012-0000349 End
			// v3.0.0 ANK-0025-00-00 ADD START
			mapper.setKKSV020217CC(paramBean, inputMap, func_code);
			// v3.0.0 ANK-0025-00-00 ADD END
			// ANK-2737-00-00 ADD START
			mapper.setKKSV020279CC(paramBean, inputMap, func_code);
			mapper.setKKSV020280SC(paramBean, inputMap, func_code);
			// ANK-2737-00-00 ADD END
			// ANK-0275-01-00 2012/10/01 MOD START
			String mskmshoDtlNo = getString(paramBean[0], KKW00128SFConst.MSKMSHO_DTL_NO);
			if(JPCModelConstant.FUNC_CD_2.equals(func_code) && !isNull(mskmshoDtlNo) && checkKojiUm())
			{
				// チェックのみの場合、かつ申込書明細番号の入力済かつ工事ありの場合、
				mapper.setKKSV020267SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
				mapper.setKKSV020268SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			}
			// ANK-0275-01-00 2012/10/01 MOD END
			// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD START
			String svcKeiStat = paramBean[0].sendMessageString(KKW00128SFConst.SVC_KEI_STAT_H, X31CWebConst.DATABEAN_GET_VALUE);
			if(JPCModelConstant.FUNC_CD_2.equals(func_code) && !isNull(svcKeiStat) && JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) <= 0)
			{
				// チェックのみの場合、かつサービス契約ステータスがサービス提供中以降の場合
				mapper.setKKSV020270SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
				mapper.setKKSV020271SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			}
			// ANK-1270-00-00 1ギガコースその他価格改定対応 20130125 ADD END

//↓↓↓2013-06-03追加　巻３IT1-2013-0001253（100M→100Mライトで予約が詰まれてしまう）↓↓↓
			mapper.setKKSV020256SC128(paramBean, inputMap, func_code);
//↑↑↑2013-06-03追加　巻３IT1-2013-0001253（100M→100Mライトで予約が詰まれてしまう）↑↑↑
			// ANK-2631-00-00 2015/08/26 ADD START
			if(JPCModelConstant.FUNC_CD_2.equals(func_code))
			{
				mapper.setKKSV020278CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
			}
			else if(JPCModelConstant.FUNC_CD_1.equals(func_code))
			{
				mapper.setKKSV020278CC(paramBean, inputMap, func_code);
			}
			else
			{
				
			}
			// ANK-2631-00-00 2015/08/26 ADD END
// ▽▽▽ ANK-3412-00-00 ADD START
			// 機器交換判定ＣＣ
			mapper.setKKSV020296CC(paramBean, inputMap, func_code);
// ▲▲▲ ANK-3412-00-00 ADD END
			// ANK-3949-00-00 ADD START
			if(!isNull(svcKeiStat) && JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0){
				mapper.setKKSV020297CC(paramBean, inputMap);
			}
			// ANK-3949-00-00 ADD END
			// OM-2021-0000384 ADD START
			// 住所変更異動予約チェックCC
			mapper.setKKSV020298CC(paramBean, inputMap);
			// OM-2021-0000384 ADD END
			// ANK-4315-00-00 ADD START
			mapper.setKKSV020299CC(paramBean, inputMap, func_code);
			// ANK-4315-00-00 ADD END
		}

		// 異動区分：休止受付
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00024))
		{
			KKSV0203_KKSV0203OPDBMapper mapper = new KKSV0203_KKSV0203OPDBMapper();
			mapper.setKKSV020301CC(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD START
			mapper.setKKSV020302SC(paramBean, inputMap, func_code);
			// v3.00.00 ANK-0049-00-00 ADD END
			// ANK-2737-00-00 ADD START
			String svcCd = JKKCommonConst.SVC_CD_NET;
			mapper.setKKSV020303CC(paramBean, inputMap, func_code, svcCd);
			// ANK-2737-00-00 ADD END
		}

		// 異動区分：休止変更・予約取消
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00025))
		{
			KKSV0204_KKSV0204OPDBMapper mapper = new KKSV0204_KKSV0204OPDBMapper();
			mapper.setKKSV020401CC(paramBean, inputMap, func_code);
		}
// 20140409 ANK-1683-00-00 Add Start
		// 異動区分：住所変更・開始日補正
		else if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00084))
		{
			KKSV0787_KKSV0787OPDBMapper mapper = new KKSV0787_KKSV0787OPDBMapper();
			mapper.setKKSV078701CC(paramBean, inputMap, func_code, getString(paramBean[0], KKW00128SFConst.SVC_STA_YMD));
		}
// 20140409 ANK-1683-00-00 Add End
}

	/**
	 * <code>str1</code>と<code>str2</code>を連結して返却します。<br />
	 * 引数が空、または<code>NULL</code>の場合は空文字を返却します。
	 * 
	 * @param str1
	 *            コード値
	 * @param str2
	 *            名称
	 * @return 「コード値.名称」形式のString
	 */
	private String getLabelString(String str1, String str2)
	{
		// コード値 コード名ともに NULL の場合
		if (isNull(str1) && isNull(str2))
		{
			return "";
		}

		// コード値が存在し、コード名がない場合
		else if (!isNull(str1) && isNull(str2))
		{
			return str1;
		}

		// コード値が存在せず、コード名がある場合
		else if (isNull(str1) && !isNull(str2))
		{
			return "";
		}

		return str1 + "." + str2;
	}

	/**
	 * @param outputMap
	 * @param key
	 * @return
	 */
	@SuppressWarnings("unchecked")
	private String getCodeName(Map<String, Object> outputMap, String key)
	{
		ArrayList<Map<String, String>> tmpList = null;
		Map<String, Object> outSCMap = (HashMap<String, Object>)outputMap.get(key);
		tmpList = (ArrayList<Map<String, String>>)outSCMap.get("EZM0171A010CBSMsg1List");
		if (tmpList != null && tmpList.size() > 0)
		{
			return tmpList.get(0).get("cd_div_nm");
		}

		return "";
	}

	/**
	 * @param idoDiv
	 * @param paramMap
	 */
	private void setServiceParamater(String idoDiv, HashMap<String, Object> paramMap)
	{
		// 異動区分：回復
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0194);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0194OP);
		}

		// 異動区分：解約
		else if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0195);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0195OP);
		}

		// 異動区分：キャンセル
		else if (JKKCommonConst.IDO_DIV_VALUE_00008.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0196);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0196OP);
		}

		// 異動区分：中断受付
		else if (JKKCommonConst.IDO_DIV_VALUE_00010.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0197);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0197OP);
		}

		// 異動区分：中断解除
		else if (JKKCommonConst.IDO_DIV_VALUE_00011.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0198);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0198OP);
		}

		// 異動区分：登録内容修正、サービス情報訂正
		else if (JKKCommonConst.IDO_DIV_VALUE_00032.equals(idoDiv) || JKKCommonConst.IDO_DIV_VALUE_00033.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0200);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0200OP);
		}

		// 異動区分：解約予約取消
		else if (JKKCommonConst.IDO_DIV_VALUE_00053.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0195);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0195OP);
//			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0201);
//			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0201OP);
		}

		// 異動区分：コース変更
		else if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0202);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0202OP);
		}

		// 異動区分：休止受付
		else if (JKKCommonConst.IDO_DIV_VALUE_00024.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0203);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0203OP);
		}

		// 異動区分：休止変更・予約取消
		else if (JKKCommonConst.IDO_DIV_VALUE_00025.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0204);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0204OP);
		}

// 20140410 ANK-1683-00-00 Add Start
		// 異動区分：住所変更・開始日補正
		else if (JKKCommonConst.IDO_DIV_VALUE_00084.equals(idoDiv))
		{
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0787);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0787OP);
		}
// 20140410 ANK-1683-00-00 Add End
}

	/**
	 * @param bean
	 * @param map
	 * @param pulldownKey
	 * @param outMapKey
	 * @param blankFlag
	 * @throws Exception
	 */
	private void setPulldown(X31SDataBeanAccess bean, HashMap<String, Object> map, String pulldownKey,
			String outMapKey, boolean blankFlag) throws Exception
	{
		JKKPulldownUtil.setPulldownList(bean, map, pulldownKey, outMapKey, blankFlag);
	}

	/**
	 * @param ymd
	 * @return
	 */
	private boolean isMaxYmd(String ymd)
	{
		if (ymd.indexOf("/") != -1)
		{
			ymd = ymd.replaceAll("/", "");
		}
		return JKKCommonConst.MAX_YMD.equals(ymd);
	}

	private void setString(X31SDataBeanAccess bean, String key, String val)
	{
		bean.sendMessageString(key, X31CWebConst.DATABEAN_SET_VALUE, val);
	}

	private String getString(X31SDataBeanAccess bean, String key)
	{
		return bean.sendMessageString(key, X31CWebConst.DATABEAN_GET_VALUE);
	}

	private boolean isMansionPrivate(String pcrsCd) {
		if (pcrsCd == null || "".equals(pcrsCd))
		{
			return false;
		}

		for (int i = 0; i < mansionPrivatePcrsCd.length; i++)
		{
			if (pcrsCd.equals(mansionPrivatePcrsCd[i]))
			{
				return true;
			}
		}

		return false;
	}
	//ANK-1918-00-00 ADD START
	private boolean isMansionGlobal(String pcrsCd) {
		if (pcrsCd == null || "".equals(pcrsCd))
		{
			return false;
		}

		for (int i = 0; i < mansionGlobalPcrsCd.length; i++)
		{
			if (pcrsCd.equals(mansionGlobalPcrsCd[i]))
			{
				return true;
			}
		}

		return false;
	}
	//ANK-1918-00-00 ADD END

	// ST2-2012-0000456 2012/03/22 MOD START
	private X31SDataBeanAccess getUcwkBean(X31SDataBeanAccess bean)
	{
		// サービス契約内訳情報
		X31SDataBeanAccessArray ucwkList = bean.getDataBeanArray(KKW00128SFConst.EKK0161A010CBSMSG1LIST);
		int ucwkCnt = ucwkList.getCount().intValue();
		for (int i = 0; i < ucwkCnt; i++)
		{
			X31SDataBeanAccess tmpBean = ucwkList.getDataBean(i);
			return tmpBean;
		}
		return null;
	}
	// ST2-2012-0000456 2012/03/22 MOD END

	// v3.00.00 ANK-0059-00-00 ADD START
	/**
	 * @return
	 * @throws Exception
	 */
	public boolean actioShkSetSprtBtn() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		HashMap<String, Object> hktgiMap = new HashMap<String, Object>();
		hktgiMap.put("svc_kei_no", getString(svcFormBean, KKW00128SFConst.SVC_KEI_NO));
		hktgiMap.put("mskmsho_no", getString(svcFormBean, KKW00128SFConst.SNST_MSKM_NO)); // 申込書番号（新設）

		// 引継ぎデータセット
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW13401, hktgiMap);

		// 戻る制御を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW13401, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW13401);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW13401);

		return true;
	}
	// v3.00.00 ANK-0059-00-00 ADD END

	// v3.00.00 ANK-0050-00-00 ADD START
	/**
	 * @return
	 * @throws Exception
	 */
	public boolean actionTushinBtn() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		HashMap<String, Object> hktgiMap = new HashMap<String, Object>();
		// 2012-06-07 IT2-2012-0000650 MOD START キーを日本語に修正
//		hktgiMap.put("sys_id", getString(svcFormBean, KKW00128SFConst.SYS_ID));
//		hktgiMap.put("svc_kei_no", getString(svcFormBean, KKW00128SFConst.SVC_KEI_NO));
		hktgiMap.put(KKW00128SFConst.SYS_ID, getString(svcFormBean, KKW00128SFConst.SYS_ID));
		hktgiMap.put(KKW00128SFConst.SVC_KEI_NO, getString(svcFormBean, KKW00128SFConst.SVC_KEI_NO));
		// 2012-06-07 IT2-2012-0000650 MOD END

		// 引継ぎデータセット
		JCCWebCommon.setScreenInfo(this, JACScreenConst.SCREEN_ID_ACW01401, hktgiMap);

		// 戻る制御を設定
		JCCWebCommon.setScreenId(this, JACScreenConst.SCREEN_ID_ACW01401, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JACScreenConst.SCREEN_ID_ACW01401);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JACScreenConst.SCREEN_NAME_ACW01401);

		return true;
	}
	// v3.00.00 ANK-0050-00-00 ADD END

	// v3.00.00 ANK-0049-00-00 ADD START
	/**
	 * @param paramBean
	 * @param outputMap
	 * @param func_code 機能コード
	 */
	// v4.00.01 ANK-0404-00-00 機能コードを引数に追加 MOD START
	private void checkSvcKeiNum(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap, String func_code) {
	// v4.00.01 ANK-0404-00-00 機能コードを引数に追加 MOD END
		
		// v4.00.01 ANK-0404-00-00 ANK-0049-00-00の不具合対応 ADD START
		// 異動区分が「00005：解約」または「00008：キャンセル」または「00010：中断受付」または「00024：休止受付」の場合
		// eo光ネット契約数と光ハイブリッドタイプとの契約数チェックを行う
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div)
				|| JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div)
				|| JKKCommonConst.IDO_DIV_VALUE_00010.equals(ido_div)
				|| JKKCommonConst.IDO_DIV_VALUE_00024.equals(ido_div))
		{
		// v4.00.01 ANK-0404-00-00 ANK-0049-00-00の不具合対応 ADD END
		// 異動区分：解約
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
		{
			KKSV0195_KKSV0195OPDBMapper mapper = new KKSV0195_KKSV0195OPDBMapper();
			mapper.getKKSV019502SC(paramBean, outputMap);
		}

		// 異動区分：キャンセル
		else if (JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div))
		{
			KKSV0196_KKSV0196OPDBMapper mapper = new KKSV0196_KKSV0196OPDBMapper();
			mapper.getKKSV019602SC(paramBean, outputMap);
		}

		// 異動区分：中断受付
		else if (JKKCommonConst.IDO_DIV_VALUE_00010.equals(ido_div))
		{
			KKSV0197_KKSV0197OPDBMapper mapper = new KKSV0197_KKSV0197OPDBMapper();
			mapper.getKKSV019714SC(paramBean, outputMap);
		}

		// 異動区分：休止受付
		else if (JKKCommonConst.IDO_DIV_VALUE_00024.equals(ido_div))
		{
			KKSV0203_KKSV0203OPDBMapper mapper = new KKSV0203_KKSV0203OPDBMapper();
			mapper.getKKSV020302SC(paramBean, outputMap);
		}

		int netKeiNum = 0;
		int hhbKeiNum = 0;
		int hhbMaxNum = 0;

		// 最大契約数を設定
		String hhbMaxNumStr = getString(paramBean[0], KKW00128SFConst.HHB_MAX_KEI_CNT);
		if (hhbMaxNumStr != null && !"".equals(hhbMaxNumStr))
		{
			hhbMaxNum = Integer.parseInt(hhbMaxNumStr);
		}

		// 件数をカウント
		X31SDataBeanAccessArray svcKeiNumList = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0081B023CBSMSG1LIST);
		for (int i = 0; i < svcKeiNumList.getCount().intValue(); i++)
		{
			X31SDataBeanAccess childBean = svcKeiNumList.getDataBean(i);
			String prcGrpCd = getString(childBean, "料金グループコード");
			String pcrsCd = getString(childBean, "料金コースコード");

			// 料金グループコードが"02"(eo光ネットホームタイプ)、"03"(eo光ネットメゾンタイプ)、"04"(eo光ネットマンションタイプ)の場合
			if (JKKCommonConst.PRC_GRP_CD_02.equals(prcGrpCd) || JKKCommonConst.PRC_GRP_CD_03.equals(prcGrpCd)
					|| JKKCommonConst.PRC_GRP_CD_04.equals(prcGrpCd))
			{
				netKeiNum++;
			}
			// v4.00.01 ANK-0404-00-00 42M 光ハイブリッドタイプ条件に追加 MOD START
			// 料金グループコードが"08"(eoモバイル(EM)) 且つ (料金コースコードが"A59"(3G 7.2M 光ハイブリッドタイプ) または"A60"(3G 42M 光ハイブリッドタイプ))の場合
			else if (JKKCommonConst.PRC_GRP_CD_08.equals(prcGrpCd) && ("A59".equals(pcrsCd) || "A60".equals(pcrsCd)))
			// v4.00.01 ANK-0404-00-00 42M 光ハイブリッドタイプ条件に追加 MOD END
			{
				hhbKeiNum++;
			}
		}

		// IT1-2012-0002472 光ハイブリッド契約数チェックの契約数算出が誤っている 2012/12/20 START
		// 異動対象の契約が異動前から有効でない状態となっている場合は、契約数としてカウントされないため-1しない(+1しておく)
		X31SDataBeanAccessArray svcKeiList = paramBean[0].getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svcKeiInfo = svcKeiList.getDataBean(0);
		String svcKeiStat = getString(svcKeiInfo, KKW00128SFConst.SVC_KEI_STAT_03);
		// サービス契約ステータスが「休止・中断中」「停止中」「解約済」「キャンセル済」の場合
		if (JKKCommonConst.SVC_KEI_STAT_210.equals(svcKeiStat) || JKKCommonConst.SVC_KEI_STAT_220.equals(svcKeiStat)
			|| JKKCommonConst.SVC_KEI_STAT_910.equals(svcKeiStat) || JKKCommonConst.SVC_KEI_STAT_920.equals(svcKeiStat))
		{
			netKeiNum++;
		}
		// IT1-2012-0002472 光ハイブリッド契約数チェックの契約数算出が誤っている 2012/12/20 END

		// v4.00.01 ANK-0404-00-00 光ネット契約数が無いの場合もメッセージ表示するよう変更 MOD START
		// 光ハイブリッド契約数 ＞ (光ネット契約数 - 1)　*　サービス項目の光ハイブリッド最大契約数
		// または光ハイブリッド契約が存在し且つ光ネット契約数が存在しない場合
		if (hhbKeiNum > ((netKeiNum - 1) * hhbMaxNum) 
				|| ((netKeiNum - 1 <= 0) && hhbKeiNum > 0))
		// v4.00.01 ANK-0404-00-00 光ネット契約数が無いの場合もメッセージ表示するよう変更 MOD END
		{
			// メッセージ表示処理
			String[] arg =
			{
				Integer.toString((netKeiNum - 1)),
				Integer.toString(hhbKeiNum)
			};
			// v4.00.01 ANK-0404-00-00 更新確認時と確定時とでメッセージを出し分ける対応 MOD START
			//JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB9650__Q, arg);
			if (JKKCommonConst.FUNC_CODE_2.equals(func_code))
			{
				// 機能コード（チェックのみ）の場合、更新確認用のメッセージ表示
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB9650__Q, arg);
			}
			else if(JKKCommonConst.FUNC_CODE_1.equals(func_code))
			{
				// 機能コード（チェック＆登録）の場合、完了用のメッセージ表示
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBB090__I, arg);
			}
			// v4.00.01 ANK-0404-00-00 更新確認時と確定時とでメッセージを出し分ける対応 MOD END
		}
	// v4.00.01 ANK-0404-00-00 ANK-0049-00-00の不具合対応 ADD START
	}
	// v4.00.01 ANK-0404-00-00 ANK-0049-00-00の不具合対応 ADD END
	}
	// v3.00.00 ANK-0049-00-00 ADD END
	/**
	 * @param bean
	 * @param key
	 * @return beanより取得したboolean型
	 */
	private boolean getBoolean(X31SDataBeanAccess bean, String key)
	{
		try
		{
			return bean.sendMessageBoolean(key, X31CWebConst.DATABEAN_GET_VALUE);
		}
		catch (X31SRuntimeException x31sre)
		{
			return false;
		}
	}

	// v3.0.0 UI残_No.045 ADD START
	/**
	 * 割引自動適用CCからの戻りMap取得
	 * 
	 * @param ido_div
	 * @param outputMap
	 */
	private Map<String, Object> getMsgList(String ido_div, Map<String, Object> outputMap)
	{
		Map<String, Object> retMap = new HashMap<String, Object>();

		// 異動区分 00004:回復
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
		{
			if (outputMap.containsKey("KKSV019451CC"))
			{
				retMap = (HashMap<String, Object>)outputMap.get("KKSV019451CC");
			}
		}
		// 異動区分 00005:解約
		else if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
		{
			if (outputMap.containsKey("KKSV019501CC"))
			{
				retMap = (HashMap<String, Object>)outputMap.get("KKSV019501CC");
			}
		}
		// 異動区分 00008:キャンセル
		else if (JKKCommonConst.IDO_DIV_VALUE_00008.equals(ido_div))
		{
			if (outputMap.containsKey("WrisvcAutoAplyCC"))
			{
				retMap = (HashMap<String, Object>)outputMap.get("WrisvcAutoAplyCC");
			}
		}
		// 異動区分 00009:コース変更
		else if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			// コース変更時、割引自動適用CC呼出を行っていない為、キー名称は仮
			if (outputMap.containsKey("KKSV020260SC"))
			{
				retMap = (HashMap<String, Object>)outputMap.get("KKSV020260SC");
			}
		}
		return retMap;
	}

	/**
	 * 割引自動適用からの確認メッセージ、完了時メッセージの表示を行うかどうかの判定<br>
	 * 以下の異動区分が対象<br>
	 * ・異動区分:00004:回復<br>
	 * ・異動区分:00005:解約<br>
	 * ・異動区分:00008:キャンセル<br>
	 * ・異動区分:00009:コース変更<br>
	 * 
	 * @param idoDiv
	 * @return
	 */
	private boolean isNeedWrisvcMsg(String idoDiv)
	{
		// 異動区分「00004:回復」「00005:解約」「00008:キャンセル」「00009:コース変更」の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(idoDiv) || JKKCommonConst.IDO_DIV_VALUE_00005.equals(idoDiv)
				|| JKKCommonConst.IDO_DIV_VALUE_00008.equals(idoDiv)
				|| JKKCommonConst.IDO_DIV_VALUE_00009.equals(idoDiv))
		{
			return true;
		}
		return false;
	}
	// v3.0.0 UI残_No.045 ADD END

	// v3.00.00 ANK-0097-00-00 ADD START
	/**
	 * @param paramBean
	 * @param outputMap
	 */
	private void checkKoji(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
		// 工事フラグを取得
		String kojiFlg = getString(paramBean[0], KKW00128SFConst.KOJI_FLG);
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div) && "1".equals(kojiFlg))
		{
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA010__I);
		}

	}
	// v3.00.00 ANK-0097-00-00 ADD END

	// 20120419 IT2-2012-0000341 START
	/**
	 * 更新確認ボタン押下時のエラーチェックを実施する
	 * 
	 * @param svcFormBean サービスフォームビーン
	 * @return エラーチェック結果
	 */
	private boolean updcfmErrCheck(X31SDataBeanAccess svcFormBean)
	{
		boolean isErr = false;

		// ***************************************************************** //
		// コース変更                                                        //
		// ***************************************************************** //
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// 料金コースの画面選択値を取得
			X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrsSubbean = pcrsList.getDataBean(0);
			String pcrsIndex    = pcrsSubbean.sendMessageString(KKW00128SFConst.INDEX_12,       X31CWebConst.DATABEAN_GET_VALUE);
			String selectPcrsCd = pcrsSubbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(pcrsIndex));

			// サービス契約の料金コースコードを取得
			X31SDataBeanAccessArray svcKeiInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
			X31SDataBeanAccess svcKeiSubbean = svcKeiInfo.getDataBean(0);
			String oldPcrsCd  = svcKeiSubbean.sendMessageString(KKW00128SFConst.PCRS_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
			// ST2-2012-0001588 2012/08/23 start
			String oldPplanCd = svcKeiSubbean.sendMessageString(KKW00128SFConst.PPLAN_CD_03, X31CWebConst.DATABEAN_GET_VALUE);

			// 「料金コース」＋「:」＋「料金プラン」の形式で比較
			if ((oldPcrsCd + ":" + oldPplanCd).equals(selectPcrsCd))
			// ST2-2012-0001588 2012/08/23 end
			{
				// 料金コースに変更がない場合、エラー
				JCCWebCommon.setMessageInfo(this, "EKB3300-KW", "pcrs_list");
				isErr = true;
			}
		}
		
		// 20121001 ANK-0397-00-00 工事有りの場合、申込書明細番号を必須にする対応 ADD START
		// ***************************************************************** //
		// コース変更                                                        //
		// ***************************************************************** //
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// 申込書明細番号必須チェック
			if(isNull(getString(svcFormBean, KKW00128SFConst.MSKMSHO_DTL_NO)) && checkKojiUm())
			{
				// 申込書明細番号が未入力且つ、工事有りの場合、エラー
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC730_KW, "mskmsho_dtl_no");
				isErr = true;
			}
		}
		// 20121001 ANK-0397-00-00 工事有りの場合、申込書明細番号を必須にする対応 ADD END

		// ***************************************************************** //
		// 休止受付　ＯＲ　休止変更・予約取消                                //
		// ***************************************************************** //
		if (
				ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00024)
				|| ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00025)
		)
		{
			// サービス開始年月日
			String svcStaYmd         = getString(svcFormBean, KKW00128SFConst.SVC_STA_YMD);
			// サービス休止不可月数取得
			String svcPauseFukaMonth = getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_FUKA_MONTH);
			// サービス休止年月日
			String svcPauseYmd = getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_YEAR)
					+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_MON)
					+ getString(svcFormBean, KKW00128SFConst.SVC_PAUSE_DAY);

			// サービス休止年月日が入力されている場合のみ
			if (svcPauseYmd != null && ! "".equals(svcPauseYmd))
			{
				try
				{
					// サービス開始年月日にサービス休止不可月数を加算
					String svcPauseOKYmd = JPCDateUtil.addMonth(svcStaYmd, Integer.parseInt(svcPauseFukaMonth));

					// 運用日がサービス休止ＯＫ年月日より前の場合
					if (svcPauseYmd.compareTo(svcPauseOKYmd) < 0)
					{
						// サービスフラグ取得
						String svcFlg = getString(svcFormBean, KKW00128SFConst.SVC_FLG);
						if ("2".equals(svcFlg) || "3".equals(svcFlg))
						{
							// マンションの場合（マンションの場合は、ワーニング）
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC250__Q, new String[]{ svcPauseFukaMonth });
						}
						else
						{
							// ホーム、メゾンの場合
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC240_NW, new String[]{ svcPauseFukaMonth });
							isErr = true;
						}
					}
				}
				catch (Exception e)
				{
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1050_TW, new String[]{ "サービス休止年月日開始日チェック月数" });
					isErr = true;
				}
			}
		}

		return isErr;
	}
	// 20120419 IT2-2012-0000341 END



	/**
	 * 回復可能期間を過ぎているかどうか調べる
	 * @param svcFormBean 
	 * 
	 * @param outputMap
	 * @return 真：回復可能期間を超過、偽：回復可能期間内もしくは回復異動ではない
	 * @since 2012-07-03 ST2-2012-0001192対応のデグレ対応（IT2-2012-0001140対応のついで）
	 */
	private boolean itsOverKaihkPsbPrd(X31SDataBeanAccess svcFormBean, HashMap<String, Object> outputMap)
	{
		boolean ret = false;

		//回復異動の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
		{
			//一旦、解約不可にする

			//サービス契約一意照会結果を取得
			Map<?, ?> kksv005903sc = (Map<?, ?>)outputMap.get("KKSV005903SC");
			List<?> ekk0081a010List = (List<?>) (null != kksv005903sc ? kksv005903sc.get("EKK0081A010CBSMsg1List") : null);
			Map<?, ?> kk0081Map = (Map<?, ?>) (null != ekk0081a010List && 0 < ekk0081a010List.size() ? ekk0081a010List.get(0) : null);
			
			String periodYmd = "";

			if (null != kk0081Map)
			{
				//サービス契約ステータス
				String svc_kei_stat = (String) kk0081Map.get("svc_kei_stat");
				
				if (JKKCommonConst.SVC_KEI_STAT_920.equals(svc_kei_stat))	//キャンセル済の場合
				{
					//サービス契約キャンセル年月日を回復可能期間の起算日とする
					periodYmd = (String) kk0081Map.get("svc_cancel_ymd");
				}
				else		//解約済の場合
				{
					//サービス契約終了年月日を回復可能期間の起算日とする
					periodYmd = (String) kk0081Map.get("svc_endymd");
				}
			}
			if (null == periodYmd || 8 > periodYmd.length())
			{
				periodYmd = "19000101";
			}
			
			//回復可能期間
			Map<?, ?> kksv005948sc = (Map<?, ?>)outputMap.get("KKSV005948SC");
			List<?> childList = (List<?>)(null != kksv005948sc ? kksv005948sc.get("EKK0781A010CBSMsg1List") : null);
			Map<?, ?> childMap = (Map<?, ?>) (null != childList && 0 < childList.size() ? childList.get(0) : null);
			String kaihk_psb_prd = (String) (null != childMap ? childMap.get("kaihk_psb_prd") : "0");

			String kaihk_psb_end_ymd = JKKWebCommon.addDay(periodYmd, Integer.parseInt(kaihk_psb_prd));

			//回復可能期間を過ぎている場合、回復ＮＧ
			int cmp = JKKWebCommon.getOpeDate(this, null).compareTo(kaihk_psb_end_ymd);
			// 20131209 OM-2013-0004867 運用日＝「サービス終了年月日＋回復可能期間」日目は、回復可能となるよう修正 MOD START
//			if (cmp >= 0)
			if (cmp > 0)
			// 20131209 OM-2013-0004867 運用日＝「サービス終了年月日＋回復可能期間」日目は、回復可能となるよう修正 MOD END
			{
				ret = true;
	
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB3050_KW);
//
//				String nextScreenId = JCCWebCommon.getScreenId(this);
//
//				// 顧客契約内引継ぎデータセット
//				JCCWebCommon.setScreenInfo(this, nextScreenId, getHktgiDataMap(svcFormBean,
//						KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS));
//
//				// 共有フォーム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, "");
//
//				setTransferPageId(nextScreenId);
			}
			else
			{
				//jsでの回復可能期間経過チェックを通るようクリアする
				svcFormBean.sendMessage(KKW00128SFConst.KAIHK_PSB_PRD, X31CWebConst.DATABEAN_CLEAR);
			}
		}

		return ret;
	}



	// ANK0363-00-00 FTTH従量制プランStep2対応 START
	/**
	 * @return true
	 * @throws Exception
	 */
	public boolean actionTaiikiInfoShokai() throws Exception
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		HashMap<String, Object> hktgiMap = new HashMap<String, Object>();

		// ▼▼▼▼▼ 2012/10/19 UPD IT1-2012-0001254 START ▼▼▼▼▼
//		hktgiMap.put("svc_kei_no", getString(svcFormBean, KKW00128SFConst.SVC_KEI_NO));
//		hktgiMap.put("sysid", getString(svcFormBean, KKW00128SFConst.SYS_ID));

		// サービス契約番号
		hktgiMap.put("サービス契約番号", getString(svcFormBean, KKW00128SFConst.SVC_KEI_NO));
		// ▲▲▲▲▲ 2012/10/19 UPD IT1-2012-0001254 E N D ▲▲▲▲▲

		// 引継ぎデータセット
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02541, hktgiMap);

		// 戻る制御を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW02541, JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW02541);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW02541);

		return true;
	}
	// ANK0363-00-00 FTTH従量制プランStep2対応 END
	// ANK-0406-00-00 スマートバリュー START
	/**
	 * スマートバリューボタン押下（actionOpenSmtv）
	 * 
	 * @return 処理結果
	 */
	public boolean actionOpenSmtv()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// 遷移先情報を設定
		String[] hktgiKeys = {
				KKW00128SFConst.SYSID_01,
				KKW00128SFConst.SVC_KEI_NO_01,
				KKW00128SFConst.IDO_DIV_01
			};

		HashMap<String, Object> hktgiMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, hktgiKeys);

		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW13901, hktgiMap);
		
		// 遷移先の指定
		super.getCommonInfoBean().sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, 
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW13901);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		
		return true;
	}
	// ANK-0406-00-00 スマートバリュー END
	// 20121001 ANK-0392-03-00 長期割引契約制度対応 ADD START
	/**
	 * 解約精算金有無チェック<BR>
	 * 契約サービスがｅｏ光ネットホームタイプ、メゾンタイプのコース変更実施時で<BR>
	 * 変更前プランが定額制で長期割引の適用開始日が前月以前で、変更後プランが従量制の場合は、<BR>
	 * 確認メッセージを表示する。<BR>
	 * 
	 */
	private boolean checkChokiWrib()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 異動区分がコース変更以外
		String idoDiv = svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		if (!JKKCommonConst.IDO_DIV_VALUE_00009.equals(idoDiv))
		{
			return true;
		}
		
		// 「ホームタイプ、メゾンタイプ」以外
		String svcFlg = svcFormBean.sendMessageString(KKW00128SFConst.SVC_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if (!"1".equals(svcFlg) && !"4".equals(svcFlg))
		{
			return true;
		}
		
		// 長割以外
		String wribSvcKeiNoChokiWrib = getString(svcFormBean, KKW00128SFConst.WRIB_SVC_KEI_NO_CHOKI_WRIB);
		if(wribSvcKeiNoChokiWrib == null || "".equals(wribSvcKeiNoChokiWrib))
		{
			return true;
		}
		
		// 変更前プランが定額制以外
		String pplanTikiSkcd = getString(svcFormBean, KKW00128SFConst.PPLAN_TIKI_SKCD);
		if(!"0".equals(pplanTikiSkcd))
		{
			return true;
		}
		
		// 長割の適用開始が、前月以前以外の場合は
		String svcStaYmdChokiWrib = getString(svcFormBean, KKW00128SFConst.SVC_STA_YMD_CHOKI_WRIB);
		if(svcStaYmdChokiWrib == null || "".equals(svcStaYmdChokiWrib))
		{
			return true;
		}
		
		String svcStaYm = svcStaYmdChokiWrib.substring(0, 6);
		String opeYmd = getString(svcFormBean, KKW00128SFConst.OPE_YMD);
		String opeYm =opeYmd.substring(0, 6);
		
		if(!(svcStaYm.compareTo(opeYm) < 0))
		{
			return true;
		}
		
		X31SDataBeanAccess pcrs_subbean = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST).getDataBean(0);
		String idx = pcrs_subbean.sendMessageString(KKW00128SFConst.INDEX_12, X31CWebConst.DATABEAN_GET_VALUE);
		String pcrsListValue = pcrs_subbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12,
				X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(idx));
		
		// 変更後料金プランコード
		String chafPplanCd = pcrsListValue.split(":")[1];
		
		X31SDataBeanAccessArray eKK1631B002CBSMSG1LIST = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK1631B002CBSMSG1LIST);
		for (int i = 0; i < eKK1631B002CBSMSG1LIST.getCount(); i++)
		{
			X31SDataBeanAccess eKK1631B002CBSMSG = eKK1631B002CBSMSG1LIST.getDataBean(i);
			// 料金プランコード
			String tmpPlanCd = eKK1631B002CBSMSG.sendMessageString(KKW00128SFConst.PPLAN_CD_15, X31CWebConst.DATABEAN_GET_VALUE);
			// ｅｏ光ネット料金プラン体系識別コード
			String tmpPplanTikiSkcd = eKK1631B002CBSMSG.sendMessageString(KKW00128SFConst.EOHNT_PPLAN_TIKI_SKCD_15, X31CWebConst.DATABEAN_GET_VALUE);
			
			if(chafPplanCd.equals(tmpPlanCd) && "1".equals(tmpPplanTikiSkcd))
			{
				// 変更後の料金プランが従量制
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC180__Q);
				return false;
			}
		}
		
		return true;
	}
	// 20121001 ANK-0392-03-00 長期割引契約制度対応 ADD START
	// 20121001 ANK-0546-00-00 宅内PF ADD START
	/**
	 * 割賦契約存在チェック<BR>
	 * 割賦請求終了年月日が運用日を含む未来日の割賦契約が存在する場合、<BR>
	 *   異動区分：回復場合、割賦販売形態等の変更を促す情報メッセージを表示する<BR>
	 *   異動区分：解約場合、割賦販売形態等の変更を促す情報メッセージを表示する<BR>
	 * 
	 */
	private boolean checkKapKei()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		String idoDiv = svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(idoDiv) || JKKCommonConst.IDO_DIV_VALUE_00005.equals(idoDiv))
		{
			String kapKeiKkokuOputFlg = svcFormBean.sendMessageString(KKW00128SFConst.KAP_KEI_KKOKU_OPUT_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			if (JKKCommonConst.FLG_ON.equals(kapKeiKkokuOputFlg))
			{
				// 割賦契約警告出力フラグが"1"(警告有り)の場合
				String msgid = "";
				
				if(JKKCommonConst.IDO_DIV_VALUE_00004.equals(idoDiv))
				{
					msgid = JPCOnlineMessageConstant.EKBB830__I;
				}
				else
				{
					msgid = JPCOnlineMessageConstant.EKBB840__I;
				}
				
				JCCWebCommon.setMessageInfo(this,msgid);
				return false;
			}
		}
		return true;
	}
	// 20121001 ANK-0546-00-00 宅内PF ADD START

	// 20121001 ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD START
	/**
	 * 申込書明細番号重複チェック
	 * 入力された申込明細番号が、工事案件または主要項目削除に、確認メッセージを表示
	 * @param paramBean
	 * @param outputMap
	 * @param func_code 機能コード
	 */
	private boolean checkDbleMskmDslNo(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap) 
	{
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div)){
			HashMap<String, Object> kksv020267SC = (HashMap<String, Object>)outputMap.get("KKSV020267SC");
			if (kksv020267SC != null && kksv020267SC.containsKey("EKU0011A010CBSMsg1List"))
			{
				List<HashMap<String, Object>> eKU0011A010CBSMsg1List = (List<HashMap<String, Object>>)kksv020267SC.get("EKU0011A010CBSMsg1List");
				if(eKU0011A010CBSMsg1List != null && eKU0011A010CBSMsg1List.size() > 0){
					//入力された申込明細番号が、工事案件に存在する場合、確認メッセージ
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC370__Q);
					return false;
				}
			}
			HashMap<String, Object> kksv020268SC = (HashMap<String, Object>)outputMap.get("KKSV020268SC");
			if (kksv020268SC != null && kksv020268SC.containsKey("EKK2601B001CBSMsg1List"))
			{
				List<HashMap<String, Object>> eKK2601B001CBSMsg1List = (List<HashMap<String, Object>>)kksv020268SC.get("EKK2601B001CBSMsg1List");
				if(eKK2601B001CBSMsg1List != null && eKK2601B001CBSMsg1List.size() > 0){
					//入力された申込明細番号が、主要項目削除に存在する場合、確認メッセージ
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBC370__Q);
					return false;
				}
			}
		}
		return true;
	}
	// 20121001 ANK-0275-01-00 ２００Ｍ・１ギガグレードアップキャンペーン本格対応 ADD END
	
	// 20121001 ANK-0397-00-00 工事有りの場合、申込書明細番号を必須にする対応 ADD START
	/**
	 * 工事有無判定<br>
	 * コース変更前のPON種別コードが「E-PON」且つ、コース変更後の料金コースPON条件コードがGE-PONのみの場合、工事有
	 * @param paramBean
	 * @return true:工事有、false:工事無
	 */
	private boolean checkKojiUm() 
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// PON種別コード
		String ponSbtCd = getString(svcFormBean, KKW00128SFConst.PON_SBT_CD);
		// IT1-2023-0000059 ADD START
		// HGW交換不可フラグ(個別向け)
		String kojinHgwkknFfg = getString(svcFormBean, KKW00128SFConst.HGW_KKN_FFG);
		// HGW交換不可フラグ(全体向け)
		String allHgwkknFfg = getString(svcFormBean, KKW00128SFConst.ALL_HGW_KKN_FFG);
		// 親機種別コード
		String oyaKikiSbtcd = getString(svcFormBean, KKW00128SFConst.OYA_KIKI_SBT_CD);
		// 機器変更有無(自動交換判定結果)
		String kikiChgUm = getString(svcFormBean, KKW00128SFConst.ATKN_UM);
		// ＨＧＷ存在チェックフラグ
		boolean hgwChkFlg = false;
		// 多機能RT/BBR存在チェックフラグ
		boolean routerChkFlg = false;
		// 機器提供サービス契約一覧照会結果
		X31SDataBeanAccessArray kktkSvcKeiInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0341B002CBSMSG1LIST);
		// IT1-2023-0000059 ADD END
		
		// PON種別コードが「E-PON」の場合
		if (CD00211_E_PON.equals(ponSbtCd))
		{
			// 選択された料金コースの料金コースPON条件コードを取得
			String ponJokenList = getString(svcFormBean, KKW00128SFConst.PON_JOKEN_LIST);
			String[] ponJokenArray = ponJokenList.split(",");
			X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrs = pcrsList.getDataBean(0);
			String strIdx = getString(pcrs, KKW00128SFConst.INDEX_12);
			int idx = 0;
			if (strIdx != null && !"".equals(strIdx)) 
			{
				idx = Integer.parseInt(strIdx);
				if (idx > 0) {
					idx--;
				}
			}
			String pcrsPonJokenCd = ponJokenArray[idx];
			
			// コース変更後の料金コースPON条件コードが「GE-PONのみ」または「10GE-PONのみ」の場合
			// IT1-2016-0000014 2016/01/27 MOD START
			//if (CD00820_GE_PON_ONLY.equals(pcrsPonJokenCd))
			if (CD00820_GE_PON_ONLY.equals(pcrsPonJokenCd) || CD00820_10GE_PON_ONLY.equals(pcrsPonJokenCd)) 
			// IT1-2016-0000014 2016/01/27 MOD END
			{
				// 工事有
				return true;
			}
		}
		
		// IT1-2016-0000014 2015/12/16 ADD START
		// PON種別コードが「GE-PON」の場合
		else if  (CD00820_GE_PON_ONLY.equals(ponSbtCd))
		{
			// 選択された料金コースの料金コースPON条件コードを取得
			String ponJokenList = getString(svcFormBean, KKW00128SFConst.PON_JOKEN_LIST);
			String[] ponJokenArray = ponJokenList.split(",");
			X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrs = pcrsList.getDataBean(0);
			String strIdx = getString(pcrs, KKW00128SFConst.INDEX_12);
			int idx = 0;
			if (strIdx != null && !"".equals(strIdx)) 
			{
				idx = Integer.parseInt(strIdx);
				if (idx > 0) {
					idx--;
				}
			}
			String pcrsPonJokenCd = ponJokenArray[idx];
			// コース変更後の料金コースPON条件コードが「10GE-PONのみ」の場合
			if (CD00820_10GE_PON_ONLY.equals(pcrsPonJokenCd)) 
			{
				// 工事有
				return true;
			}
		}
		
		
		// IT1-2023-0000059 ADD START
		//機器の存在チェック
		for (int i = 0; i < kktkSvcKeiInfo.getCount(); i++)
		{
			X31SDataBeanAccess pcrsInfoSubbean = kktkSvcKeiInfo.getDataBean(i);
			String kktkSvcCd = pcrsInfoSubbean.sendMessageString(KKW00128SFConst.KKTK_SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);
			
			if (JKKStrConst.KKTK_SVC_CD_HGW.equals(kktkSvcCd))
			{
				hgwChkFlg = true;
			}
			
			if (JKKStrConst.KKTK_SVC_CD_TAKINORT.equals(kktkSvcCd) || JKKStrConst.CD00132_BBR.equals(kktkSvcCd))
			{
				routerChkFlg = true;
			}
		}
		
		// @ＢＢＲ、多機能RTの自動交換が発生する。
		//  (自動交換判定の結果で判断する。) 
		//   ＨＧＷを持っていない。ＢＢＲ、又は多機能RTを持っている。持っているＢＢＲ、又は多機能RTの速度帯より変更後料金コースの速度帯が上位。
		// B親機OLTが[10ギガ]。(申込収容位置空き情報の親機種別コードが"04"(10G-EPON))
		// C「HGW交換不可フラグ(個別向け)」が[OFF]。
		// D「HGW交換不可フラグ(全体向け)」が[OFF]。

		if (!hgwChkFlg && routerChkFlg && JKKStrConst.OYAK_SBT_CD_10G_EPON.equals(oyaKikiSbtcd)
				&& !(HGW_KKN_FFG_1.equals(kojinHgwkknFfg)) && !(HGW_KKN_FFG_1.equals(allHgwkknFfg)))
		{
			if (KIKI_CHG_UM_1.equals(kikiChgUm))
			{
				// 工事有
				return true;
			}
		}
		// IT1-2023-0000059 ADD END
		
		
		// IT1-2016-0000014 2015/12/16 ADD END
		return false;
	}
	// 20121001 ANK-0397-00-00 工事有りの場合、申込書明細番号を必須にする対応 ADD END

	// ▼▼▼▼▼ 2012/12/14 IT2-2012-0001992 ADD START ▼▼▼▼▼
	/**
	 * 
	 */
	private void setSvcPauseStpInfo(
			X31SDataBeanAccess svcFormBean,
			Map<String, Object> outputMap,
			X31SDataBeanAccess svcKeiInfo,
			String unyoYmd
	) throws Exception
	{
		// 休止・中断コード取得
		String pauseStpCd = getString(svcKeiInfo, KKW00128SFConst.PAUSE_STP_CD_03);

		// サービス休止年月日
		String svcPauseYmd    = getString(svcKeiInfo, KKW00128SFConst.SVC_PAUSE_YMD_03);
		// サービス休止解除年月日
		String svcPauseRlsYmd = getString(svcKeiInfo, KKW00128SFConst.SVC_PAUSE_RLS_YMD_03);
		// サービス停止年月日
		String svcStpYmd      = getString(svcKeiInfo, KKW00128SFConst.SVC_STP_YMD_03);
		// サービス停止解除年月日
		String svcStpRlsYmd   = getString(svcKeiInfo, KKW00128SFConst.SVC_STP_RLS_YMD_03);

		// 休止料金適用年月
		String svcPausePrc    = getString(svcKeiInfo, KKW00128SFConst.SVC_PAUSE_CHRG_STA_YMD_03);

		// 休止・中断コードが「中断」の場合
		boolean isStp = CD00632_PAUSE.equals(pauseStpCd);
		if (isStp)
		{
			// サービス停止年月日　　　←　サービス休止年月日
			svcStpYmd      = svcPauseYmd;
			// サービス停止解除年月日　←　サービス休止解除年月日
			svcStpRlsYmd   = svcPauseRlsYmd;

			// サービス休止年月日　　　空セット
			svcPauseYmd    = "";
			// サービス休止解除年月日　空セット
			svcPauseRlsYmd = "";
			// 休止料金適用年月　　　　空セット
			svcPausePrc    = "";
		}

		// ================================================ //
		// 異動区分：中断受付の場合                         //
		// ================================================ //
		if (JKKCommonConst.IDO_DIV_VALUE_00010.equals(ido_div))
		{
			svcStpYmd    = unyoYmd;		// サービス停止年月日　　　←　運用日
			svcStpRlsYmd = "";			// サービス停止解除年月日　空セット
		}
		// ================================================ //
		// 異動区分：中断解除の場合                         //
		// ================================================ //
		else if (JKKCommonConst.IDO_DIV_VALUE_00011.equals(ido_div))
		{
			svcStpRlsYmd = unyoYmd;		// サービス停止解除年月日　←　運用日
		}

		// ================================================ //
		// 異動区分：休止受付の場合                         //
		// ================================================ //
		if (JKKCommonConst.IDO_DIV_VALUE_00024.equals(ido_div))
		{
			// 年月日　フォーマット
			SimpleDateFormat sdfYmd = new SimpleDateFormat("yyyyMMdd");
			// 年月　　フォーマット
			SimpleDateFormat sdfYm  = new SimpleDateFormat("yyyyMM");

			// ++++++++++++++++++++++++++++ //
			// サービス休止年月日　設定     //
			// ++++++++++++++++++++++++++++ //
			Calendar calPauseYmd = Calendar.getInstance();
			calPauseYmd.setTime(sdfYmd.parse(unyoYmd));

			// 運用日が1日ではない場合、翌月の1日を設定
			if (calPauseYmd.get(Calendar.DAY_OF_MONTH) != 1)
			{
				calPauseYmd.add(Calendar.MONTH, 1);
				calPauseYmd.set(Calendar.DAY_OF_MONTH, 1);
			}

			// ++++++++++++++++++++++++++++ //
			// サービス休止解除年月日　設定 //
			// ++++++++++++++++++++++++++++ //
			// ST2-2013-0000371 2013/02/04 MOD START
			//Calendar calPauseRlsYmd = (Calendar)calPauseYmd.clone();
			// 休止期間取得
			//String pausePrd = getString(svcFormBean, "休止期間");
			//calPauseRlsYmd.add(Calendar.DAY_OF_MONTH, Integer.parseInt(pausePrd));
			String strPauseRlsYmd = sdfYmd.format(calPauseYmd.getTime());
			// 休止期間月数取得
			String pausePrd = getString(svcFormBean, "休止期間月数");
			// 休止期間月数を加算してサービス休止解除年月日の初期値を設定する。
			String calPauseRlsYmd = JPCDateUtil.addMonth(strPauseRlsYmd, Integer.parseInt(pausePrd));
			// ST2-2013-0000371 2013/02/04 MOD END

			svcPauseYmd    = sdfYmd.format(calPauseYmd.getTime());		// サービス休止年月日
			// ST2-2013-0000371 2013/02/04 MOD START
			//svcPauseRlsYmd = sdfYmd.format(calPauseRlsYmd.getTime());	// サービス休止解除年月日
			svcPauseRlsYmd = calPauseRlsYmd;							// サービス休止解除年月日
			// ST2-2013-0000371 2013/02/04 MOD END
			svcPausePrc    = sdfYm.format(calPauseYmd.getTime());		// 休止料金適用年月
		}
		// ================================================ //
		// 異動区分：休止受付以外の場合                     //
		// ================================================ //
		else
		{
			// 異動予約一覧紹介の結果を抽出
			Map<String, Object> kksv005992sc = (Map<String, Object>)outputMap.get("KKSV005992SC");
			Map<String, Object> kksv005993sc = (Map<String, Object>)outputMap.get("KKSV005993SC");
			List<Map<String, Object>> ekk1681b00101List = (List<Map<String, Object>>)kksv005992sc.get("EKK1681B001CBSMsg1List");
			List<Map<String, Object>> ekk1681b00102List = (List<Map<String, Object>>)kksv005993sc.get("EKK1681B001CBSMsg1List");

			// 休止予約中の場合
			if (ekk1681b00101List != null && ekk1681b00101List.size() > 0)
			{
				// サービス休止年月日　　　取得
				svcPauseYmd    = (String)ekk1681b00101List.get(0).get("rsv_aply_ymd");
				// 休止料金適用年月　　　　取得
				svcPausePrc    = (String)ekk1681b00101List.get(0).get("svc_pause_chrg_sta_ymd");
			}

			// 休止予約中の場合
			if (ekk1681b00102List != null && ekk1681b00102List.size() > 0)
			{
				// サービス休止解除年月日　取得
				svcPauseRlsYmd = (String)ekk1681b00102List.get(0).get("rsv_aply_ymd");
			}
		}

		// サービス停止解除年月日が初期値の場合は、表示しない
		if (isMaxYmd(svcStpRlsYmd))
		{
			svcStpRlsYmd   = "";
		}

		// サービス休止解除年月日が初期値の場合は、表示しない
		if (isMaxYmd(svcPauseRlsYmd))
		{
			svcPauseRlsYmd = "";
		}

		// ********************************************* //
		// サービス停止・中断年月日                      //
		// ********************************************* //
		setString(svcFormBean, KKW00128SFConst.SVC_STP_YEAR, subString(svcStpYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_STP_MON,  subString(svcStpYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_STP_DAY,  subString(svcStpYmd, 6, 8));

		setString(svcFormBean, KKW00128SFConst.DSP_SVC_STP_YMD, JPCUtilCommon.formatDate(svcStpYmd));

		// ********************************************* //
		// サービス停止・中断解除年月日                  //
		// ********************************************* //
		setString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_YEAR, subString(svcStpRlsYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_MON,  subString(svcStpRlsYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_STP_RLS_DAY,  subString(svcStpRlsYmd, 6, 8));

		setString(svcFormBean, KKW00128SFConst.DSP_SVC_STP_RLS_YMD, JPCUtilCommon.formatDate(svcStpRlsYmd));

		// ********************************************* //
		// サービス休止年月日                            //
		// ********************************************* //
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_YEAR, subString(svcPauseYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_MON,  subString(svcPauseYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_DAY,  subString(svcPauseYmd, 6, 8));

		setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_YMD, JPCUtilCommon.formatDate(svcPauseYmd));

		// ********************************************* //
		// 休止料金適用年月                              //
		// ********************************************* //
		setString(svcFormBean, KKW00128SFConst.PAUSE_APLY_YEAR, subString(svcPausePrc, 0, 4));
		setString(svcFormBean, KKW00128SFConst.PAUSE_APLY_MON,  subString(svcPausePrc, 4, 6));

		setString(svcFormBean, KKW00128SFConst.DSP_PAUSE_APLY_YM, getYYYYMM(svcPausePrc));

		// ********************************************* //
		// サービス休止解除年月日                        //
		// ********************************************* //
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_YEAR, subString(svcPauseRlsYmd, 0, 4));
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_MON,  subString(svcPauseRlsYmd, 4, 6));
		setString(svcFormBean, KKW00128SFConst.SVC_PAUSE_RLS_DAY,  subString(svcPauseRlsYmd, 6, 8));

		setString(svcFormBean, KKW00128SFConst.DSP_SVC_PAUSE_RLS_YMD, JPCUtilCommon.formatDate(svcPauseRlsYmd));
	}

	/**
	 * 
	 * @param	str
	 * @return
	 */
	private String getYYYYMM(String str)
	{
		if (str != null && ! "".equals(str) && str.length() >= 6)
		{
			return str.substring(0, 4) + "/" + str.substring(4, 6);
		}
		else
		{
			return "";
		}
	}
	// ▲▲▲▲▲ 2012/12/14 IT2-2012-0001992 ADD E N D ▲▲▲▲▲
	// 20130125 ANK-1270-00-00 1ギガコースその他価格改定対応 ADD START
	/**
	 * コース変更手数料減額ＣＰ適用チェック<BR>
	 * 契約サービスがサービスステータスがサービス提供中以降でコース変更実施時で<BR>
	 * コース変更手数料減額ＣＰ一覧照会明細リストの件数 ＞ 0件の場合は、<BR>
	 * 確認メッセージを表示する。<BR>
	 * @param paramBean
	 * @param outputMap
	 */
	private boolean checkPcrsCgWribCpAly(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 異動区分がコース変更以外
		String idoDiv = svcFormBean.sendMessageString(KKW00128SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		if (!JKKCommonConst.IDO_DIV_VALUE_00009.equals(idoDiv))
		{
			return true;
		}
		
		String svcKeiStat = svcFormBean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_H, X31CWebConst.DATABEAN_GET_VALUE);
		
		
		// サービス契約ステータスがサービス提供中より前(締結済以前)
		if (JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0)
		{
			return true;
		}
		
		HashMap<String, Object> kksv020271SC = (HashMap<String, Object>)outputMap.get("KKSV020271SC");
		
		if (kksv020271SC != null  && kksv020271SC.containsKey("EKK0851B002CBSMsg1List")){
			
			List<HashMap<String, Object>> eKK0851B002CBSMsg1List = (List<HashMap<String, Object>>)kksv020271SC.get("EKK0851B002CBSMsg1List");
			if(eKK0851B002CBSMsg1List != null && eKK0851B002CBSMsg1List.size() > 0){
				// コース変更手数料減額ＣＰ一覧照会明細リストの件数　＞　0件の場合
				
				String wribAutoAplyTgGaiFlg = svcFormBean.sendMessageString(KKW00128SFConst.WRIB_AUTO_APLY_TG_GAI_FLG, X31CWebConst.DATABEAN_GET_VALUE);
				
				// 割引自動適用対象外フラグが1(適用)の場合
				if ("1".equals(wribAutoAplyTgGaiFlg)){
					JCCWebCommon.setMessageInfo(this, "EKBC980--Q");
				}else{
					// 割引自動適用対象外フラグが1(適用)以外の場合
					JCCWebCommon.setMessageInfo(this, "EKBC970--Q");
				}
				return false;
			}
		}
		
		return true;
	}
	// 20130125 ANK-1270-00-00 1ギガコースその他価格改定対応 ADD END
	// ANK-1429-00-00 住所変更に伴うVA移動機器登録の解除対応 2013/03/20 START
	/**
	 * 住所変更予約中チェック
	 * 
	 * @param paramBean パラメータマップ
	 * @param outputMap 出力データマップ
	 * @param funcCode 機能コード
	 */
	private void checkAdchgRsv(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap, String funcCode)
	{
		Map<String, Object> retMap = null;
		String msgId = "";

		// 機能コード（チェックのみ）の場合、更新確認用のメッセージ表示
		if (JKKCommonConst.FUNC_CODE_2.equals(funcCode))
		{
			// 異動区分：解約
			if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(ido_div))
			{
				retMap = (HashMap<String, Object>)outputMap.get("KKSV019508CC");
				msgId = JPCOnlineMessageConstant.EKBD520__Q;
			}
		}
		// 機能コード（チェック＆登録）の場合、完了用のメッセージ表示
		else if(JKKCommonConst.FUNC_CODE_1.equals(funcCode))
		{
			// 異動区分：回復
			if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
			{
				retMap = (HashMap<String, Object>)outputMap.get("KKSV019497CC");
				msgId = JPCOnlineMessageConstant.EKBD510__I;
			}
		}

		if (null != retMap)
		{
			// 移動機器有無
			String moveKikiUm = (String)retMap.get("move_kiki_um");
			if (JKKStrConst.CD_DIV_UM_ARI.equals(moveKikiUm))
			{
				JCCWebCommon.setMessageInfo(this, msgId);
			}
		}
	}
	// ANK-1429-00-00 住所変更に伴うVA移動機器登録の解除対応 2013/03/20 END
	
	// 20130604 IT1-2013-0001255 ADD START
	/**
	 * サービス開始年月日チェック
	 * 
	 */
	private void checkSvcStaYmd()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// チェック対象年月日
		String targetYmd  = getString(svcFormBean, KKW00128SFConst.SVC_STA_YMD);
		// 異動区分
		String idoDiv = getString(svcFormBean, KKW00128SFConst.IDO_DIV);
		// サービスフラグ
		String svcFlg = getString(svcFormBean, KKW00128SFConst.SVC_FLG);
		// サービス契約ステータス
		String svcKeiStat =  getString(svcFormBean, KKW00128SFConst.SVC_KEI_STAT_H);
		
		// 登録内容修正、サービス情報訂正の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00032.equals(idoDiv)
				|| JKKCommonConst.IDO_DIV_VALUE_00033.equals(idoDiv))
		{
			// マンションタイプの場合
			if ("2".equals(svcFlg) || "3".equals(svcFlg))
			{
				// サービス契約ステータスがサービス提供中の場合
				if (JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) == 0)
				{
					
					// ■未来日付範囲チェック
					// 変更前サービス開始年月日
					X31SDataBeanAccess svcKeiBeen = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
					String chbf =  getString(svcKeiBeen, KKW00128SFConst.SVC_STA_YMD_03);
					
					// 未来日チェック日数
					String checkdays  = getString(svcFormBean, KKW00128SFConst.SVC_STA_YMD_CHECKDAYS);
					if(!isNull(targetYmd) && !targetYmd.equals(chbf) && !isNull(checkdays))
					{
						// 未来上限年月日（運用日＋未来日チェック日数）
						String ftJgnYmd = JPCDateUtil.addDay(JCCWebCommon.getOpeDate(this, null), Integer.parseInt(checkdays));
						
						if (targetYmd.compareTo(ftJgnYmd) > 0)
						{
							String[] str =
							{
								"サービス開始日"
								,"未来範囲チェック日数"
							};
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2990__Q, str);
						}
					}
				}
			}
		}
	}
	/**
	 * サービス利用開始希望年月日チェック
	 * 
	 */
	private void checkSvcUseStaKiboYmd()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// チェック対象年月日
		String targetYmd  = getString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YMD);
		// 異動区分
		String idoDiv = getString(svcFormBean, KKW00128SFConst.IDO_DIV);
		// サービスフラグ
		String svcFlg = getString(svcFormBean, KKW00128SFConst.SVC_FLG);
		// サービス契約ステータス
		String svcKeiStat =  getString(svcFormBean, KKW00128SFConst.SVC_KEI_STAT_H);
		//ANK-1918-00-00 ADD START
		//工事未連携フラグ
		String KojiNotRenFlg = getString(svcFormBean, KKW00128SFConst.KOJI_NOT_REN_FLG);
		//ANK-1918-00-00 ADD END
		// 登録内容修正、サービス情報訂正の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00032.equals(idoDiv)
				|| JKKCommonConst.IDO_DIV_VALUE_00033.equals(idoDiv))
		{
			// マンションタイプの場合
			if ("2".equals(svcFlg) || "3".equals(svcFlg))
			{
				//ANK-1918-00-00 MOD START
				//// サービス契約ステータスがサービス提供中未満の場合
				//if (JKKCommonConst.SVC_KEI_STAT_100.compareTo(svcKeiStat) > 0)
				//工事が未連携の場合
				if("true".equals(KojiNotRenFlg))
				//ANK-1918-00-00 MOD END
				{
					
					// 変更前サービス利用開始希望年月日
					X31SDataBeanAccess svcKeiBeen = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST).getDataBean(0);
					String chbf =  getString(svcKeiBeen, KKW00128SFConst.SVC_USE_STA_KIBO_YMD_03);

					// ■未来日付範囲チェック
					// 未来日チェック日数
					String checkdays  = getString(svcFormBean, KKW00128SFConst.SVC_USE_STA_KIBO_YMD_CHECKDAYS);
					if(!isNull(targetYmd) && !targetYmd.equals(chbf) && !isNull(checkdays))
					{
						// 未来上限年月日（運用日＋未来日チェック日数）
						String ftJgnYmd = JPCDateUtil.addDay(JCCWebCommon.getOpeDate(this, null), Integer.parseInt(checkdays));
						
						if (targetYmd.compareTo(ftJgnYmd) > 0)
						{
							String[] str =
							{
								"サービス開始希望日"
								,"未来範囲チェック日数"
							};
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2990__Q, str);
						}
					}
					
					// ■マンションサービス開始予定日との相関チェック
					// マンション親サービス開始予定年月日
					String masoySvcStaRsvYmd  = getString(svcFormBean, KKW00128SFConst.MASOY_SVC_STA_RSV_YMD);
					if(!isNull(targetYmd) && !targetYmd.equals(chbf) && !isNull(masoySvcStaRsvYmd))
					{
						if (targetYmd.compareTo(masoySvcStaRsvYmd) < 0)
						{
							String[] str =
							{
								"サービス開始希望日"
								,"サービス開始予定日（親）"
							};
							JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2980__Q, str);
						}
					}
				}
			}
		}
	}
	/**
	 * サービス終了年月日チェック
	 * 
	 */
	private void checkSvcEndYmd()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// チェック対象年月日
		String targetYmd  = getString(svcFormBean, KKW00128SFConst.SVC_END_YMD);
		// 異動区分
		String idoDiv = getString(svcFormBean, KKW00128SFConst.IDO_DIV);
		
		// 解約の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(idoDiv))
		{
			// ■未来日付範囲チェック
			// 未来日チェック日数
			String checkdays  = getString(svcFormBean, KKW00128SFConst.SVC_END_YMD_CHECKDAYS);
			if(!isNull(targetYmd) && !isNull(checkdays))
			{
				// 未来上限年月日（運用日＋未来日チェック日数）
				String ftJgnYmd = JPCDateUtil.addDay(JCCWebCommon.getOpeDate(this, null), Integer.parseInt(checkdays));
				
				if (targetYmd.compareTo(ftJgnYmd) > 0)
				{
					String[] str =
					{
						"サービス終了年月日"
						,"未来範囲チェック日数"
					};
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2990__Q, str);
				}
			}
		}
	}
	// 20130604 IT1-2013-0001255 ADD END
	
	// ANK-2079-00-00 解約予約が入っていても即時解約の投入を可能とする 2014/06/16 藤田 ADD START
	/**
	 * 解約実行前チェック（更新確認ボタン押下時）
	 * @param outputMap パラメータマップ
	 * @param idoDiv 異動区分
	 * @param funcCode 機能コード
	 * @return チェックにひっかかった場合、true
	 */
	private boolean checkDslPreExec(Map<String, Object> outputMap, String idoDiv, String funcCode)
	{
		boolean checkFlg = false;
		// 機能コード（チェックのみ）の場合、更新確認用のメッセージ表示
		if (JKKCommonConst.FUNC_CODE_2.equals(funcCode))
		{
			// 異動区分：解約
			if (JKKCommonConst.IDO_DIV_VALUE_00005.equals(idoDiv))
			{
				// 解約予約の存在チェック
				Map<String, Object> retMap = (Map<String, Object>)outputMap.get("KKSV019511CC");
				if (retMap != null && JKKStrConst.CD_DIV_UM_ARI.equals(retMap.get(KKSV0195_KKSV0195OPDBMapper.RSV_CANCEL_FLG)))
				{
					checkFlg = true;
					JCCWebCommon.setMessageInfo(this, "EKBE142--Q");
				}
			}
		}
		return checkFlg;
	}
	// ANK-2079-00-00 解約予約が入っていても即時解約の投入を可能とする 2014/06/16 藤田 ADD END
	
	/**
	 * 
	 * @param svc_sta_ymd
	 * @return
	 * @throws ParseException
	 */
	private String editPrettyYmd(String svc_sta_ymd) throws ParseException 
	{
		SimpleDateFormat fmtFineYmd = new SimpleDateFormat("yyyy/MM/dd");
		SimpleDateFormat fmtParse = new SimpleDateFormat("yyyyMMdd", Locale.US);

		if (!isBlankString(svc_sta_ymd) && 8 <= svc_sta_ymd.length())
		{
			svc_sta_ymd = fmtFineYmd.format(fmtParse.parse(svc_sta_ymd.substring(0, 8)));
		}
		else
		{
			svc_sta_ymd = "";
		}

		return svc_sta_ymd;
	}
	
	/**
	 * 空文字判定
	 * 
	 * @param tgt
	 * @return true: 空，　false: 値あり
	 */
	public static boolean isBlankString(String tgt)
	{
		return (tgt == null || (tgt != null && 1 > tgt.length()));
	}
	
	// ANK-1933-00-00 2014/02/20 ADD START
	private void setMapGmnData(X31SDataBeanAccess svcFormBean){
		//ワンタイムパスワード登録サービスに必要な項目を取得し、DataBeanに設定しておく。
		// ユーザー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(KKW00128SFConst.ONE_TIME_USER_ID, X31CWebConst.DATABEAN_SET_VALUE, userId);
		svcFormBean.sendMessageString(KKW00128SFConst.ONE_TIME_ORG_CD, X31CWebConst.DATABEAN_SET_VALUE, orgCd);
		svcFormBean.sendMessageString(KKW00128SFConst.ONE_TIME_POSITION_CD, X31CWebConst.DATABEAN_SET_VALUE, positionCd);

		// プロパティファイルより共通(地図)システムのシステムIDを取得
		String mapSysId = JCMAPLConstMgr.getString(PROP_SIMS_MAP_SYS_ID);
		svcFormBean.sendMessageString(KKW00128SFConst.ONE_TIME_SYS_ID, X31CWebConst.DATABEAN_SET_VALUE, mapSysId);

		// 地図を開くフラグの初期設定
		svcFormBean.sendMessageString(KKW00128SFConst.MAP_OPEN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
	}
	// ANK-1933-00-00 2014/02/20 ADD END

	// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 START
	/**
	 * サービス層で設定されたエラー情報をチェックし、チェック結果を返します。<br>
	 * <br>
	 * @param paramBean パラメータマップ
	 * @param outputMap 出力データマップ
	 * @return チェックエラーの場合はtrue、そうでない場合はfalse
	 */
	@SuppressWarnings("unchecked")
	private boolean checkError(X31SDataBeanAccess[] paramBean, HashMap<String, Object> outputMap)
	{
		boolean isError = false;

		// エラー情報を取得
		HashMap<String, Object> errorMap = (HashMap<String, Object>)outputMap.get("KKSV0194999SC");
		if (null == errorMap)
		{
			return isError;
		}

		// 異動区分：回復
		if (JKKCommonConst.IDO_DIV_VALUE_00004.equals(ido_div))
		{
			// オーダ発行条件チェック結果を取得
			String odrHakkoJokenFlg = (String)errorMap.get("odr_hakko_joken_flg");
			if (null != odrHakkoJokenFlg && "1".equals(odrHakkoJokenFlg))
			{
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE020_KW);
				isError = true;
			}
			// ANK-3239-00-00 ADD START
			// 解約後住所変更中チェック結果を取得
			String adchgAfterDslFlg = (String)errorMap.get("adchg_after_dsl_flg");
			if (null != adchgAfterDslFlg && "1".equals(adchgAfterDslFlg))
			{
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE790_KW);
				isError = true;
			}
			// ANK-3239-00-00 ADD END
		}

		return isError;
	}
	// OM-2014-0002254 強制解約から回復を行うと契約は回復されたがサービスが利用できない 2014/08/11 END
	
	// 2016/06/03 ANK-2687-00-00 ADD START
	/**
	 * 「会員ランク」リンク押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTransferTrank() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 画面情報を設定（TRANKシステム起動画面）
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.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_KKW00128);

		// 共有フォーム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/03 ANK-2687-00-00 ADD END
	// ANK-3251-00-00 2017/09/22 ADD START
	/**
	 * 「解約レター登録へ」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionDslLetterAdd() throws Exception
	{
		// サービスフォームBeanアクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// ANK-3251-00-00 2017/10/04 ADD START
		// 画面情報を設定
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		ArrayList<HashMap<String, Object>> hktgiList = (ArrayList<HashMap<String, Object>>)hktgiDataMap.get(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		HashMap<String, Object> hktgiListElement = hktgiList.get(0);
		hktgiListElement.put(JKKCommonConst.HKTGI_POPUP_MODE, "1");
		// ANK-3251-00-00 2017/10/04 ADD END
		
		// 引渡しデータの設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW21801,
// ANK-3251-00-00 2017/10/04 MOD START
//				getHktgiDataMap(svcFormBean, KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS));
				hktgiDataMap);
// ANK-3251-00-00 2017/10/04 MOD END
		
		// 遷移元画面の設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW21801, JKKScreenConst.SCREEN_ID_KKW00140);
		
		// 共有フォームBeanアクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		
		// 遷移先画面の設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW21801);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW21801);
		
		return true;
	}
	// ANK-3251-00-00 2017/09/22 ADD END
	// ANK-3296-00-00 2018/01/24 START
	/**
	 * 「精算金参照」ボタン押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionSeisankinDsp() throws Exception {
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW22101,
				hktgiData);

		// 戻り先画面IDを設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW22101,
				JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW22101);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW22101);

		return true;
	}

	/**
	 * 「工事費割賦」ボタン押下時処理
	 * 
	 * @return
	 * @throws Exception
	 */
	public boolean actionKojihiKappu() throws Exception {
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 顧客契約内引継ぎデータセット
		HashMap<String, Object> hktgiData = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);

		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW21901,
				hktgiData);

		// 戻る制御を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW21901,
				JKKScreenConst.SCREEN_ID_KKW00128);

		// 共有フォームBean設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW21901);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW21901);

		return true;
	}
	// ANK-3296-00-00 2018/01/24 END
// ▽▽▽ ANK-3412-15-00 ADD START
	/**
	 * 工事情報初期化処理
	 * <p>
	 * @param svcFormBean
	 * @param outputMap
	 */
	private void setInitKojiInfo(X31SDataBeanAccess svcFormBean, HashMap<String, Object> outputMap)
	{
		// 異動区分がコース変更の場合
		if (JKKCommonConst.IDO_DIV_VALUE_00009.equals(ido_div))
		{
			// サービス契約情報
			X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
			X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);

			// サービス契約の料金グループコードを取得
			String prcGrpCd = svc_kei_subbean.sendMessageString(KKW00128SFConst.PRC_GRP_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
			// サービス契約ステータスを取得
			String svcKeiStat = svc_kei_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03, X31CWebConst.DATABEAN_GET_VALUE);
			
			// メゾン提供実績
			List<HashMap<String, Object>> childList = null;
			Map<String, Object> parentMap = (Map<String, Object>)outputMap.get("KKSV005966SC");
			if (parentMap != null)
			{
				childList = (List<HashMap<String, Object>>)parentMap.get("EKK3181B010CBSMsg1List");
			}
			
			// メゾンでサービス提供中の場合のみ設定する。（新設工事完了連携前の工事に影響を与えない）
			if (JKKCommonConst.PRC_GRP_CD_03.equals(prcGrpCd)&& JKKCommonConst.SVC_KEI_STAT_100.equals(svcKeiStat))
			{
				// 工事入力フラグに２を設定 ※通常は１だが、工事画面からの戻りと見分けるために指定
				svcFormBean.sendMessageString(KKW00128SFConst.KOJI_INPUT_FLG, X31CWebConst.DATABEAN_SET_VALUE, "2");
				
				// 他システム連携_宅内調査要否
				svcFormBean.sendMessageBoolean(KKW00128SFConst.TSYRN_TAKCHO_HUYO_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
				// 宅内調査要否
				svcFormBean.sendMessageBoolean(KKW00128SFConst.TAKCHO_YH, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);

				// メゾンで開通実績が存在しない場合、設計要否を要に設定する
				if (childList != null && childList.size() > 0)
				{
					// 設計要否
					svcFormBean.sendMessageBoolean(KKW00128SFConst.DSGN_YH, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
				}
			}
		}
	}
// ▲▲▲ ANK-3412-15-00 ADD END

	// ANK-3387-00-00 ADD START
	/**
	 * 光コンセントかどうか判定します
	 * <p>
	 * @param svcFormBean
	 * return true/false：光コンセントである/光コンセントではない
	 */
	private boolean isHikariConsent(X31SDataBeanAccess svcFormBean)
	{
		// マッピング用Bean作成
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		// 提供方式パターンコードを取得する
		String tkHoshikiPatternCd = paramBean[0].sendMessageString(KKW00128SFConst.TK_HOSHIKI_PATTERN_CD, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (tkHoshikiPatternCd != null && !"".equals(tkHoshikiPatternCd))
		{
			// 提供方式パターンコードが"51"の場合
			if (JKKStrConst.TK_HOSHIKI_PATTERN_CD_51.equals(tkHoshikiPatternCd))
			{
				// 光コンセントである
				return true;
			}
			else
			{
				// 光コンセントではない
				return false;
			}
		}
		else
		{
			// 提供方式パターンコードを取得できない場合は光コンセントではない
			return false;
		}
	}
	// ANK-3387-00-00 ADD END
	
	// ANK-3655-00-00 ADD START
	/**
	 * beanから特定の要素を取得する
	 * @param bean 取得対象のBean
	 * @param item 取得項目
	 * @param index 要素番号
	 * @return 要素
	 */
	public static String getStringAt(X31SDataBeanAccess bean, String item, int index)
	{
		return bean.sendMessageString(item, X31CWebConst.DATABEAN_GET_VALUE, index);
	}

	/**
	 * 指定の要素の数を数える
	 * @param bean 数えたい要素を持ったBean
	 * @param item 数えたい要素
	 * @return 要素数
	 */
	public static int getArrayCount(X31SDataBeanAccess bean, String item)
	{
		Integer count = (Integer)bean.sendMessage(item, X31CWebConst.DATABEAN_GET_COUNT);
		return count.intValue();
	}

	/**
	 * beanの中からリストの要素を配列に変換する
	 * @param bean 取得対象Bean
	 * @param item 取得したい要素
	 * @return 配列に変換した値
	 */
	public static String[] getStringArray(X31SDataBeanAccess bean, String item)
	{
		X31SDataBeanAccessArray dataTypeList = bean
				.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess dataTypeBean = dataTypeList.getDataBean(0);
		int count = getArrayCount(dataTypeBean, item);
		ArrayList<String> result = new ArrayList<String>(count);
		for (int i = 0; i < count; i++)
		{
			String element = getStringAt(dataTypeBean, item, i);
			result.add(element);
		}
		return (String[])result.toArray(new String[0]);
	}

	// ANK-3655-00-00 ADD END
	
// ★★★★★ ANK-3796-00-00 2020/01/24 ADD START ★★★★★
	/**
	 * 「リース契約画面へ遷移」リンク押下時処理
	 * 
	 * @return 正常終了:true 異常終了:false
	 * @throws Exception
	 */
	public boolean actionTransferVcms() throws Exception
	{

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// 画面情報を設定（VCMSシステム起動画面）
		HashMap<String, Object> hktgiDataMap = getHktgiDataMap(svcFormBean,
				KKW00128SFConst.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_KKW00128);

		// 共有フォーム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-3987-00-00 ADD START
	/**
	 * Netflixなし⇔ありのコース変更の場合、変更前後の速度が同一かどうかを判定<br>
	 * <br>
	 * @param svcFormBean
	 * @return チェックエラーの場合はtrue、そうでない場合はfalse
	 */
	private boolean chkSameSpeedCrsChg(X31SDataBeanAccess svcFormBean)
	{
		boolean isInfo = false;
		
		// 料金コースの画面選択値を取得
		X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
		X31SDataBeanAccess pcrsSubbean = pcrsList.getDataBean(0);
		String pcrsIndex    = pcrsSubbean.sendMessageString(KKW00128SFConst.INDEX_12,       X31CWebConst.DATABEAN_GET_VALUE);
		String selectPcrsCdValue = pcrsSubbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(pcrsIndex));
		String selectPcrsCd = selectPcrsCdValue.split(":")[0];
		String selectPcrsSpeed = getPcrsSpeed(svcFormBean,selectPcrsCd);
		String selectBundleDiv = getBundleDiv(svcFormBean,selectPcrsCd);
		
		// サービス契約の料金コースコードを取得
		X31SDataBeanAccessArray svcKeiInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svcKeiSubbean = svcKeiInfo.getDataBean(0);
		String oldPcrsCd  = svcKeiSubbean.sendMessageString(KKW00128SFConst.PCRS_CD_03, X31CWebConst.DATABEAN_GET_VALUE);
		String oldPcrsSpeed = getPcrsSpeed(svcFormBean,oldPcrsCd);
		String oldBundleDiv = getBundleDiv(svcFormBean,oldPcrsCd);
		
		//変更前後の速度が同一の場合、Netflixなし⇔ありかどうかを判定
		if (selectPcrsSpeed.equals(oldPcrsSpeed))
		{
			if("001".equals(selectBundleDiv) && !"001".equals(oldBundleDiv))
			{
				isInfo = true;
			}
			if(!"001".equals(selectBundleDiv) && "001".equals(oldBundleDiv))
			{
				isInfo = true;
			}
		}

		return isInfo;
	}
	
	/**
	 * 料金コース速度コードを取得<br>
	 * <br>
	 * @param svcFormBean パラメータマップ
	 * @param pcrsCd 料金コースコード
	 * @return 料金コース速度コード
	 */
	private String getPcrsSpeed(X31SDataBeanAccess svcFormBean, String pcrsCd)
	{
		
		String M_pcrsSpeed = "";
		X31SDataBeanAccessArray pcrsInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0791B003CBSMSG1LIST);
		
		for (int i = 0; i < pcrsInfo.getCount(); i++)
		{
			
			X31SDataBeanAccess pcrsInfoSubbean = pcrsInfo.getDataBean(i);
			String M_pcrsCd = pcrsInfoSubbean.sendMessageString(KKW00128SFConst.PCRS_CD, X31CWebConst.DATABEAN_GET_VALUE);
			
			if(M_pcrsCd.equals(pcrsCd))
			{
				M_pcrsSpeed = pcrsInfoSubbean.sendMessageString(KKW00128SFConst.PCRS_SPEED_CD, X31CWebConst.DATABEAN_GET_VALUE);
			}
			
		}
		
		return M_pcrsSpeed;
	}
	
	
	/**
	 * 他事業者バンドル区分を取得<br>
	 * <br>
	 * @param svcFormBean 
	 * @param pcrsCd 料金コースコード
	 * @return 他事業者バンドル区分
	 */
	private String getBundleDiv(X31SDataBeanAccess svcFormBean, String pcrsCd)
	{
		
		String M_bundleDiv = "";
		X31SDataBeanAccessArray pcrsInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0791B003CBSMSG1LIST);
		
		for (int i = 0; i < pcrsInfo.getCount(); i++)
		{
			
			X31SDataBeanAccess pcrsInfoSubbean = pcrsInfo.getDataBean(i);
			String M_pcrsCd = pcrsInfoSubbean.sendMessageString(KKW00128SFConst.PCRS_CD, X31CWebConst.DATABEAN_GET_VALUE);
			
			if(M_pcrsCd.equals(pcrsCd))
			{
				M_bundleDiv = pcrsInfoSubbean.sendMessageString(KKW00128SFConst.TAJGS_BUNDLE_DIV, X31CWebConst.DATABEAN_GET_VALUE);
			}
			
		}
		
		return M_bundleDiv;
	}

	/**
	 * サービス開始前のコース変更時、変更後コースがNetflixパックコースではない、
	 * オプションサービス契約に「Netflixプレミアム」(ステータス：受付済〜利用停止中)が登録されているかどうかを判定<br>
	 * <br>
	 * @param svcFormBean
	 * @return チェックエラーの場合はtrue、そうでない場合はfalse
	 */
	private boolean chkNetflixPremiumOP(X31SDataBeanAccess svcFormBean)
	{
		boolean isInfo = false;
		
		// サービス契約ステータスを取得
		X31SDataBeanAccessArray svc_kei_Info = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0081A010CBSMSG1LIST);
		X31SDataBeanAccess svc_kei_subbean = svc_kei_Info.getDataBean(0);
		String svcKeiStat = svc_kei_subbean.sendMessageString(KKW00128SFConst.SVC_KEI_STAT_03, X31CWebConst.DATABEAN_GET_VALUE);
		if (JKKCommonConst.SVC_KEI_STAT_010 .equals(svcKeiStat) || JKKCommonConst.SVC_KEI_STAT_020 .equals(svcKeiStat) || JKKCommonConst.SVC_KEI_STAT_030 .equals(svcKeiStat))
		{
			// 料金コースの画面選択値を取得
			X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrsSubbean = pcrsList.getDataBean(0);
			String pcrsIndex    = pcrsSubbean.sendMessageString(KKW00128SFConst.INDEX_12,       X31CWebConst.DATABEAN_GET_VALUE);
			String selectPcrsCdValue = pcrsSubbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(pcrsIndex));
			String selectPcrsCd = selectPcrsCdValue.split(":")[0];
			String selectBundleDiv = getBundleDiv(svcFormBean,selectPcrsCd);
			
			if(!"001".equals(selectBundleDiv))//変更後コースがNetflixパックコースではない
			{
				// オプションサービス契約情報を取得
				X31SDataBeanAccessArray OpKeiInfo = svcFormBean.getDataBeanArray(KKW00128SFConst.EKK0351B002CBSMsg1List);
				for (int i = 0; i < OpKeiInfo.getCount(); i++)
				{
					X31SDataBeanAccess OpKeiInfoSubbean = OpKeiInfo.getDataBean(i);
					String opSvcCd = OpKeiInfoSubbean.sendMessageString(KKW00128SFConst.OP_SVC_CD, X31CWebConst.DATABEAN_GET_VALUE);
					String opSvcStat = OpKeiInfoSubbean.sendMessageString(KKW00128SFConst.OP_SVC_KEI_STAT, X31CWebConst.DATABEAN_GET_VALUE);
					
					if(JKKStrConst.OP_SVC_CD_B136.equals(opSvcCd) && 
							("010".equals(opSvcStat) || "020".equals(opSvcStat)|| "030".equals(opSvcStat)|| "100".equals(opSvcStat)|| "210".equals(opSvcStat)|| "220".equals(opSvcStat)))
					{
						isInfo = true;
						break;
					}
				}
			}
		}
		return isInfo;
	}
	// ANK-3987-00-00 ADD END
	// ANK-4129-00-00 ADD START
	/**
	 * PAI無効化ボタン押下時処理
	 * @param 
	 * @param 
	 * @param 
	 * @return 年月日(YYYYMMDD)
	 */
	public boolean actionPaimkka()throws Exception
	{
		// ユースケースID格納用のHashMap
		HashMap<String, Object> paramMap = null;
		// マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> inputMap = null;
		// サービス呼出結果を格納するHashMap
		HashMap<String, Object> outputMap = null;
		
		paramMap = new HashMap<String, Object>(); // パラメタマップ生成
		inputMap = new HashMap<String, Object>(); // インプットマップ生成
		outputMap = new HashMap<String, Object>(); // アウトプットマップ生成
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		KKSV0988_KKSV0988OPDBMapper mapper = new KKSV0988_KKSV0988OPDBMapper();
		
		// マッピング用Bean作成
		X31SDataBeanAccess[] paramBean =
		{
			svcFormBean
		};
		//引継情報設定bean
		X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00128SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);
		
		//異動理由コード
		String ido_rsn_cd = hktgiBean.sendMessageString(KKW00128SFConst.IDO_RSN_CD_01, X31CWebConst.DATABEAN_GET_VALUE, 0);
		
		mapper.setKKSV098801CC(paramBean,inputMap,ido_rsn_cd); 
		
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0988);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0988OP);
		
		// サービス呼出処理
		invokeService(paramMap, inputMap, outputMap);
		
		// 処理結果の取得
		HashMap<String, Object> execute_info = new HashMap<String, Object>();
		execute_info = (HashMap<String, Object>)outputMap.get("KKSV098801CC");
		// 処理完了コード
		String syoriFin_cd = (String)execute_info.get("err_cd");
		// 処理完了コード:0000(正常）
		String syori_seijyo = "0000";
		// 処理完了コードが0000(正常）であればメッセージを表示
		if (syori_seijyo.equals(syoriFin_cd)){
		
			// 処理完了メッセージの出力
			JCCWebCommon.setMessageInfo(this, "EKB4390--I", new String[]{"処理"} );
		}
		
		// 初期表示処理を再度実行する。
		actionInit();
		return true;
		
	}
	// ANK-4129-00-00 ADD END
	
	// IT1-2023-0000059 ADD START
	/**
	 * ONU交換工事情報取得用
	 * 
	 * @param paramBean
	 *            DataBean項目の配列
	 * @param inputMap
	 *            上りデータマップ
	 * @param func_code
	 *            機能コード
	 */
	private void mapOnukknkjinfstku(X31SDataBeanAccess svcFormBean)
	{
		// 異動区分：コース変更
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			HashMap<String, Object> paramMap  = null;		// ユースケースID格納用のHashMap
			HashMap<String, Object> inputMap  = null;		// マッピングクラスの結果を格納するHashMap
			HashMap<String, Object> outputMap = null;		// サービス呼出結果を格納するHashMap

			paramMap  = new HashMap<String, Object>();
			inputMap  = new HashMap<String, Object>();
			outputMap = new HashMap<String, Object>();
			
			// 共有Bean アクセスクラスの取得
			X31SDataBeanAccess[] paramBean = {svcFormBean};

			// ２）サービス呼出
			// サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID,   JKKCommonConst.UCID_KKSV1027);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV1027OP);

			
			// 料金コースの画面選択値を取得
			X31SDataBeanAccessArray pcrsList = svcFormBean.getDataBeanArray(KKW00128SFConst.PCRS_LIST);
			X31SDataBeanAccess pcrsSubbean = pcrsList.getDataBean(0);
			String pcrsIndex    = pcrsSubbean.sendMessageString(KKW00128SFConst.INDEX_12,       X31CWebConst.DATABEAN_GET_VALUE);
			String selectPcrsCd = pcrsSubbean.sendMessageString(KKW00128SFConst.CD_DIV_LIST_12, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(pcrsIndex));

			// DataBean-BPマッピングクラス生成
			KKSV1027_KKSV1027OPDBMapper mapper = new KKSV1027_KKSV1027OPDBMapper();

			// 取得情報の上りマッピング
			mapper.setKKSV102704SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV102701SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
			mapper.setKKSV102702SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
			mapper.setKKSV102703CC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1, selectPcrsCd);
			
			// サービス契約情報更新(eo光ネット)初期表示サービス実行
			invokeService(paramMap, inputMap, outputMap);
			
			// 取得情報の下りマッピング
			mapper.getKKSV102704SC(paramBean, outputMap);
			mapper.getKKSV102701SC(paramBean, outputMap);
			mapper.getKKSV102702SC(paramBean, outputMap);
			
			// 自動交換情報
			HashMap<String, Object> atknMap = (HashMap<String, Object>)outputMap.get("KKSV102703CC");
			if (atknMap != null)
			{
				svcFormBean.sendMessageString(KKW00128SFConst.ATKN_UM, X31CWebConst.DATABEAN_SET_VALUE, (String) atknMap.get("kiki_chg_um"));
			}
			
		}
	}
	//IT1-2023-0000059 ADD END
	
	//ANK-4640-00-00 20250321 張 ADD START
	/**
	 * @param paramBean
	 * @param outputMap
	 */
	private void checkNtto( HashMap<String, Object> outputMap)
	{
		Map<String, Object> kksv005903sc = (Map<String, Object>)outputMap.get("KKSV005903SC");
		if (kksv005903sc != null)
		{
			List<Map<String, Object>> ekk0081a010msgList = (List<Map<String, Object>>)kksv005903sc.get("EKK0081A010CBSMsg1List");
			
			//サービス契約一意照会結果を取得 
			if (ekk0081a010msgList != null && ekk0081a010msgList.size() > 0)
			{
				nttors_div = (String)ekk0081a010msgList.get(0).get("nttors_div");
			}	
		}
		
		if(null != nttors_div && !"".equals(nttors_div)){
			isTypeN = true;
		}
		else{
			isTypeN = false;
		}
		//NTT卸且つ異動区分は解約、或いはコース変更の場合のみ、WAO連携要否フラグ：True
		if (isTypeN && (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009) || ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005)))
		{
			isWaornkiflg = true;
		}else{
			isWaornkiflg = false;
		}
	}
	//ANK-4640-00-00 20250321 張 ADD END
	//ANK-4640-06-00 20250422 張 ADD START
	/**
	 * @param oldPcrsCd
	 * @param selectPcrsCd
	 */
	private void isNfPackJudge( X31SDataBeanAccess svcFormBean)
	{
		//ＮＦパック切り替えの場合、WAO連携要否に[否]フラグを立つこと
		if (chkSameSpeedCrsChg(svcFormBean))
		{
			isWaornkiflgHi = true;
		}
		
	}
	//ANK-4640-06-00 20250422 張 ADD END
}
