/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：顧客契約
*   モジュール名    ：電話番号情報登録画面
*   ソースファイル名：KKW00147SFLogic.java
*   作成者          ：富士通
*   日付            ：2011年06月03日
*＜機能概要＞
*   eo光電話サービスの番号追加や番ポ情報変更などを行います。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/06/03   FJ）富士通    新規作成
*   v1.00.01    2011/11/24   FJ）富士通    IT2-2011-000271 一時支払料金番号を定数化
*   v4.00.00    2012/09/24   FJ) 富士通   ANK-0397-00-00 対応
*   v5.00.00    2013/01/07   FJ) 富士通   ANK-1171-00-00 対応
*   v5.01.00    2013/02/14   FJ) 富士通   ANK-1450-00-00 対応
*   v8.00.00    2014/02/26   FJ）藤田     ANK-1855-00-00 対応
*   v8.01.00    2014/03/27   FJ）藤本     【OM-2013-0002656】対応履歴情報に「テスト用全機能利用権限者」と登録される
*   v8.02.00    2014/04/14   FJ）藤本     【OM-2014-0001464】番号変更後に変更前電話のTDIS情報登録を行うと利用中の電話番号が変更される
*   v8.03.00    2014/06/12   FJ）藤本     【OM-2014-0002118】撤去解約時に移転元解約によるトーキが即時開始されない
*   v9.00.00    2014/07/22   FJ) 田中     【OM-2014-0002267】対応
*   v10.00.00   2014/09/05   FJ) 大田     【OM-2014-0002880】対応
*   v20.00.00   2015/12/04   FJ) 谷口     【OM-2015-0000564】番号変更後に引き継いだ転送電話OPを解約したらSIP解約・消去オーダが送信された
*   v25.00.00   2016/06/15   FJ) 原田     【ANK-2731-00-00】NTT番ポ戻し改善
*   v25.01.00   2016/06/16   FJ)阮        【IT2-2016-0000034(内部指摘)】対応
*   v26.00.00   2916/10/05   FJ) 原田     【ANK-2995-00-00】番ポ戻しのチェック条件緩和
*   v26.01.00   2016/10/07   FJ)阮        【ANK-2956-00-00】対応
*   v29.00.00   2017/01/18   FJ) 原田     【ANK-2953-00-00】電話番号のポート割当方法改善
*   v29.00.01   2017/02/09   FJ) 原田     【IT1-2017-0000006】電話番号情報登録時のポート番号表示不正
*   v33.00.00   2017/08/18   FJ) 中原     【ANK-3190-00-00】(客C)電話の番ポ手数料有無の表示・変更対応
*   v33.01.00    2017/10/27  FJ) 中原     【OM-2017-0001122】光電話・電話番号情報変更の確認画面遷移エラー
*	v57.00.00   2022/01/27   FJ) 藤本涼   【ANK-4075-00-00】マンション卸回線(WI-FIスキーム)の不備対応 
*	v61.00.00   2022/12/13   FJ) 澤田     【ANK-4315-00-00】【eo定期】 eoホームゲートウェイ導入対応】
*	v72.00.00   2024/07/11   FJ) 大路     【ANK-4494-00-00】【eo定期】双方向番ポ対応
*	v72.00.01   2024/09/03   FJ) 藤井     【ANK-4494-00-00】【eo定期】双方向番ポ対応 STEP2
*	v75.00.00   2025/05/12   FJ) 藤井     【ANK-4685-00-00】【eo】双方向番ポSTEP3
**********************************************************************/
package eo.web.webview.KKW00147SF;

import java.text.DecimalFormat;
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.Map;
import java.util.TreeMap;

import com.fujitsu.futurity.common.JSYwebLog;
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 com.fujitsu.futurity.web.x33.X33CUtil;
import com.fujitsu.futurity.web.x33.beans.X33VDataTypeList;
import com.sun.enterprise.tools.common.util.StringUtils;

import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.util.JKKStringUtil;
import eo.common.util.JPCConvertString;
import eo.common.util.JPCFomatString;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CKW00401SF.CKW00401SFConst;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.KKW00128SF.KKW00128SFConst;
import eo.web.webview.KKW00130SF.KKW00130SFLogic;
import eo.web.webview.KKW00148SF.KKW00148SFConst;
import eo.web.webview.KKW00201SF.KKW00201SFConst;
import eo.web.webview.KKW04213SF.KKW04213SFConst;
import eo.web.webview.common.JCCAuthorityCtrlStatus;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCKCommonConst;
import eo.web.webview.common.JCKScreenConst;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.common.JKKSvkeiUpdScreenUtil;
import eo.web.webview.common.JKKWebCommon;
import eo.web.webview.mapping.KKSV0064_KKSV0064OPDBMapper;
import eo.web.webview.mapping.KKSV0065_KKSV0065OPDBMapper;
import eo.web.webview.mapping.KKSV0076_KKSV0076OPDBMapper;
import eo.web.webview.mapping.KKSV0195_KKSV0195OPDBMapper;
import eo.web.webview.mapping.KKSV0211_KKSV0211OPDBMapper;
import eo.web.webview.mapping.KKSV0213_KKSV0213OPDBMapper;
import eo.web.webview.mapping.KKSV0214_KKSV0214OPDBMapper;
import eo.web.webview.mapping.KKSV0212_KKSV0212OPDBMapper;

/**
 * KKW00147 電話番号情報登録画面ビューロジック
 * 
 * @author FJ
 * @since 2011-06-03
 */
@SuppressWarnings("serial")
public class KKW00147SFLogic extends JCCWebBusinessLogic 
{
	
	private String ido_div = null;


	private static final String SCREEN_ID_KKW00151 = JKKScreenConst.SCREEN_ID_KKW00151;
	private static final String SCREEN_NM_KKW00151 = JKKScreenConst.SCREEN_NAME_KKW00151;

	private static final String SCREEN_ID_KKW00152 = JKKScreenConst.SCREEN_ID_KKW00152;
	private static final String SCREEN_NM_KKW00152 = JKKScreenConst.SCREEN_NAME_KKW00152;

	
	private static final String CD00002_NASI = "0";
	private static final String CD00002_ARI = "1";
	
	private static final String TALKY_RESERVED = "トーキ予約中";
	private static final String TALKY_ACTIVATED = "トーキ実施中";


	private static final String CD00003_HI = "0";		//否

	
	private static final String CD_SEP = ".";

	private static final String KIKI_SEP = ":";   // IT1-2013-0000099 2013/01/25

	private static final String AGING_SBT_TELNO = JKKStrConst.CD00412_TELNO;	//"001";


	/** 最大日付 */
	public static final String MAX_DATE = JKKCommonConst.MAX_YMD;		//"20991231";

	// 機器種別コード：ｅｏ電話用ＶＡ
	private static final String KKTK_SBT_CD_VA = "50";
	
	/**「型番」用eo光多機能ルーター宅内機器型式コード */
	private static final String TKNRT_TAKNKIKI_MODEL_CD = "";

    /**「型番」用eo光多機能ルーター宅内機器型名 */
	private static final String TKNRT_TAKNKIKI_MODEL_NM = "eo光多機能ルーター";

	// 20131202 ANK-1578-00-00 START
	// 機器提供サービスコード：eo光多機能ルーター
	private static final String KKTK_SVC_CD_TKNRT = "C024";
	// 20131202 ANK-1578-00-00 END
	// ANK-4315-00-00 ADD START
    /**「型番」用HGW宅内機器型名 */
	private static final String HGW_TAKNKIKI_MODEL_NM = "eoホームゲートウェイ";
	
	// 機器提供サービスコード：HGW
	private static final String KKTK_SVC_CD_HGW = "C025";
	// ANK-4315-00-00 ADD END
	
	/**
	 * 登録画面初期表示処理
	 * @return 
	 * @throws Exception 
	 */
	public boolean actionInit() throws Exception
	{
		boolean ret = true;

		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 遷移先画面IDを取得 
		String screenId = commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_GET_VALUE);
		
		String screenName = "";

		// 遷移先画面IDから、行う表示処理を決定する
		if (JKKScreenConst.SCREEN_ID_KKW00147.equals(screenId))			//更新画面
		{
			ret = actionInitKKW00147();
			
			screenName = JKKScreenConst.SCREEN_NAME_KKW00147;
		} 
		else if (SCREEN_ID_KKW00151.equals(screenId))	//更新確認画面
		{
			screenName = SCREEN_NM_KKW00151;
		}  
		else if (SCREEN_ID_KKW00152.equals(screenId))	//更新完了画面
		{
			screenName = SCREEN_NM_KKW00152;
		}

		//共通Bean設定処理
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, screenId);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, screenName);

		return ret;
	}

	/**
	 * 初期表示イベント
	 * 
	 * @return 処理結果
	 * @throws Exception 任意の例外
	 */
	@SuppressWarnings("unchecked")
	private boolean actionInitKKW00147() throws Exception
	{
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = getServiceFormBean();

		//サービスフォームBeanをクリアし、検索データなどを設定
		initServiceFormBean(svcFormBean);

		//引継ぎデータをサービスフォームBeanに設定
		getMotoData(svcFormBean);	//ido_div も設定
		
		//ユースケースID格納用のHashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		//マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		//サービス呼出結果を格納するHashMap
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		//Beanの取得
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		//ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0064);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0064OP);

		//マッピングクラスのインスタンス生成
		KKSV0064_KKSV0064OPDBMapper mapper = new KKSV0064_KKSV0064OPDBMapper();
		inputMap = mapper.setKKSV006401SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		inputMap = mapper.setKKSV006402SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		// IT1-2013-0000901 電話番号情報登録画面の緊急通報情報欄に転居先住所が表示される 2013/04/16 START
//		inputMap = mapper.setKKSV006403SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		// OM-2014-0002880 予約適用日を考慮する 2014/09/03 大田 MOD START
//		inputMap = mapper.setKKSV006403SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006403SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_4);
		// OM-2014-0002880 予約適用日を考慮する 2014/09/03 大田 MOD END
		
		// IT1-2013-0000901 電話番号情報登録画面の緊急通報情報欄に転居先住所が表示される 2013/04/16 END
		inputMap = mapper.setKKSV006404SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		inputMap = mapper.setKKSV006405SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		inputMap = mapper.setKKSV006406SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// 20131202 ANK-1578-00-00 START
//		inputMap = mapper.setKKSV006407SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		inputMap = mapper.setKKSV006407SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_6);
		// 20131202 ANK-1578-00-00 END
		inputMap = mapper.setKKSV006408SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		inputMap = mapper.setKKSV006412SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		inputMap = mapper.setKKSV006413SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006414SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006415SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006416SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006417SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);
		inputMap = mapper.setKKSV006418SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		inputMap = mapper.setKKSV006421SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// IT2-2012-0000572 2012/06/06 ADD START
		inputMap = mapper.setKKSV006422SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// IT2-2012-0000572 2012/06/06 ADD END
		// 20120924 ANK-0397-00-00 START
		inputMap = mapper.setKKSV006423SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		// 20120924 ANK-0397-00-00 END
// IK1-2013-0000147対応 20130811 星野 ADD START
		inputMap = mapper.setKKSV006426SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_5);
// IK1-2013-0000147対応 20130811 星野 ADD END
		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD START
		inputMap = mapper.setKKSV006427SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_4);
		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD START
// ANK-2995-00-00 DEL START
//		// ANK-2731-00-00 ADD START
//		inputMap = mapper.setKKSV006428SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
//		// ANK-2731-00-00 ADD END
// ANK-2995-00-00 DEL END
		// 20120711 ANK-0079-00-00 START
		inputMap = mapper.setKKSV006401CC(paramBean, inputMap);
		// 20120711 ANK-0079-00-00 START
		//ANK-3190-00-00 ADD START
		inputMap = mapper.setKKSV006430SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2);
		//ANK-3190-00-00 ADD END
		// ANK-4494-00-00 ADD START
		inputMap = mapper.setKKSV006432SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		inputMap = mapper.setKKSV006433SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);
		// ANK-4494-00-00 ADD END
		
		//サービス呼出　KKSV0064電話番号情報登録初期表示
			invokeService(paramMap, inputMap, outputMap);

		//下りマッピング
		mapper.getKKSV006401SC(paramBean, outputMap);
		mapper.getKKSV006402SC(paramBean, outputMap);
		mapper.getKKSV006403SC(paramBean, outputMap);
		mapper.getKKSV006404SC(paramBean, outputMap);
		mapper.getKKSV006405SC(paramBean, outputMap);
		mapper.getKKSV006406SC(paramBean, outputMap);
		mapper.getKKSV006407SC(paramBean, outputMap, ido_div, "KKSV006407SC", false);
		mapper.getKKSV006408SC(paramBean, outputMap);
//		mapper.getKKSV006409SC(paramBean, outputMap);
		mapper.getKKSV006411SC(paramBean, outputMap);
		mapper.getKKSV006412SC(paramBean, outputMap);
		mapper.getKKSV006413SC(paramBean, outputMap);
		mapper.getKKSV006414SC(paramBean, outputMap);
		mapper.getKKSV006415SC(paramBean, outputMap);
		mapper.getKKSV006416SC(paramBean, outputMap);
		mapper.getKKSV006417SC(paramBean, outputMap);
		mapper.getKKSV006418SC(paramBean, outputMap);
		mapper.getKKSV006419SC(paramBean, outputMap);
		mapper.getKKSV006421SC(paramBean, outputMap);
		// IT2-2012-0000572 2012/06/06 ADD START
		mapper.getKKSV006422SC(paramBean, outputMap);
		// IT2-2012-0000572 2012/06/06 ADD END
		// 20120924 ANK-0397-00-00 START
		mapper.getKKSV006423SC(paramBean, outputMap);
		// 20120924 ANK-0397-00-00 END
		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD START
		mapper.getKKSV006427SC(paramBean, outputMap);
		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD END
// ANK-2995-00-00 DEL START
//		// ANK-2731-00-00 ADD START
//		mapper.getKKSV006429SC(paramBean, outputMap);
//		// ANK-2731-00-00 ADD END
// ANK-2995-00-00 DEL END
		// 20120712 ANK-0079-00-00 START
		mapper.getKKSV006401CC(paramBean, outputMap, ido_div, null);
		// 20120712 ANK-0079-00-00 END
		//ANK-3190-00-00 ADD START
		mapper.getKKSV006431SC(paramBean, outputMap);
		//ANK-3190-00-00 ADD END
		// ANK-4494-00-00 ADD START
		mapper.getKKSV006432SC(paramBean, outputMap);
		mapper.getKKSV006433SC(paramBean, outputMap);
		// ANK-4494-00-00 ADD END
		
		//表示用、サービスフォームBean編集
		editServiceFormBean(svcFormBean, outputMap);

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}


	/**
	 * サービスフォームBeanの初期化
	 * @param svcFormBean
	 */
	private void initServiceFormBean(X31SDataBeanAccess svcFormBean)
	{
		String caller = JCCWebCommon.getScreenId(this);
		
		//運用日
		String unyoYmd = JCCWebCommon.getOpeDate(this, null);
		svcFormBean.sendMessageString(KKW00147SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyoYmd);

		//遷移元画面ＩＤ
		svcFormBean.sendMessageString(KKW00147SFConst.BACK_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, 
				caller);

		//エイジング種別コード
		svcFormBean.sendMessageString(KKW00147SFConst.AGING_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, AGING_SBT_TELNO);

		//オプションサービスコード（＝発信者番号通知）
		svcFormBean.sendMessageString(KKW00147SFConst.OP_SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.OP_SVC_CD_VALUE_NUMDISP);	

	}



	/**
	 * ＮＲＮ番号をサービス呼出結果よりサービスフォームBeanに設定する
	 * 
	 * @param svcFormBean
	 * @param beanKKW00151SF
	 */
	private void editNrn(X31SDataBeanAccess svcFormBean, String bmpUm)
	{
		// 電話番号スキーマ一意照会結果
		X31SDataBeanAccess zm0121Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.EZM0121A010DATA).getDataBean(0);
		// 局番スキーマ一意照会結果
		X31SDataBeanAccess zm0301Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.EZM0211A010DATA).getDataBean(0);

		// 電話番号スキーマのＮＲＮを取得 (2006年2月以前に電話番号単位に設定され、現在も有効な場合のみ)
		String nrn   = zm0121Bean.sendMessageString(KKW00147SFConst.NRN_NO_16, X31CWebConst.DATABEAN_GET_VALUE);
		String kj_hj = zm0121Bean.sendMessageString(KKW00147SFConst.KOJIN_HOJIN_TLN_TAI_CD_16, X31CWebConst.DATABEAN_GET_VALUE);

		if (KKW00130SFLogic.isBlankString(nrn.trim()))
		{
			// １：コンシューマ
			if ("1".equals(kj_hj))
			{
				// 個人用ＮＲＮ番号を取得
				nrn = zm0301Bean.sendMessageString(KKW00147SFConst.KOJIN_NRN_NO_17, X31CWebConst.DATABEAN_GET_VALUE);
			}
			// ２：法人
			else
			{
				// 法人用ＮＲＮ番号を取得
				nrn = zm0301Bean.sendMessageString(KKW00147SFConst.HOJIN_NRN_NO_17, X31CWebConst.DATABEAN_GET_VALUE);
			}
		}

		if (CD00002_ARI.equals(bmpUm))
		{
			// ＮＲＮ設定
			svcFormBean.sendMessageString(KKW00147SFConst.NRN, X31CWebConst.DATABEAN_SET_VALUE, nrn);
		}

		// 局番（制御用）
		String kyoku = zm0121Bean.sendMessageString(KKW00147SFConst.KYOKU_NO_16, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.KYOKU_NO, X31CWebConst.DATABEAN_SET_VALUE, kyoku);

		// 通信事業者コード ← 電話番号一意照会．使用通信事業者コード
		String tsjgs_cd = zm0121Bean.sendMessageString(KKW00147SFConst.USE_TSJGS_CD_16, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.TSJGS_CD, X31CWebConst.DATABEAN_SET_VALUE, tsjgs_cd);
	}

	/**
	 * 
	 * @param svcFormBean サービスフォームBean
	 */
	@SuppressWarnings("unchecked")
	private void executeServiceKKSV0076(X31SDataBeanAccess svcFormBean)
	{
		//ユースケースID格納用のHashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		//マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		//サービス呼出結果を格納するHashMap
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		//Beanの取得
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		//ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0076);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0076OP);

		//上りマッピング２
		KKSV0076_KKSV0076OPDBMapper mapper2 = new KKSV0076_KKSV0076OPDBMapper();
		inputMap = mapper2.setKKSV007601SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);

		//サービス呼出　KKSV0076ＮＲＮ番号取得
		invokeService(paramMap, inputMap, outputMap);

		//下りマッピング２
		mapper2.getKKSV007601SC(paramBean, outputMap);
		mapper2.getKKSV007602SC(paramBean, outputMap);

	}


	/**
	 * サービスフォームBean編集（KKSV0051サービス呼出し後）
	 * 
	 * @param svcFormBean サービスフォームBean
	 * @throws ParseException 日付処理での例外
	 */
	private void editServiceFormBean(X31SDataBeanAccess svcFormBean, HashMap<String, Object> outputMap) throws ParseException
	{
		//運用日
		String unyoYmd = JCCWebCommon.getOpeDate(this, null);

		// 20120924 ANK-0397-00-00 START
		// 受付番号
		String uketsukeNo =svcFormBean.sendMessageString(KKW00147SFConst.MSKMSHO_NO, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.MSKMSHO_NO, X31CWebConst.DATABEAN_SET_VALUE, uketsukeNo);
		// 申込番号
		String mskmNo =svcFormBean.sendMessageString(KKW00147SFConst.MSKMSHO_DTL_NO, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.MSKMSHO_DTL_NO, X31CWebConst.DATABEAN_SET_VALUE, mskmNo);
		// 20120924 ANK-0397-00-00 END
// ANK-2995-00-00 DEL START
//		// ANK-2731-00-00 ADD START
//		String tkskFlg =svcFormBean.sendMessageString(KKW00147SFConst.TOKUSOKU_FLG, X31CWebConst.DATABEAN_GET_VALUE);
//		svcFormBean.sendMessageString(KKW00147SFConst.TOKUSOKU_FLG, X31CWebConst.DATABEAN_SET_VALUE, tkskFlg);
//		// ANK-2731-00-00 ADD END
// ANK-2995-00-00 DEL END

		// **************************************************************
		// 事務手数料
		// **************************************************************
		if (ido_div.equals(IDO_DIV_BANGO_TSUIKA))
		{
			// =======================================
			// 光電話・番号追加
			// =======================================
			// 事務手数料初期値セット
			String jimuCommision = JIMU_TESURYO_NASI;
			// 事務手数料・指定額
			String jimuCommisionAmnt = "";

			// 一時金設定情報取得
			HashMap parentMap = null;
			if(outputMap.containsKey("KKSV006401CC")){
				parentMap = (HashMap)outputMap.get("KKSV006401CC");
			}
			if(parentMap != null)
			{
				// サービス契約内訳<eo光電話>一意照会の結果を参照
				ArrayList ekk1021B001CBSMsg1List = (ArrayList)parentMap.get("EKK1021B004CBSMsg1List");

				if (ekk1021B001CBSMsg1List != null && ekk1021B001CBSMsg1List.size() > 0)
				{
					// サービス契約内訳番号
					String tmpSvcKeiUcwkNo = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);

					HashMap<String, Object> ekk1021B001CBSMsg = null;
					for (int i = 0; i < ekk1021B001CBSMsg1List.size(); i++)
					{
						ekk1021B001CBSMsg = (HashMap<String, Object>)ekk1021B001CBSMsg1List.get(i);
						String icjSvcKeiUcwkNo = (String)ekk1021B001CBSMsg.get("svc_kei_ucwk_no");
						// サービス契約内訳番号が一致するレコードを取得する
						if (tmpSvcKeiUcwkNo.equals(icjSvcKeiUcwkNo))
						{
							break;
						}
					}
					jimuCommision     = (String)ekk1021B001CBSMsg.get("icjkn_sette_cd");
					jimuCommisionAmnt = (String)ekk1021B001CBSMsg.get("icjkn_shitei_amnt");
				}
			}
			// 事務手数料プルダウンセット
			configPulldown(svcFormBean, KKW00147SFConst.CD00346DATA, KKW00147SFConst.JIMU_COMMISION, jimuCommision);

			// 事務手数料・指定額
			if (JIMUTE_SHITEIGAKU.equals(jimuCommision))
			{
				svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, jimuCommisionAmnt);
			}
		}
		else if(
				ido_div.equals(IDO_DIV_BANGO_HENKO)
				|| ido_div.equals(IDO_DIV_BANGO_KAIYAKU)
		)
		{
			// =======================================
			// 光電話・番号変更
			// 光電話・番号解約
			// =======================================
			// 事務手数料プルダウンセット
			configPulldown(svcFormBean, KKW00147SFConst.CD00346DATA, KKW00147SFConst.JIMU_COMMISION, JIMU_TESURYO_NASI);
		}
		else
		{
			// =======================================
			// その他
			// =======================================
			// 事務手数料プルダウン空セット
			configClearPulldown(svcFormBean, KKW00147SFConst.JIMU_COMMISION);
		}

		//サービス契約・一意照会結果
		X31SDataBeanAccess svcKeiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0081A010DATA).getDataBean(0);
		
		//サービス契約内訳・一意照会結果
		X31SDataBeanAccess svcKeiUcwkBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0161A010DATA).getDataBean(0);

		//サービス契約内訳＜eo光電話＞・一意照会結果
		X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
		
		//お客様一意照会結果
		X31SDataBeanAccess okyakusamaBean = svcFormBean.getDataBeanArray(KKW00147SFConst.ECK0011A010DATA).getDataBean(0);
		
		//サービス契約回線内訳
		X31SDataBeanAccess svcKeiKaisenBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0251ZXXXDATA).getDataBean(0);

		//有無リスト
		X31SDataBeanAccessArray cd00002Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.CD00002DATA);
		HashMap<String, String> umuMap = new HashMap<String, String>();
		for (int i = 0; i < cd00002Arr.getCount().intValue(); i++)
		{
			X31SDataBeanAccess bean = cd00002Arr.getDataBean(i);
			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_14, X31CWebConst.DATABEAN_GET_VALUE);
			String cdNm = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_14, X31CWebConst.DATABEAN_GET_VALUE);
			umuMap.put(cdDiv, cdNm);
		}

		//番ポ有無
//		String[] umuList = { "0:無", "1:有"};
		String bmp_um = CD00002_NASI;
		// 20120724 ANK-0079-00-00 START
		//if (!isHikariDenwa_BangoTsuika)
		if (!isNull(svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE)))
		// 20120724 ANK-0079-00-00 END
		{
			bmp_um = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
		}
		configPulldown(svcFormBean, KKW00147SFConst.CD00002DATA, KKW00147SFConst.BMP_UM, bmp_um);
		svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L, X31CWebConst.DATABEAN_SET_VALUE, bmp_um);

		//ANK-3190-00-00 ADD START
		// 番ポ申込手数料
		// =======================================
		// 光電話・番号情報変更
		// 異動区分なし
		// =======================================
		if (CD00002_ARI.equals(bmp_um))
		{
			if(IDO_DIV_DENWA_HENKO.equals(ido_div)
				|| "".equals(ido_div))
			{
				String bmpMskmCommision = new String();
				String bmpMskmCommisionAmnt = new String();
				Map<String, Object> kksv006431sc = (Map<String, Object>)outputMap.get("KKSV006431SC");
				if (kksv006431sc != null)
				{
					// 一時金設定一意照会の抽出
					ArrayList<Map<String, Object>> ekk1021a010msglist = (ArrayList<Map<String, Object>>)kksv006431sc.get("EKK1021A010CBSMsg1List");
					
					// 一時金設定一意照会結果から取得
					if (ekk1021a010msglist != null && ekk1021a010msglist.size() > 0)
					{
						bmpMskmCommision     = (String)ekk1021a010msglist.get(0).get("icjkn_sette_cd");
						bmpMskmCommisionAmnt = (String)ekk1021a010msglist.get(0).get("icjkn_shitei_amnt");
					}
				}
				// 番ポ申込手数料プルダウンセット
				configPulldown(svcFormBean, KKW00147SFConst.CD00346DATA, KKW00147SFConst.BMP_MSKM_COMMISION, bmpMskmCommision);
	
				// 番ポ申込手数料・指定額
				if (JIMUTE_SHITEIGAKU.equals(bmpMskmCommision))
				{
					svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, bmpMskmCommisionAmnt);
				}
			}
		}
		else
		{
			// 番ポ申込手数料プルダウン空セット
			configClearPulldown(svcFormBean, KKW00147SFConst.BMP_MSKM_COMMISION);
		
		}
		//ANK-3190-00-00 ADD END
		//更新年月日（サービス契約）
		svcFormBean.sendMessageString(
				KKW00147SFConst.SVCKEI_UPD_DTM,
				X31CWebConst.DATABEAN_SET_VALUE, 
				svcKeiBean.sendMessageString(KKW00147SFConst.UPD_DTM_21, X31CWebConst.DATABEAN_GET_VALUE));
				
		//更新年月日(サービス契約内訳)
		svcFormBean.sendMessageString(
				KKW00147SFConst.SVC_UCWK_UPD_DTM,
				X31CWebConst.DATABEAN_SET_VALUE, 
				svcKeiUcwkBean.sendMessageString(KKW00147SFConst.UPD_DTM_05, X31CWebConst.DATABEAN_GET_VALUE));
		
		//更新年月日（サービス契約内訳＜eo光電話＞）
		svcFormBean.sendMessageString(
				KKW00147SFConst.SVC_UCWK_TEL_UPD_DTM,
				X31CWebConst.DATABEAN_SET_VALUE, 
				svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.UPD_DTM_06, X31CWebConst.DATABEAN_GET_VALUE));
		
		//更新前世代登録年月日
		svcFormBean.sendMessageString(
				KKW00147SFConst.SVCKEIUCWKTEL_GENE_ADD_DTM,
				X31CWebConst.DATABEAN_SET_VALUE, 
				svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.GENE_ADD_DTM_06, X31CWebConst.DATABEAN_GET_VALUE));
		
		//発信者番号通知
		// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 MOD START
//		String no_tch = CD00002_NASI;	//無
//		//オプションサービスコード "0180"発信者番号表示 でオプションサービス契約一覧照会を行った結果１件以上なら「有」
//		if (0 < svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0351B010DATA).getCount().intValue())
//		{
////↓↓↓2013-02-21追加　ロット２OT-2013-0000195（発番通知を無に更新したのに、次も有と出てしまう）↓↓↓
//			X31SDataBeanAccess subBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0351B010DATA).getDataBean(0);
//			String opSvcKeiStat = subBean.sendMessageString(KKW00147SFConst.OP_SVC_KEI_STAT_15, X31CWebConst.DATABEAN_GET_VALUE);
//			//解約済、キャンセル済以外なら発番通知あり
//			
//			// IT2-2013-0000343 2013/04/11 START
//			// オプションサービス契約番号を取得
//			String opSvcKeiNo = subBean.sendMessageString(KKW00147SFConst.OP_SVC_KEI_NO_15, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			if ("".equals(opSvcKeiStat) && "".equals(opSvcKeiNo) ) {
//				 no_tch = CD00002_NASI;	//無
//			}
//			else {
//				if (JKKCommonConst.SVC_KEI_STAT_910.compareTo(opSvcKeiStat) > 0)
////↑↑↑2013-02-21追加　ロット２OT-2013-0000195（発番通知を無に更新したのに、次も有と出てしまう）↑↑↑
//				{
//					no_tch = CD00002_ARI;	//有
//				}
//			}
//			//  IT2-2013-0000343 2013/04/11 END
//		}
		String no_tch = getTelNoTchUm();
		// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 MOD END
		configPulldown(svcFormBean, KKW00147SFConst.CD00002DATA, KKW00147SFConst.HASINSHA_NO_TCH, no_tch);
		svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_SET_VALUE, no_tch);
//↓↓↓2013-07-22追加　IT2-2013-0000653（番号追加の仮登録で発信者番号通知オプションが付かない）↓↓↓
		svcFormBean.sendMessageString(KKW00147SFConst.HNO_TCHI_INI, X31CWebConst.DATABEAN_SET_VALUE, no_tch);
//↑↑↑2013-07-22追加　IT2-2013-0000653（番号追加の仮登録で発信者番号通知オプションが付かない）↑↑↑

		//番ポ画面引継ぎ初期データ用変数
		String userNmKana, userNmKj, postCd="       ", adCd="           ", /*stateNm="", cityNm="", oazaNm="", azaNm="",*/ banchiGo="", adTtmm="", adRoom="";
		String tsjgs_cd = "";

		// 20120724 ANK-0079-00-00 START
		//if (isHikariDenwa_BangoTsuika)
		if (isNull(svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE)))
		// 20120724 ANK-0079-00-00 END
		{
			// 20120720 ANK-0079-00-00 START
//			//同番移転可否
//			svcFormBean.sendMessageString(KKW00147SFConst.DOBANITEN_KH, X31CWebConst.DATABEAN_SET_VALUE, "");
//			//調査依頼日
//			svcFormBean.sendMessageString(KKW00147SFConst.CHOSA_REQ_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			// 20120720 ANK-0079-00-00 END
			
			//電話番号
			svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
			//ＮＲＮ
			svcFormBean.sendMessageString(KKW00147SFConst.NRN, X31CWebConst.DATABEAN_SET_VALUE, "");

			//利用者名（カナ）　←お客様．契約者名（カナ）
			userNmKana = okyakusamaBean.sendMessageString(KKW00147SFConst.CUST_KANA_12, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.USER_KANA, X31CWebConst.DATABEAN_SET_VALUE, userNmKana);
			//利用者名　←お客様．契約者名
			userNmKj = okyakusamaBean.sendMessageString(KKW00147SFConst.CUST_NM_12, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.USER_NM, X31CWebConst.DATABEAN_SET_VALUE, userNmKj);
			if (svcKeiKaisenBean != null)
			{
				//住所　←サービス契約回線内訳．回線場所都道府県〜回線場所字町名
				svcFormBean.sendMessageString(KKW00147SFConst.AD, X31CWebConst.DATABEAN_SET_VALUE, 
						editAddress(svcKeiKaisenBean, KKW00147SFConst.KAISEN_PLACE_STATE_NM_13, KKW00147SFConst.KAISEN_PLACE_CITY_NM_13, 
								KKW00147SFConst.KAISEN_PLACE_OAZTSU_NM_13, 
								KKW00147SFConst.KAISEN_PLACE_AZCHO_NM_13, svcFormBean));
//				stateNm = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_STATE_NM_13, X31CWebConst.DATABEAN_GET_VALUE);
//				cityNm = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_CITY_NM_13, X31CWebConst.DATABEAN_GET_VALUE);
//				oazaNm = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_OAZTSU_NM_13, X31CWebConst.DATABEAN_GET_VALUE);
//				azaNm = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_AZCHO_NM_13, X31CWebConst.DATABEAN_GET_VALUE);

				//番地・号　←サービス契約回線内訳．回線場所番地・号
				banchiGo = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_BNCHIGO_13, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, banchiGo);

				//肩書（建物名等）　←サービス契約回線内訳．回線場所建物名〜回線場所部屋番号
				adTtmm = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_ADRTTM_13, X31CWebConst.DATABEAN_GET_VALUE);
				adRoom = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_ADRRM_13, X31CWebConst.DATABEAN_GET_VALUE);
				// 2013/02/04 IT2-2013-0000043 MOD START
				//svcFormBean.sendMessageString(KKW00147SFConst.ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adTtmm);
				//svcFormBean.sendMessageString(KKW00147SFConst.ADRRM, X31CWebConst.DATABEAN_SET_VALUE, adRoom);
				svcFormBean.sendMessageString(KKW00147SFConst.ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adTtmm + adRoom);
				// 2013/02/04 IT2-2013-0000043 MOD END
				
				//制御用、住所コード
				adCd =svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_AD_CD_13, X31CWebConst.DATABEAN_GET_VALUE); 
				svcFormBean.sendMessageString(KKW00147SFConst.AD_CD, X31CWebConst.DATABEAN_SET_VALUE,
						adCd);
				//制御用、郵便番号
				postCd = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_PCD_13, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.PCD, X31CWebConst.DATABEAN_SET_VALUE, postCd);
				
				//サービス契約回線内訳番号
				String svc_kei_kaisen_ucwk_no = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO_13, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, 
						svc_kei_kaisen_ucwk_no);
			}

			//番号案内
			String no_guide = CD00002_NASI;
			configPulldown(svcFormBean, KKW00147SFConst.CD00002DATA, KKW00147SFConst.NO_GUIDE, no_guide);
			svcFormBean.sendMessageString(KKW00147SFConst.NO_GUIDE_L, X31CWebConst.DATABEAN_SET_VALUE, no_guide);

			//電話帳掲載
			String book_um = CD00002_NASI;
			configPulldown(svcFormBean, KKW00147SFConst.CD00438DATA, KKW00147SFConst.DNWACHO_KEISAI, book_um);
			svcFormBean.sendMessageString(KKW00147SFConst.DNWACHO_KEISAI_L, X31CWebConst.DATABEAN_SET_VALUE, book_um);

			//トーキ状況
			svcFormBean.sendMessageString(KKW00147SFConst.TOKI_JOKYO, X31CWebConst.DATABEAN_SET_VALUE, "");
			//期間(自)
			svcFormBean.sendMessageString(KKW00147SFConst.PRD_FROM, X31CWebConst.DATABEAN_SET_VALUE, "");
			//期間(至)
			svcFormBean.sendMessageString(KKW00147SFConst.PRD_TO, X31CWebConst.DATABEAN_SET_VALUE, "");
			//契約内訳状態
			svcFormBean.sendMessageString(KKW00147SFConst.KEIUW_STAT, X31CWebConst.DATABEAN_SET_VALUE, "");
			//サービス開始年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_STAYMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			//サービス課金開始年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_STAYMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			//サービス終了年月日（年）
			//サービス終了年月日（月）
			//サービス終了年月日（日）
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			//サービス課金終了年月日（年）
			//サービス課金終了年月日（月）
			//サービス課金終了年月日（日）
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");

			//違約金発生区分
			svcFormBean.sendMessage(KKW00147SFConst.PNLTY_HASSEI_DIV_L, X31CWebConst.DATABEAN_CLEAR);

			//サービス停止年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_STP_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			//サービス停止解除年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_STP__RLS_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");
			//電番事前通知
			svcFormBean.sendMessageString(KKW00147SFConst.TELNO_PRE_TCHI, X31CWebConst.DATABEAN_SET_VALUE, "");

			//↓↓↓2012-07-27追加　ST2-2012-0001428対応（サブ　マンソン対応漏れ）↓↓↓
			//提供方式契約番号
			svcFormBean.sendMessageString(KKW00147SFConst.TK_HOSHIKI_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE,
					svcKeiBean.sendMessageString(KKW00147SFConst.TK_HOSHIKI_KEI_NO_21, X31CWebConst.DATABEAN_GET_VALUE));
			//↑↑↑2012-07-27追加　ST2-2012-0001428対応（サブ　マンソン対応漏れ）↑↑↑
		}
		else
		{
			// 2012/07/10 IT2-2012-0001042 ADD START
			if (svcKeiKaisenBean != null)
			{
				//サービス契約回線内訳番号
				String svc_kei_kaisen_ucwk_no = svcKeiKaisenBean.sendMessageString(KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO_13, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_kaisen_ucwk_no);
			}
			
			//電話番号
			svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.TELNO_06, X31CWebConst.DATABEAN_GET_VALUE));
			// 2012/07/10 IT2-2012-0001042 ADD START 変更前電話番号を保持
			svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO_BEFORE, X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.TELNO_06, X31CWebConst.DATABEAN_GET_VALUE));
			// 2012/07/10 IT2-2012-0001042 ADD END

			editNrn(svcFormBean, bmp_um);

			//↓↓↓2012-07-12追加、ST2-2012-0001343対応↓↓↓
			tsjgs_cd = svcFormBean.sendMessageString(KKW00147SFConst.TSJGS_CD, X31CWebConst.DATABEAN_GET_VALUE);
//			if (null == tsjgs_cd || "".equals(tsjgs_cd))
			{
				tsjgs_cd =svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.TSJGS_CD_06, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.TSJGS_CD, X31CWebConst.DATABEAN_SET_VALUE, tsjgs_cd);
			}
			//↑↑↑2012-07-12追加、ST2-2012-0001343対応↑↑↑

			//利用者名（カナ）
			userNmKana = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_KSH_KANA_06, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.USER_KANA, X31CWebConst.DATABEAN_SET_VALUE, userNmKana);
			//利用者名
			userNmKj = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_KSH_NM_06, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.USER_NM, X31CWebConst.DATABEAN_SET_VALUE, userNmKj);
			// 2012/10/24 IT1-2012-0001138 ADD START
			// 変更前利用者名（カナ）
			svcFormBean.sendMessageString(KKW00147SFConst.USER_KANA_BEFORE, X31CWebConst.DATABEAN_SET_VALUE, userNmKana);
			// 変更前利用者名
			svcFormBean.sendMessageString(KKW00147SFConst.USER_NM_BEFORE, X31CWebConst.DATABEAN_SET_VALUE, userNmKj);
			// 2012/10/24 IT1-2012-0001138 ADD END
			//住所
			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.EZM0081A010DATA).getDataBean(0); 
			svcFormBean.sendMessageString(KKW00147SFConst.AD, X31CWebConst.DATABEAN_SET_VALUE, 
					editAddress(bean, KKW00147SFConst.STATE_NM_11, KKW00147SFConst.CITY_NM_11, KKW00147SFConst.OAZTSU_NM_11, 
							KKW00147SFConst.AZCHO_NM_11, svcFormBean));

			//番地・号
			banchiGo = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_BNCHIGO_06, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, banchiGo);
			//肩書（建物名等）
			adTtmm = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_ADRTTM_06, X31CWebConst.DATABEAN_GET_VALUE);
			adRoom = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_ADRRM_06, X31CWebConst.DATABEAN_GET_VALUE);

			// 2013/02/04 IT2-2013-0000043 MOD START
			//svcFormBean.sendMessageString(KKW00147SFConst.ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adTtmm);
			//svcFormBean.sendMessageString(KKW00147SFConst.ADRRM, X31CWebConst.DATABEAN_SET_VALUE, adRoom);
			svcFormBean.sendMessageString(KKW00147SFConst.ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adTtmm + adRoom);
			// 2013/02/04 IT2-2013-0000043 MOD END
			//制御用、住所コード
			adCd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_AD_CD_06, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.AD_CD, X31CWebConst.DATABEAN_SET_VALUE, adCd);
			//制御用、郵便番号
			postCd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.EMG_HOSEI_PCD_06, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.PCD, X31CWebConst.DATABEAN_SET_VALUE, postCd);

			//番号案内
			String no_guide = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.NTT_NO_GUIDE_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
			configPulldown(svcFormBean, KKW00147SFConst.CD00002DATA, KKW00147SFConst.NO_GUIDE, no_guide);
			no_guide = getDisplayNameFromPulldown(svcFormBean, KKW00147SFConst.NO_GUIDE, no_guide);
			svcFormBean.sendMessageString(KKW00147SFConst.NO_GUIDE_L, X31CWebConst.DATABEAN_SET_VALUE, no_guide);

			//電話帳掲載
			String book_um = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.HELLOPAGE_KEISAI_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
			configPulldown(svcFormBean, KKW00147SFConst.CD00438DATA, KKW00147SFConst.DNWACHO_KEISAI, book_um);
			book_um = getDisplayNameFromPulldown(svcFormBean, KKW00147SFConst.DNWACHO_KEISAI, book_um);
			svcFormBean.sendMessageString(KKW00147SFConst.DNWACHO_KEISAI_L, X31CWebConst.DATABEAN_SET_VALUE, book_um);

			//トーキ状況
			String itenTalkyStaYmd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.ITNTOKI_STA_YMD_06, X31CWebConst.DATABEAN_GET_VALUE);
			String itenTalkyEndYmd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.ITNTOKI_END_YMD_06, X31CWebConst.DATABEAN_GET_VALUE);
			String talky = "";

			if (! KKW00130SFLogic.isBlankString(itenTalkyEndYmd))
			{
				// 移転トーキ終了年月日が「初期値」の場合、空に
				if (MAX_DATE.equals(itenTalkyEndYmd))
				{
					itenTalkyEndYmd = "";
				}
			}
//↓↓↓2013-04-01追加 巻３ST2-2013-0001633（移転トーキ実施中と表示されない）↓↓↓
			String itenTalkyEndRsvYmd = "";
			if (KKW00130SFLogic.isBlankString(itenTalkyEndYmd))
			{
				//移転トーキ終了予定日
				itenTalkyEndRsvYmd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.ITNTOKI_END_RSV_YMD_06, X31CWebConst.DATABEAN_GET_VALUE);
				itenTalkyEndYmd = (MAX_DATE.equals(itenTalkyEndRsvYmd) ? "" : itenTalkyEndRsvYmd);
			}
//↑↑↑2013-04-01追加 巻３ST2-2013-0001633（移転トーキ実施中と表示されない）↑↑↑

			if (! KKW00130SFLogic.isBlankString(itenTalkyStaYmd))
			{
				// 運用日取得
				long kyo = Long.parseLong(unyoYmd);

				// 移転トーキ開始年月日が運用日より未来の場合
				// ※移転トーキがまだ開始されていない
				if (kyo < Long.parseLong(itenTalkyStaYmd))
				{
					talky = TALKY_RESERVED;
				}
				// 移転トーキ開始年月日が運用日より過去の場合
				// ※移転トーキが開始されている
				else
				{
					// 移転トーキ終了年月日が「NULL」の場合
					if (KKW00130SFLogic.isBlankString(itenTalkyEndYmd))
					{
						talky = TALKY_ACTIVATED;
					}
					// 移転トーキ終了年月日が「NULL」以外の場合
					else
					{
						// 移転トーキ終了年月日が運用日より未来の場合
						// 移転トーキがまだ終了していない
						// OM-2014-0002118 撤去解約時に移転元解約によるトーキが即時開始されない 2014/06/12 START
						// トーキ終了日に「トーキ実施中」と表示される不具合を修正（そもそもトーキ終了年月日に有効な日付が設定されていればトーキは終了しているはず）
//						if (kyo <= Long.parseLong(itenTalkyEndYmd))
						if (kyo < Long.parseLong(itenTalkyEndYmd))
						// OM-2014-0002118 撤去解約時に移転元解約によるトーキが即時開始されない 2014/06/12 END
						{
							talky = TALKY_ACTIVATED;
						}
					}
				}
			}
			svcFormBean.sendMessageString(KKW00147SFConst.TOKI_JOKYO, X31CWebConst.DATABEAN_SET_VALUE, talky);

			//移転トーキ終了予定年月日
			svcFormBean.sendMessageString(
					KKW00147SFConst.ITNTOKI_END_YMD, 
					X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.ITNTOKI_END_RSV_YMD_06, X31CWebConst.DATABEAN_GET_VALUE));

			// 移転トーキ情報なしの場合
			if (talky == null || "".equals(talky))
			{
				// 期間(自)
				svcFormBean.sendMessageString(KKW00147SFConst.PRD_FROM, X31CWebConst.DATABEAN_SET_VALUE, "");
				// 期間(至)
				svcFormBean.sendMessageString(KKW00147SFConst.PRD_TO,   X31CWebConst.DATABEAN_SET_VALUE, "");
			}
			else
			{
				// 期間(自)
				svcFormBean.sendMessageString(KKW00147SFConst.PRD_FROM, X31CWebConst.DATABEAN_SET_VALUE, itenTalkyStaYmd);
				// 期間(至)
				svcFormBean.sendMessageString(KKW00147SFConst.PRD_TO,   X31CWebConst.DATABEAN_SET_VALUE, itenTalkyEndYmd);
			}

			//契約内訳状態
			svcFormBean.sendMessageString(KKW00147SFConst.KEIUW_STAT, X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_STAT_NM_05, X31CWebConst.DATABEAN_GET_VALUE));

			//サービス開始年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_STAYMD, X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_STAYMD_05, X31CWebConst.DATABEAN_GET_VALUE));

			//サービス課金開始年月日
			svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_STAYMD, X31CWebConst.DATABEAN_SET_VALUE, 
					svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_CHRG_STAYMD_05, X31CWebConst.DATABEAN_GET_VALUE));

			// *******************************************
			// 光電話・番号解約
			// *******************************************
			if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div))
			{
				// ▼▼▼ 2012-04-09 初期値に運用日を設定 ▼▼▼
				final String wkYear = unyoYmd.substring(0, 4);
				final String wkMonth = unyoYmd.substring(4, 6);
				final String wkDay = unyoYmd.substring(6);
				
				//サービス終了年月日（年）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YEAR, X31CWebConst.DATABEAN_SET_VALUE, wkYear);
				//サービス終了年月日（月）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_MON, X31CWebConst.DATABEAN_SET_VALUE, wkMonth);
				//サービス終了年月日（日）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_DAY, X31CWebConst.DATABEAN_SET_VALUE, wkDay);

				svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyoYmd);

				//サービス課金終了年月日（年）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YEAR, X31CWebConst.DATABEAN_SET_VALUE, wkYear);
				//サービス課金終了年月日（月）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_MON, X31CWebConst.DATABEAN_SET_VALUE, wkMonth);
				//サービス課金終了年月日（日）
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_DAY, X31CWebConst.DATABEAN_SET_VALUE, wkDay);

				svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyoYmd);
				// ▲▲▲ 2012-04-09 初期値に運用日を設定 ▲▲▲
			}
			// *******************************************
			// 光電話・番号解約　以外
			// *******************************************
			else
			{
				String svcEndYmd = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_ENDYMD_05, X31CWebConst.DATABEAN_GET_VALUE);
				if (null != svcEndYmd && 8 <= svcEndYmd.length())
				{
					if ("".equals(svcEndYmd) || JKKCommonConst.MAX_YMD.equals(svcEndYmd))
					{
						svcFormBean.sendMessage(KKW00147SFConst.SVC_END_YEAR, X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_END_MON, X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_END_DAY, X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_CLEAR);
					}
					else
					{
						// サービス終了年月日（年）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YEAR, X31CWebConst.DATABEAN_SET_VALUE,
								svcEndYmd.substring(0, 4));
						// サービス終了年月日（月）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_MON, X31CWebConst.DATABEAN_SET_VALUE,
								svcEndYmd.substring(4, 6));
						// サービス終了年月日（日）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_DAY, X31CWebConst.DATABEAN_SET_VALUE,
								svcEndYmd.substring(6));

						svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YMD, X31CWebConst.DATABEAN_SET_VALUE,
								svcEndYmd);
					}
				}

// ▼▼▼▼▼ 2013/04/02 OT-2013-0000579 UPD START ▼▼▼▼▼
//				String svcChrgEndYmd = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_CHRG_ENDYMD_05, X31CWebConst.DATABEAN_GET_VALUE);
//				if (null != svcChrgEndYmd && 8 <= svcChrgEndYmd.length())
//				{
//					if ("".equals(svcChrgEndYmd) || JKKCommonConst.MAX_YMD.equals(svcChrgEndYmd))
//					{
//						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_YEAR, X31CWebConst.DATABEAN_CLEAR);
//						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_MON, X31CWebConst.DATABEAN_CLEAR);
//						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_DAY, X31CWebConst.DATABEAN_CLEAR);
//						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_YMD, X31CWebConst.DATABEAN_CLEAR);
//					}
//					else
//					{
//						// サービス課金終了年月日（年）
//						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YEAR,
//								X31CWebConst.DATABEAN_SET_VALUE, svcChrgEndYmd.substring(0, 4));
//						// サービス課金終了年月日（月）
//						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_MON,
//								X31CWebConst.DATABEAN_SET_VALUE, svcChrgEndYmd.substring(4, 6));
//						// サービス課金終了年月日（日）
//						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_DAY,
//								X31CWebConst.DATABEAN_SET_VALUE, svcChrgEndYmd.substring(6));
//
//						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YMD,
//								X31CWebConst.DATABEAN_SET_VALUE, svcChrgEndYmd);
//					}
//				}

				// 表示するのは、「課金終了年月日」ではなく
				// 「解約起算年月日」です
				String svcDslKisanYmd = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_DSL_KISAN_YMD_05, X31CWebConst.DATABEAN_GET_VALUE);
				if (null != svcDslKisanYmd && 8 <= svcDslKisanYmd.length())
				{
					if ("".equals(svcDslKisanYmd) || JKKCommonConst.MAX_YMD.equals(svcDslKisanYmd))
					{
						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_YEAR, X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_MON,  X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_DAY,  X31CWebConst.DATABEAN_CLEAR);
						svcFormBean.sendMessage(KKW00147SFConst.SVC_CHRG_END_YMD,  X31CWebConst.DATABEAN_CLEAR);
					}
					else
					{
						// サービス解約起算年月日（年）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YEAR,
								X31CWebConst.DATABEAN_SET_VALUE, svcDslKisanYmd.substring(0, 4));
						// サービス解約起算年月日（月）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_MON,
								X31CWebConst.DATABEAN_SET_VALUE, svcDslKisanYmd.substring(4, 6));
						// サービス解約起算年月日（日）
						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_DAY,
								X31CWebConst.DATABEAN_SET_VALUE, svcDslKisanYmd.substring(6));

						svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YMD,
								X31CWebConst.DATABEAN_SET_VALUE, svcDslKisanYmd);
					}
				}
// ▲▲▲▲▲ 2013/04/02 OT-2013-0000579 UPD E N D ▲▲▲▲▲
			}

			//違約金発生区分
			String iyakuKinDiv = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.PNLTY_HASSEI_CD_05, X31CWebConst.DATABEAN_GET_VALUE);
			configPulldown(svcFormBean, KKW00147SFConst.CD00002DATA, KKW00147SFConst.PNLTY_HASSEI_DIV, iyakuKinDiv);
			svcFormBean.sendMessageString(KKW00147SFConst.PNLTY_HASSEI_DIV_L, X31CWebConst.DATABEAN_SET_VALUE, iyakuKinDiv);

			//異動区分が解約で無い場合は表示用文言にする
			if(!ido_div.equals(IDO_DIV_BANGO_KAIYAKU)){
				String iyaString = getDisplayNameFromPulldown(svcFormBean, KKW00147SFConst.PNLTY_HASSEI_DIV, iyakuKinDiv);
				svcFormBean.sendMessageString(KKW00147SFConst.PNLTY_HASSEI_DIV_L, X31CWebConst.DATABEAN_SET_VALUE, iyaString);
			}
			
			//サービス停止年月日
			String svcStopDtm = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_STP_YMD_05, X31CWebConst.DATABEAN_GET_VALUE);
			if (8 <= svcStopDtm.length())
			{
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_STP_YMD, X31CWebConst.DATABEAN_SET_VALUE, 
						svcStopDtm.substring(0, 8));
			}

			//サービス停止解除年月日
			String svcStopRelDtm = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_STP_RLS_YMD_05, X31CWebConst.DATABEAN_GET_VALUE);
			if (8 <= svcStopRelDtm.length())
			{
				if (JKKCommonConst.MAX_YMD.equals(svcStopRelDtm))
				{
					svcFormBean.sendMessageString(KKW00147SFConst.SVC_STP__RLS_YMD, X31CWebConst.DATABEAN_CLEAR);
				}
				else
				{
					svcFormBean.sendMessageString(KKW00147SFConst.SVC_STP__RLS_YMD, X31CWebConst.DATABEAN_SET_VALUE,
							svcStopRelDtm.substring(0, 8));
				}
			}

			//電番事前通知
			String[] denbanNm = {
				"なし",		//0	なし
				"あり",		//1	あり
				"出力済",	//2	出力済
			};
			String denbanCd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.TEL_NO_PRE_TCHI_CD_06, X31CWebConst.DATABEAN_GET_VALUE);
			if (null != denbanCd && denbanCd.matches("[0-2]"))
			{
				svcFormBean.sendMessageString(KKW00147SFConst.TELNO_PRE_TCHI, X31CWebConst.DATABEAN_SET_VALUE, 
						denbanNm[Integer.parseInt(denbanCd)]);
			}

			//制御用、申込明細番号
			svcFormBean.sendMessageString(KKW00147SFConst.MSKM_DTL_NO, X31CWebConst.DATABEAN_SET_VALUE,
					svcKeiUcwkBean.sendMessageString(KKW00147SFConst.MSKM_DTL_NO_05, X31CWebConst.DATABEAN_GET_VALUE));
			
			//↓↓↓2012-07-27追加　ST2-2012-0001428対応（サブ　マンション対応漏れ）↓↓↓
			//提供方式契約番号
			svcFormBean.sendMessageString(KKW00147SFConst.TK_HOSHIKI_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE,
					svcKeiUcwkBean.sendMessageString(KKW00147SFConst.TK_HOSHIKI_KEI_NO_05, X31CWebConst.DATABEAN_GET_VALUE));
			//↑↑↑2012-07-27追加　ST2-2012-0001428対応（サブ　マンション対応漏れ）↑↑↑
		}

		//ＶＡ選択
// IK1-2013-0000147対応 20130811 星野 MOD START
//		configureVAChoicePulldown(svcFormBean);
		configureVAChoicePulldown(svcFormBean, outputMap);
// IK1-2013-0000147対応 20130811 星野 MOD END

		//ポート番号
		configureVAPortPulldown(svcFormBean, svcKeiUcwkTelBean);

		//電話番号一覧
		X31SDataBeanAccessArray telLstArr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191BXXXDATA);

		//電話番号履歴
		X31SDataBeanAccessArray rrkArr = svcFormBean.getDataBeanArray(KKW00147SFConst.TELNO_RRK);
		rrkArr.clearArray();
		// 2012/10/24 IT1-2012-0001138 ADD START
		ArrayList<String> rireki_no_guideLIst = new ArrayList<String>(telLstArr.getCount());
		ArrayList<String> rireki_dnwacho_keisaiList = new ArrayList<String>(telLstArr.getCount());
		// 2012/10/24 IT1-2012-0001138 ADD END
		for (int i = 0; telLstArr != null && i < telLstArr.getCount(); i++)
		{
			X31SDataBeanAccess srcBean = telLstArr.getDataBean(i);
			
			String bmp = srcBean.sendMessageString(KKW00147SFConst.RRK_BMP_UM_08, X31CWebConst.DATABEAN_GET_VALUE);	//(String)xxx.get(KKW00147SFConst.RRK_BMP_UM_08);
			bmp = ("".equals(bmp) ? CD00002_NASI : bmp);

			X31SDataBeanAccess tgtBean = rrkArr.addDataBean();
			//履歴・電話番号
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_TELNO_02, X31CWebConst.DATABEAN_SET_VALUE, 
					srcBean.sendMessageString(KKW00147SFConst.RRK_TELNO_08, X31CWebConst.DATABEAN_GET_VALUE));	//(String)xxx.get(KKW00147SFConst.RRK_TELNO_08));
			//履歴・番ポ
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_BMP_02, X31CWebConst.DATABEAN_SET_VALUE, umuMap.get(bmp));
			//履歴・契約内訳状態
			
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_KEI_UCWK_STAT_NM_02, X31CWebConst.DATABEAN_SET_VALUE, 
					srcBean.sendMessageString(KKW00147SFConst.RRK_SVC_KEI_UCWK_STAT_NM_08, X31CWebConst.DATABEAN_GET_VALUE));
			
			//履歴・サービス開始年月日
			String staYmd = srcBean.sendMessageString(KKW00147SFConst.RRK_SVC_STAYMD_08, X31CWebConst.DATABEAN_GET_VALUE);	//(String)xxx.get(KKW00147SFConst.RRK_SVC_STAYMD_08);
			staYmd = (null != staYmd && 8 <= staYmd.length() ? JPCFomatString.formatDate(staYmd) : "");
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_SVC_STAYMD_02, X31CWebConst.DATABEAN_SET_VALUE, staYmd);
			//履歴・サービス終了年月日
			String endYmd = srcBean.sendMessageString(KKW00147SFConst.RRK_SVC_ENDYMD_08, X31CWebConst.DATABEAN_GET_VALUE);	//(String)xxx.get(KKW00147SFConst.RRK_SVC_ENDYMD_08);
			if (null != endYmd && 8 <= endYmd.length() && !JKKCommonConst.MAX_YMD.equals(endYmd))
			{
				endYmd = JPCFomatString.formatDate(endYmd);
			}
			else
			{
				endYmd = "";
			}
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_SVC_ENDYMD_02, X31CWebConst.DATABEAN_SET_VALUE, endYmd);
					// 2012/10/24 IT1-2012-0001138 ADD START
			//履歴・番号案内
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_NO_GUIDE_02, X31CWebConst.DATABEAN_SET_VALUE, 
					srcBean.sendMessageString(KKW00147SFConst.RRK_NO_GUIDE_NM_08, X31CWebConst.DATABEAN_GET_VALUE));	//(String)xxx.get(KKW00147SFConst.RRK_NO_GUIDE_08));
			//履歴・電話帳掲載
			tgtBean.sendMessageString(KKW00147SFConst.RIREKI_DNWACHO_KEISAI_02, X31CWebConst.DATABEAN_SET_VALUE, 
					srcBean.sendMessageString(KKW00147SFConst.RRK_DNWACHO_KEISAI_NM_08, X31CWebConst.DATABEAN_GET_VALUE));	//(String)xxx.get(KKW00147SFConst.RRK_DNWACHO_KEISAI_08));
			
			//番号案内をＣＳＶ処理して hidden に設定
			rireki_no_guideLIst.add(i, srcBean.sendMessageString(KKW00147SFConst.RRK_NO_GUIDE_08, X31CWebConst.DATABEAN_GET_VALUE));
			//電話帳掲載をＣＳＶ処理して hidden に設定
			rireki_dnwacho_keisaiList.add(i, srcBean.sendMessageString(KKW00147SFConst.RRK_DNWACHO_KEISAI_08, X31CWebConst.DATABEAN_GET_VALUE));
			// 2012/10/24 IT1-2012-0001138 ADD END
		}
		// 2012/10/24 IT1-2012-0001138 ADD START
		StringBuilder csvVal = new StringBuilder();
		for (String e : rireki_no_guideLIst)
		{
			csvVal.append(e).append(",");
		}
		svcFormBean.sendMessageString(KKW00147SFConst.RIREKI_NO_GUIDE_CSV, X31CWebConst.DATABEAN_SET_VALUE, csvVal.toString());

		StringBuilder csvVal2 = new StringBuilder();
		for (String e : rireki_dnwacho_keisaiList)
		{
			csvVal2.append(e).append(",");
		}
		svcFormBean.sendMessageString(KKW00147SFConst.RIREKI_DNWACHO_KEISAI_CSV, X31CWebConst.DATABEAN_SET_VALUE, csvVal2.toString());

		if (IDO_DIV_DENWA_TDIS.equals(ido_div) || "".equals(ido_div))
		{
			svcFormBean.sendMessageString(KKW00147SFConst.TELNO_RRK_CHOICE, X31CWebConst.DATABEAN_SET_VALUE, "0");	
		}
		// 2012/10/24 IT1-2012-0001138 ADD END
		//サービス契約一意照会のBean取得
		X31SDataBeanAccessArray eKK0081A010DATAList;
		X31SDataBeanAccess eKK0081A010DATA;
		eKK0081A010DATAList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0081A010DATA);
		eKK0081A010DATA = eKK0081A010DATAList.getDataBean(0);
		//料金グループコードの退避
		svcFormBean.sendMessageString(
				KKW00147SFConst.PRC_GRP_CD, 
				X31CWebConst.DATABEAN_SET_VALUE,
				eKK0081A010DATA.sendMessageString(KKW00147SFConst.PRC_GRP_CD_21, X31CWebConst.DATABEAN_GET_VALUE));
		
		//eo電話番号発番画面用Beanの初期化
		X31SDataBeanAccess kkw00201Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.HATUBAN_INPUT).getDataBean(0);
		kkw00201Bean.sendMessage(KKW00147SFConst.AREACD_INF_CHOICE_03,      X31CWebConst.DATABEAN_CLEAR);
		kkw00201Bean.sendMessage(KKW00147SFConst.HRADSI_TEL_NO_03,          X31CWebConst.DATABEAN_CLEAR);
		kkw00201Bean.sendMessage(KKW00147SFConst.RSY_TELNO_INF_CHOICE_03,   X31CWebConst.DATABEAN_CLEAR);
		kkw00201Bean.sendMessage(KKW00147SFConst.AD_CD_03,                  X31CWebConst.DATABEAN_CLEAR);
		
		
		// 番ポ入力画面受渡データの初期化
		if (IDO_DIV_BANGO_HENKO.equals(ido_div))
		{
			X31SDataBeanAccessArray bmpInputList = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_INPUT);
			bmpInputList.clearArray();
			bmpInputList.addDataBean();
			X31SDataBeanAccessArray dobanitenInputList = svcFormBean.getDataBeanArray(KKW00147SFConst.DOBANITEN_INPUT);
			dobanitenInputList.clearArray();
			dobanitenInputList.addDataBean();
			svcFormBean.sendMessageString(KKW00147SFConst.ADD_JOKYO, X31CWebConst.DATABEAN_SET_VALUE, "");
			svcFormBean.sendMessageString(KKW00147SFConst.DOBANITEN_KH, X31CWebConst.DATABEAN_SET_VALUE, "");
			svcFormBean.sendMessageString(KKW00147SFConst.CHOSA_REQ_YMD, X31CWebConst.DATABEAN_SET_VALUE, "");
		}
		
		// 20131202 ANK-1578-00-00 START
		actionKikiChange();
		// 20131202 ANK-1578-00-00 END

		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD START
		svcFormBean.sendMessageString(KKW00147SFConst.DSP_SVC_KEI_UCWK_STAT, X31CWebConst.DATABEAN_SET_VALUE, "");
		// サービス契約内訳＜eo光電話＞一覧照会（サービス契約番号）
		X31SDataBeanAccessArray ucwkIchrnList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191B001DATA);
		for (int i = 0; ucwkIchrnList != null && i < ucwkIchrnList.getCount(); i++)
		{
			X31SDataBeanAccess srcBean = ucwkIchrnList.getDataBean(i);
			
			// 画面.サービス契約内訳番号
			String tmpSvcKeiUcwkNo = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
			// サービス契約内訳＜eo光電話＞一覧照会（サービス契約番号）．サービス契約内訳番号
			String svc_kei_ucwk_no = srcBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_30, X31CWebConst.DATABEAN_GET_VALUE);
			
			if (tmpSvcKeiUcwkNo != null && tmpSvcKeiUcwkNo.equals(svc_kei_ucwk_no))
			{
				String dsp_svc_kei_ucwk_stat = srcBean.sendMessageString(KKW00147SFConst.DSP_SVC_KEI_UCWK_STAT_30, X31CWebConst.DATABEAN_GET_VALUE);
				svcFormBean.sendMessageString(KKW00147SFConst.DSP_SVC_KEI_UCWK_STAT, X31CWebConst.DATABEAN_SET_VALUE, dsp_svc_kei_ucwk_stat);
				break;
			}
		}
		// ANK-1855-00-00 照査・締結時の番号変更対応 2014/02/26 藤田 ADD END
		// ANK-3190-00-00 ADD START
		String svc_kei_ucwk_stat = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_STAT_05, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_STAT, X31CWebConst.DATABEAN_SET_VALUE, svc_kei_ucwk_stat);
		// ANK-3190-00-00 ADD END
		// ANK-4315-00-00 ADD START
		// ONU交換工事有無チェック
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			String onuKokanKojiFlg = svcFormBean.sendMessageString(KKW00147SFConst.ONU_KOKAN_KOJI_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			
			if ("1".equals(onuKokanKojiFlg))
			{
				JCCWebCommon.setMessageInfo(this, "EKBF810--I");
			}
		}
		// ANK-4315-00-00 ADD END
		
		// ANK-4494-00-00 ADD START
		if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div) || IDO_DIV_DENWA_BMPP_MMODOSHU.equals(ido_div))
		{
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD START
			Boolean enumKrkeAuthority = getDispAuthority();
			svcFormBean.sendMessageBoolean(KKW00147SFConst.ENUM_KRKE_AUTHORITY_FLG, X31CWebConst.DATABEAN_SET_VALUE, enumKrkeAuthority);
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD END

			
			// ポートアウト受付情報一意照会（サービス契約照会）のBean取得
			X31SDataBeanAccessArray eTU0151A011DATAList = svcFormBean.getDataBeanArray(KKW00147SFConst.ETU0151A011DATA);
			X31SDataBeanAccess eTU0151A011DATA = eTU0151A011DATAList.getDataBean(0);
			// ポートアウト受付情報一意照会（サービス契約照会）．電話番号
			String telno = eTU0151A011DATA.sendMessageString(KKW00147SFConst.ENUM_KRKE_TEL_NO_32, X31CWebConst.DATABEAN_GET_VALUE);
			
			if (telno == null || "".equals(telno))
			{
				svcFormBean.sendMessageBoolean(KKW00147SFConst.ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_SET_VALUE, false);
				svcFormBean.sendMessageBoolean(KKW00147SFConst.HIDE_ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_SET_VALUE, false);
				
			}
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD START
			else
			{
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD END
				
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL START
// 上に移動
//				Boolean enumKrkeAuthority = getDispAuthority();
//				svcFormBean.sendMessageBoolean(KKW00147SFConst.ENUM_KRKE_AUTHORITY_FLG, X31CWebConst.DATABEAN_SET_VALUE, enumKrkeAuthority);
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL END
				
				
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL START
//				if (!enumKrkeAuthority)
//				{
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL END
				
				svcFormBean.sendMessageBoolean(KKW00147SFConst.ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_SET_VALUE, enumKrkeAuthority);
				svcFormBean.sendMessageBoolean(KKW00147SFConst.HIDE_ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_SET_VALUE, enumKrkeAuthority);
				
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL START
//				}
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 DEL END
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD START
			}
// ANK-4494-00-00 Step2 障害管理台帳No.100のついで 20241112 星野 ADD END
		}
		// ANK-4494-00-00 ADD END
	}

	/**
	 * プルダウンリストから指定コード区分のコード区分名称を取得
	 * 
	 * @param svcFormBean サービスフォームBean
	 * @param tgtKeyCd プルダウンのサービスフォームBean内項目名
	 * @param tgtCd コード区分
	 * @return コード区分名称
	 */
	private String getDisplayNameFromPulldown(X31SDataBeanAccess svcFormBean,
			String tgtKeyCd, String tgtCd)
	{
		String ret = tgtCd;

		X31SDataBeanAccess tgtBean = svcFormBean.getDataBeanArray(tgtKeyCd).getDataBean(0);

		Integer n = (Integer)tgtBean.sendMessage(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_COUNT);
		for (int i = 0; i < n.intValue(); i++)
		{
			String cdDiv = tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, i);
			if (cdDiv.equals(tgtCd))
			{
				ret = tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, i);
				break;
			}
		}

		return ret;
	}

	/**
	 * ＶＡポート番号選択プルダウンの編成
	 * 
	 * @param svcFormBean KKW00147SF
	 * @param svcKeiUcwkTelBean サービス契約内訳＜ｅｏ電話＞Bean
	 */
	private void configureVAPortPulldown(X31SDataBeanAccess svcFormBean, X31SDataBeanAccess svcKeiUcwkTelBean)
	{
		String initVal = "";
		if (!isNull(svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_PORT_NO_06, X31CWebConst.DATABEAN_GET_VALUE)))
		{
			initVal = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_PORT_NO_06, X31CWebConst.DATABEAN_GET_VALUE);
		}
		//ラベル用表示値の設定
		svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L, X31CWebConst.DATABEAN_SET_VALUE, initVal);

		svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L_BEFORE, X31CWebConst.DATABEAN_SET_VALUE, initVal);
		String srcKeyCd = KKW00147SFConst.CD00593DATA;
		String tgtKeyCd = KKW00147SFConst.PORT_NO;

		X31SDataBeanAccessArray cdArr = svcFormBean.getDataBeanArray(srcKeyCd);

		X31SDataBeanAccess tgtBean = svcFormBean.getDataBeanArray(tgtKeyCd).getDataBean(0);
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_CLEAR);
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_CLEAR);
		
		//光電話・番号追加の場合、最初に空白行を追加
		String port_no_l_before = svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L_BEFORE, X31CWebConst.DATABEAN_GET_VALUE);
		// 2013/03/19 OT-2013-0000454  ADD START
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div)
				|| (!IDO_DIV_DENWA_HENKO.equals(ido_div) 
						&& (port_no_l_before == null || "".equals(port_no_l_before))))
		// 2013/03/29 OT-2013-0000546 MOD START
		{
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, "");
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, "");
		}

		for (int i = 0; i < cdArr.getCount().intValue(); i++)
		{
			X31SDataBeanAccess bean = cdArr.getDataBean(i);
			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_14, X31CWebConst.DATABEAN_GET_VALUE);
			String cdNam = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_14, X31CWebConst.DATABEAN_GET_VALUE);

			//コードリストに追加
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, cdDiv);
			//名称リストに追加
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, cdDiv + CD_SEP + cdNam);		//stdDivList[i]);
		}
		
		//インデックス設定
		selectedPulldownIndex(svcFormBean, KKW00147SFConst.PORT_NO, initVal);
	}

	/**
	 * ＶＡ選択プルダウンの編集処理
	 * 
	 * @param svcFormBean KKW00147SF
	 */
// IK1-2013-0000147対応 20130811 星野 MOD START
//	private void configureVAChoicePulldown(X31SDataBeanAccess svcFormBean)
	private void configureVAChoicePulldown(X31SDataBeanAccess svcFormBean, HashMap<String, Object> outputMap)
// IK1-2013-0000147対応 20130811 星野 MOD END
	{
		// 機器提供サービス契約・一覧照会結果
		X31SDataBeanAccessArray kk0341Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0341B002DATA);

		// IT2-2013-0000073 20130202 ADD START
		// サービス契約内訳＜eo光電話＞・一意照会結果
		X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
		// IT2-2013-0000073 20130202 ADD END

		// 機器提供サービス契約より宅内機器種別コードが"VA"のものを抽出する
		// K : 宅内機器形式コード
		// V : TreeMap<製造開始年月日, [宅内機器型式名][機器製造番号]>
		HashMap<String, TreeMap<String, String[]>> vaMap = new HashMap<String, TreeMap<String, String[]>>();

		// 初期値　セット
		String vaKktkSvcKeiNo = "";		// 機器提供サービス契約番号
		String vaModelCd      = "";		// VA機器型式コード
		String vaModelNm      = "";		// VA機器型式名称
		String vaSeizoNo      = "";		// VA機器製造番号
		String vaKikiChgNo    = "";		// VA機器変更番号

		HashMap<String, Object> kiki_svc_no = new HashMap<String, Object>();

		boolean genkoVAFlag = false;

		int index = 0;		// ＶＡ機器プルダウン初期インデックス
		int vaCnt = 0;		// ＶＡ機器カウンタ

		// ＶＡプルダウン　クリア
		X31SDataBeanAccess vaBean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
		vaBean.sendMessage(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_CLEAR);
		vaBean.sendMessage(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_CLEAR);

		// 一時保管用のプルダウン項目　クリア
		X31SDataBeanAccessArray kikiArray = svcFormBean.getDataBeanArray(KKW00147SFConst.KIKIPULLDOWN_LIST);
		kikiArray.clearArray();

		// ******************************************************************************
		// 異動区分：光電話・番号追加
		// ******************************************************************************
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			// サービス契約内訳＜eo光電話＞・一意照会結果
			vaKikiChgNo = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_06, X31CWebConst.DATABEAN_GET_VALUE);

			for(int i = 0; i < kk0341Arr.getCount().intValue(); i++)
			{
				X31SDataBeanAccess bean = kk0341Arr.getDataBean(i);
				String kikiSbtCd    = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_07,   X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelCd  = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelNm  = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiSeizoNo  = bean.sendMessageString(KKW00147SFConst.KIKI_SEIZO_NO_07,     X31CWebConst.DATABEAN_GET_VALUE);
				String kikiChgNo    = bean.sendMessageString(KKW00147SFConst.KIKI_CHG_NO_07,       X31CWebConst.DATABEAN_GET_VALUE);
				String ports        = bean.sendMessageString(KKW00147SFConst.PORT_CNT_07,          X31CWebConst.DATABEAN_GET_VALUE);
				String seizoYmd     = bean.sendMessageString(KKW00147SFConst.SEIZO_STAYMD_07,      X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcKeiNo = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07,   X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcCd    = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_CD_07,       X31CWebConst.DATABEAN_GET_VALUE);

				// 20131202 ANK-1578-00-00 START
				// 機器種別コードが「ｅｏ電話用ＶＡ」か多機能ルーターかＨＧＷの場合
				// ANK-4315-00-00 MOD START
//				if (KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
				if (KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd) || KKTK_SVC_CD_HGW.equals(kktkSvcCd))
				// ANK-4315-00-00 MOD END
				// 20131202 ANK-1578-00-00 END
				{
					
					// 機器変更番号が一致する場合
					if(kikiChgNo.equals(vaKikiChgNo))
					{
						vaKktkSvcKeiNo = kktkSvcKeiNo;		// 機器提供サービス契約番号
						vaModelCd = kikiModelCd;			// 機器型式コード
						vaModelNm = kikiModelNm;			// 機器型式名称
						vaSeizoNo = kikiSeizoNo;			// 機器製造番号
						
					}
					
					// 20131202 ANK-1578-00-00 START
					// ANK-4315-00-00 MOD START
//					if (2 <= Integer.parseInt(ports) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
					if (2 <= Integer.parseInt(ports) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd) || KKTK_SVC_CD_HGW.equals(kktkSvcCd))
					// ANK-4315-00-00 MOD END
					{
						
						if(KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
						{
							if(kikiModelCd == null || "".equals(kikiModelCd))
							{
								kikiModelNm = TKNRT_TAKNKIKI_MODEL_NM;
							}
						}
						// ANK-4315-00-00 ADD START
						else if(KKTK_SVC_CD_HGW.equals(kktkSvcCd))
						{
							if(kikiModelCd == null || "".equals(kikiModelCd))
							{
								kikiModelNm = HGW_TAKNKIKI_MODEL_NM;
							}
						}
						// ANK-4315-00-00 ADD END
						
						TreeMap<String, String[]> tm = vaMap.get(kikiModelCd + KIKI_SEP + kikiChgNo);
						if (null == tm)
						{
							tm = new TreeMap<String, String[]>();
						}
						tm.put(seizoYmd, new String[]{kikiModelNm, kikiSeizoNo});
						vaMap.put(kikiModelCd + KIKI_SEP + kikiChgNo, tm);

						// ============================================
						// 機器型式コード保管
						// ============================================
						kiki_svc_no.put(kikiModelCd, kktkSvcCd);

						// ＶＡ機器あり
						genkoVAFlag = true;
					}
					// 20131202 ANK-1578-00-00 END
					
				}
			}

			// ２ポートVAまたは多機能ルーターが見つからない場合
			if (1 > vaMap.size())
			{
				// 20131202 ANK-1578-00-00 START
//				vaModelCd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_06, X31CWebConst.DATABEAN_GET_VALUE);
//				vaModelNm = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_NM_06,    X31CWebConst.DATABEAN_GET_VALUE);
				
				vaModelCd = TKNRT_TAKNKIKI_MODEL_CD;
				vaModelNm = TKNRT_TAKNKIKI_MODEL_NM;
				
				TreeMap<String, String[]> tm = new TreeMap<String, String[]>();
				tm.put("", new String[]{vaModelNm, ""});
				vaMap.put(vaModelCd+KIKI_SEP, tm);
				
				// 番号追加時に既に２ポートＶＡを保持している場合は宅内機器の情報は設定しない
				// 宅内機器型式マスタより　宅内機器モデルを追加
//				vaMap = addTaknkikiModel(svcFormBean, vaMap);
				// 20131202 ANK-1578-00-00 END
			}

			// サービス契約内訳番号取得
			String svcKeiUcwkNo = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);

			// 20131202 ANK-1578-00-00 START
//			// 最初に空白行を追加
//			if (!genkoVAFlag)
//			{
//				// サービス契約内訳番号が空の場合
//				if (isNull(svcKeiUcwkNo))
//				{
//					vaBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01,    X31CWebConst.DATABEAN_ADD_VALUE, "");
//					vaBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, "");
//
//					vaCnt++;
//				}
//			}
			// 20131202 ANK-1578-00-00 END

			// サービス契約内訳番号が空以外の場合
			if (!isNull(svcKeiUcwkNo))
			{
				vaModelCd = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_06, X31CWebConst.DATABEAN_GET_VALUE);
			}

			if (vaModelCd == null)   { vaModelCd   = ""; }
			if (vaKikiChgNo == null) { vaKikiChgNo = ""; }

			for (String kikiModelCd_kikiChgNo: vaMap.keySet())
			{
				String[] kikiInfo = kikiModelCd_kikiChgNo.split(KIKI_SEP);

				String kikiModelCd = "";	// 機器型式コード
				String kikiModelNm = "";	// 機器型式名称
				String kikiSeizoNo = "";	// 機器製造番号
				String kikiChgNo   = "";	// 機器変更番号

				// 受付済などの場合は型式、変更番号が設定されていない為
				if (kikiInfo.length > 0)
				{
					kikiModelCd = kikiInfo[0];	// 機器型式コード取得
				}
				if (kikiInfo.length > 1)
				{
					kikiChgNo = kikiInfo[1];	// 機器変更番号取得
				}

				// 自身が所有する機器の場合
				if ((kikiModelCd + KIKI_SEP + kikiChgNo).equals(vaModelCd + KIKI_SEP + vaKikiChgNo))
				{
					index = vaCnt;
				}

				TreeMap<String, String[]> tm = vaMap.get(kikiModelCd_kikiChgNo);
				String seizoYmd = tm.lastKey();
				String[] kikiInfo2 = tm.get(seizoYmd);

				kikiModelNm = kikiInfo2[0];		// 機器型式名称取得
				kikiSeizoNo = kikiInfo2[1];		// 機器製造番号取得

				// ============================================
				// ＶＡプルダウン生成
				// ============================================
				// 設定内容
				String cdDiv   = kikiModelCd + KIKI_SEP + kikiChgNo;
				// 表示内容
				String cdDivNm = kikiModelCd + " " + kikiModelNm + " " + kikiSeizoNo;

				vaBean.sendMessageString(
						KKW00147SFConst.CD_DIV_LIST_01,
						X31CWebConst.DATABEAN_ADD_VALUE,
						cdDiv
				);
				vaBean.sendMessageString(
						KKW00147SFConst.CD_DIV_NM_LIST_01,
						X31CWebConst.DATABEAN_ADD_VALUE,
						cdDivNm
				);

				// 一時保管用のプルダウン項目に要素追加
				X31SDataBeanAccess kikiBean = kikiArray.addDataBean();

				// 機器形式コード
				kikiBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_27, X31CWebConst.DATABEAN_SET_VALUE, kikiModelCd);
				// 機器製造番号
				kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_SEIZO_NO_27,     X31CWebConst.DATABEAN_SET_VALUE, kikiSeizoNo);
				// 機器変更番号
				kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_27,       X31CWebConst.DATABEAN_SET_VALUE, kikiChgNo);
				//表示文言
				kikiBean.sendMessageString(KKW00147SFConst.DISP_NAME_27,            X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);

				vaCnt++;
			}
		}
		// ******************************************************************************
		// 異動区分：光電話・電話番号情報変更
		// ******************************************************************************
		else if (IDO_DIV_DENWA_HENKO.equals(ido_div))
		{
			// サービス契約内訳＜eo光電話＞・一意照会結果
			vaKikiChgNo = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_06, X31CWebConst.DATABEAN_GET_VALUE);

			for(int i = 0; i < kk0341Arr.getCount().intValue(); i++)
			{
				X31SDataBeanAccess bean = kk0341Arr.getDataBean(i);
				String kikiSbtCd   = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_07,   X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelCd = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelNm = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiSeizoNo = bean.sendMessageString(KKW00147SFConst.KIKI_SEIZO_NO_07,     X31CWebConst.DATABEAN_GET_VALUE);
				String kikiChgNo   = bean.sendMessageString(KKW00147SFConst.KIKI_CHG_NO_07,       X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcKeiNo = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07,  X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcCd    = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_CD_07,      X31CWebConst.DATABEAN_GET_VALUE);
				
				if(KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
				{
					if(kikiModelCd == null || "".equals(kikiModelCd))
					{
						kikiModelNm = TKNRT_TAKNKIKI_MODEL_NM;
					}
				}
				// ANK-4315-00-00 ADD START
				else if(KKTK_SVC_CD_HGW.equals(kktkSvcCd))
				{
					if(kikiModelCd == null || "".equals(kikiModelCd))
					{
						kikiModelNm = HGW_TAKNKIKI_MODEL_NM;
					}
				}
				// ANK-4315-00-00 ADD END
				
				// 20131202 ANK-1578-00-00 START
				// IT2-2013-0000592 未出荷のVAに対してOLS設定・VA変更オーダが発行される 2013/07/11 START
//				// 機器種別コードが「ｅｏ電話用ＶＡ」の場合
				// ANK-4315-00-00 MOD START
//				if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
				if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd) || KKTK_SVC_CD_HGW.equals(kktkSvcCd))
				// ANK-4315-00-00 MOD END
					// IT2-2013-0000592 未出荷のVAに対してOLS設定・VA変更オーダが発行される 2013/07/11 END
				// 20131202 ANK-1578-00-00 END
				{
					// OM-2013-0002939 電話番号情報変更時にVAの紐付け変更ができない 2013/10/09 START
					// ※OM-2013-0002105対応前に戻す。機器製造番号の判定はサービス層で行っているためIT2-2013-0000651の対応をコメントアウト
// ▼▼▼▼▼ 2013/09/30 OM-2013-0002105 UPD START ▼▼▼▼▼
// ※ＶＡ機器変更番号の判定は、サービス層で行っているため、すべて取得するように変更
					// 機器変更番号が一致する場合
					if(kikiChgNo.equals(vaKikiChgNo))
					{
						vaKktkSvcKeiNo = kktkSvcKeiNo;		// 機器提供サービス契約番号
						vaModelCd = kikiModelCd;			// 機器型式コード
						vaModelNm = kikiModelNm;			// 機器型式名称
						vaSeizoNo = kikiSeizoNo;			// 機器製造番号

						index = vaCnt;						// インデックス
					}
//					// IT2-2013-0000651 照査済VA選択プルダウンの制御不備 2013/07/20 START
//					else if(isNull(kikiSeizoNo))
//					{
//						continue;
//					}
//					// IT2-2013-0000651 照査済VA選択プルダウンの制御不備 2013/07/20 END

//					vaKktkSvcKeiNo = kktkSvcKeiNo;		// 機器提供サービス契約番号
//					vaModelCd = kikiModelCd;			// 機器型式コード
//					vaModelNm = kikiModelNm;			// 機器型式名称
//					vaSeizoNo = kikiSeizoNo;			// 機器製造番号
//
//					index = vaCnt;						// インデックス
// ▲▲▲▲▲ 2013/09/30 OM-2013-0002105 UPD E N D ▲▲▲▲▲
					// OM-2013-0002939 電話番号情報変更時にVAの紐付け変更ができない 2013/10/09 END

					// ============================================
					// ＶＡプルダウン生成
					// ============================================
					// 設定内容
					String cdDiv   = kikiModelCd + KIKI_SEP + kikiChgNo;
					// 表示内容
					String cdDivNm = kikiModelCd + " " + kikiModelNm + " " + kikiSeizoNo;

					vaBean.sendMessageString(
							KKW00147SFConst.CD_DIV_LIST_01,
							X31CWebConst.DATABEAN_ADD_VALUE,
							cdDiv
					);
					vaBean.sendMessageString(
							KKW00147SFConst.CD_DIV_NM_LIST_01,
							X31CWebConst.DATABEAN_ADD_VALUE,
							cdDivNm
					);

					// 一時保管用のプルダウン項目に要素追加
					X31SDataBeanAccess kikiBean = kikiArray.addDataBean();

					// 機器形式コード
					kikiBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_27, X31CWebConst.DATABEAN_SET_VALUE, kikiModelCd);
					// 機器製造番号
					kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_SEIZO_NO_27,     X31CWebConst.DATABEAN_SET_VALUE, kikiSeizoNo);
					// 機器変更番号
					kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_27,       X31CWebConst.DATABEAN_SET_VALUE, kikiChgNo);
					// 表示文言
					kikiBean.sendMessageString(KKW00147SFConst.DISP_NAME_27,            X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);

					vaCnt++;
				}
			}
		}
		// ******************************************************************************
		// その他
		// ******************************************************************************
		else
		{
			// サービス契約内訳＜eo光電話＞・一意照会結果
			vaKikiChgNo = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_06, X31CWebConst.DATABEAN_GET_VALUE);

			for(int i = 0; i < kk0341Arr.getCount().intValue(); i++)
			{
				X31SDataBeanAccess bean = kk0341Arr.getDataBean(i);
				String kikiSbtCd    = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_07,   X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelCd  = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiModelNm  = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_NM_07, X31CWebConst.DATABEAN_GET_VALUE);
				String kikiSeizoNo  = bean.sendMessageString(KKW00147SFConst.KIKI_SEIZO_NO_07,     X31CWebConst.DATABEAN_GET_VALUE);
				String kikiChgNo    = bean.sendMessageString(KKW00147SFConst.KIKI_CHG_NO_07,       X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcKeiNo = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07,   X31CWebConst.DATABEAN_GET_VALUE);
				String kktkSvcCd    = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_CD_07,       X31CWebConst.DATABEAN_GET_VALUE);
				
				// 機器種別コードが「ｅｏ電話用ＶＡ」または多機能ルーターまたはHGWの場合
				// ANK-4315-00-00 MOD START
//				if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
				if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd) || KKTK_SVC_CD_HGW.equals(kktkSvcCd))
				// ANK-4315-00-00 MOD END
				{
					
					// 20131202 ANK-1578-00-00 START
					if(KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
					{
						if(kikiModelCd == null || "".equals(kikiModelCd))
						{
							kikiModelNm = TKNRT_TAKNKIKI_MODEL_NM;
						}
					}
					// 20131202 ANK-1578-00-00 END
					// ANK-4315-00-00 ADD START
					else if(KKTK_SVC_CD_HGW.equals(kktkSvcCd))
					{
						if(kikiModelCd == null || "".equals(kikiModelCd))
						{
							kikiModelNm = HGW_TAKNKIKI_MODEL_NM;
						}
					}
					// ANK-4315-00-00 ADD END
					
					// 機器変更番号が一致する場合
					if(kikiChgNo.equals(vaKikiChgNo))
					{
						vaKktkSvcKeiNo = kktkSvcKeiNo;		// 機器提供サービス契約番号
						vaModelCd = kikiModelCd;			// 機器型式コード
						vaModelNm = kikiModelNm;			// 機器型式名称
						vaSeizoNo = kikiSeizoNo;			// 機器製造番号

						index = 0;							// インデックス
						break;
					}
				}
			}
			
// IK1-2013-0000147対応 20130811 星野 ADD START
			// 機器変更番号が一致する機器提供サービス契約が見つからなかった場合
			if(StringUtils.isEmpty(vaKktkSvcKeiNo)){
				// 機能コード：５（解約済を含む）で取得した機器提供サービス契約から再度引き当てる
				HashMap kksv006426scMap = (HashMap)outputMap.get("KKSV006426SC");
				if(kksv006426scMap != null){
					ArrayList<HashMap> childList = (ArrayList)kksv006426scMap.get("EKK0341B002CBSMsg1List");
					if(childList != null){
						
						HashMap kKSV006411SCMap = null;
						ArrayList kKSV006411SCchildList = null;
						if(outputMap.containsKey("KKSV006411SC"))
						{
							kKSV006411SCMap = (HashMap)outputMap.get("KKSV006411SC");
							if(kKSV006411SCMap != null && kKSV006411SCMap.size() > 0)
							{
								kKSV006411SCchildList = (ArrayList)kKSV006411SCMap.get("EZM0411B060CBSMsg1List");
							}
						}
						
						for(HashMap childMap : childList){
							
							if(childMap==null){
								continue;
							}
							
							boolean kKSV006425SCFlg = false;
							HashMap kKSV006411SCchildMap = null;
							String taknkiki_sbt_cd = null;
							
							if(kKSV006411SCchildList != null)
							{
								for(int j=0; j<kKSV006411SCchildList.size(); j++)
								{
									kKSV006411SCchildMap = (HashMap)kKSV006411SCchildList.get(j);
									if(kKSV006411SCchildMap.get("taknkiki_model_cd").equals(childMap.get("taknkiki_model_cd")))
									{
										kKSV006425SCFlg = true;
										taknkiki_sbt_cd= (String)kKSV006411SCchildMap.get("takkiki_sbt_cd");
										break;
									}
								}
							}

							
							String kikiSbtCd    = kKSV006425SCFlg ? taknkiki_sbt_cd : new String();
							String kikiModelCd  = (String)childMap.get("taknkiki_model_cd");
							String kikiModelNm  = (String)childMap.get("taknkiki_model_cd_nm");
							String kikiSeizoNo  = (String)childMap.get("kiki_seizo_no");
							String kikiChgNo    = (String)childMap.get("kiki_chg_no");
							String kktkSvcKeiNo = (String)childMap.get("kktk_svc_kei_no");
							String kktkSvcCd    = (String)childMap.get("kktk_svc_cd");
							
							// 機器種別コードが「ｅｏ電話用ＶＡ」の場合
							// ANK-4315-00-00 MOD START
//							if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
							if(KKTK_SBT_CD_VA.equals(kikiSbtCd) || KKTK_SVC_CD_TKNRT.equals(kktkSvcCd) || KKTK_SVC_CD_HGW.equals(kktkSvcCd))
							// ANK-4315-00-00 MOD END
							{
								
								// 20131202 ANK-1578-00-00 START
								if(KKTK_SVC_CD_TKNRT.equals(kktkSvcCd))
								{
									if(kikiModelCd == null || "".equals(kikiModelCd))
									{
										kikiModelNm = TKNRT_TAKNKIKI_MODEL_NM;
									}
								}
								// 20131202 ANK-1578-00-00 END
								// ANK-4315-00-00 ADD START
								else if(KKTK_SVC_CD_HGW.equals(kktkSvcCd))
								{
									if(kikiModelCd == null || "".equals(kikiModelCd))
									{
										kikiModelNm = HGW_TAKNKIKI_MODEL_NM;
									}
								}
								// ANK-4315-00-00 ADD END
								// 機器変更番号が一致する場合
								if(kikiChgNo.equals(vaKikiChgNo))
								{
									vaKktkSvcKeiNo = kktkSvcKeiNo;		// 機器提供サービス契約番号
									vaModelCd = kikiModelCd;			// 機器型式コード
									vaModelNm = kikiModelNm;			// 機器型式名称
									vaSeizoNo = kikiSeizoNo;			// 機器製造番号

									index = 0;							// インデックス
									break;
								}
							}

						}
						
					}
				}
			}
// IK1-2013-0000147対応 20130811 星野 ADD END

			// ============================================
			// ＶＡプルダウン生成
			// ============================================
			// 設定内容
			String cdDiv   = vaModelCd + KIKI_SEP + vaKikiChgNo;
			// 表示内容
			String cdDivNm = vaModelCd + " " + vaModelNm + " " + vaSeizoNo;

			vaBean.sendMessageString(
					KKW00147SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_ADD_VALUE,
					cdDiv
			);
			vaBean.sendMessageString(
					KKW00147SFConst.CD_DIV_NM_LIST_01,
					X31CWebConst.DATABEAN_ADD_VALUE,
					cdDivNm
			);

			// 一時保管用のプルダウン項目に要素追加
			X31SDataBeanAccess kikiBean = kikiArray.addDataBean();

			// 機器形式コード
			kikiBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_27, X31CWebConst.DATABEAN_SET_VALUE, vaModelCd);
			// 機器製造番号
			kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_SEIZO_NO_27,     X31CWebConst.DATABEAN_SET_VALUE, vaSeizoNo);
			// 機器変更番号
			kikiBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_27,       X31CWebConst.DATABEAN_SET_VALUE, vaKikiChgNo);
			// 表示文言
			kikiBean.sendMessageString(KKW00147SFConst.DISP_NAME_27,            X31CWebConst.DATABEAN_SET_VALUE, cdDivNm);

			// ============================================
			// 機器型式コード保管
			// ============================================
			kiki_svc_no.put(vaModelCd, "");
		}

		// 変更前の機器情報
		svcFormBean.sendMessageString(KKW00147SFConst.CHBF_KKTK_SVC_KEI_NO,  X31CWebConst.DATABEAN_SET_VALUE, vaKktkSvcKeiNo);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_CD_BEFORE,    X31CWebConst.DATABEAN_SET_VALUE, vaModelCd);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_NM_BEFORE,    X31CWebConst.DATABEAN_SET_VALUE, vaModelNm);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_SEIZO_NO_BEFORE,    X31CWebConst.DATABEAN_SET_VALUE, vaSeizoNo);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_BEFORE, X31CWebConst.DATABEAN_SET_VALUE, vaKikiChgNo);

		// ＶＡ表示の障害修正 2013/01/08 MOD END
		vaBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(index));

		// 固定値表示用項目の設定
		svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_CD, X31CWebConst.DATABEAN_SET_VALUE, vaModelCd);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_NM, X31CWebConst.DATABEAN_SET_VALUE, vaModelNm);
		svcFormBean.sendMessageString(KKW00147SFConst.VA_SEIZO_NO, X31CWebConst.DATABEAN_SET_VALUE, vaSeizoNo);

		// 機器提供サービス契約番号一覧をセッションに保持
		JCCWebCommon.setScreenInfo(this, KKW00147_KKTK_SVC_NO_LIST, kiki_svc_no);
	}


	/**
	 * 宅内から取得したVA情報を設定する
	 * @param svcFormBean
	 * @param vaMap
	 * @return
	 */
	private HashMap<String, TreeMap<String, String[]>> addTaknkikiModel(
			X31SDataBeanAccess svcFormBean,
			HashMap<String, TreeMap<String, String[]>> vaMap)
	{
		X31SDataBeanAccessArray list1 = svcFormBean.getDataBeanArray(KKW00147SFConst.EXX0000ZXXXDATA);
		
		for (int i = 0; i < list1.getCount(); i++)
		{
			X31SDataBeanAccess subbean = list1.getDataBean(i);
			
			// 宅内機器種別コード
			String kikiSbtCd = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_10, X31CWebConst.DATABEAN_GET_VALUE);

			// ポート数
			String ports = subbean.sendMessageString(KKW00147SFConst.PORT_CNT_10, X31CWebConst.DATABEAN_GET_VALUE);

			// 機器種別がVAでポート数が２以上なら設定
			if (null != kikiSbtCd && CD01262_VA.equals(kikiSbtCd) && 
					null != ports && ports.matches("[0-9]+") && 1 < Integer.valueOf(ports))
			{
				// ＶＡ宅内機器型式コード
				String vaModelCd = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
				
				// 宅内機器型式名
				String vaModelNm = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_NM_10, X31CWebConst.DATABEAN_GET_VALUE);

				// IT1-2013-0000099 2013/01/25 start
				if(!containsCheck(vaMap, vaModelCd))
				{
					TreeMap<String, String[]> tm = new TreeMap<String, String[]>();
					tm.put("", new String[]{vaModelNm, ""});
					vaMap.put(vaModelCd+KIKI_SEP, tm);
				}
				// IT1-2013-0000099 2013/01/25 end
			}
		}

		return vaMap;
	}
	
	// IT1-2013-0000099 2013/01/25 start
	private boolean  containsCheck(HashMap<String, TreeMap<String, String[]>> vaMap, String modelCd){
		for (String kikiModelCd_kikiChgCd: vaMap.keySet()){
			if(modelCd.equals(kikiModelCd_kikiChgCd.split(KIKI_SEP)[0])){
				return true;  //含む
			}
		}
		return false;  //含まない
	}
	// IT1-2013-0000099 2013/01/25 end
	
	/** セッションから機器提供サービス契約番号 ArrayList を取得するキー */
	private static final String KKW00147_KKTK_SVC_NO_LIST = "KKW00147_KKTK_SVC_NO_LIST";


	/** 一時金設定コード：指定額 */
	private static final String JIMUTE_SHITEIGAKU = "04";

	/**
	 * 住所の編集
	 * 
	 * @param bean 住所一意照会明細
	 * @param state_nm_11 都道府県取得用キー
	 * @param city_nm_11 市区町村取得用キー
	 * @param oaztsu_nm_11 大字通称取得用キー
	 * @param azcho_nm_11 字・号取得用キー
	 * @param svcFormBean サービスフォームBean
	 * @return 住所（都道府県〜字・号
	 */
	private String editAddress(X31SDataBeanAccess bean, String state_nm_11,
			String city_nm_11, String oaztsu_nm_11, String azcho_nm_11, X31SDataBeanAccess svcFormBean)
	{
		StringBuilder sb = new StringBuilder("");

		String buf = null;

		//都道府県
		buf = bean.sendMessageString(state_nm_11, X31CWebConst.DATABEAN_GET_VALUE);
		if (!KKW00130SFLogic.isBlankString(buf))
		{
			sb.append(buf);
			svcFormBean.sendMessageString(KKW00147SFConst.STATE_NM, X31CWebConst.DATABEAN_SET_VALUE, buf);
		}
		
		//市区町村
		buf = bean.sendMessageString(city_nm_11, X31CWebConst.DATABEAN_GET_VALUE);
		if (!KKW00130SFLogic.isBlankString(buf))
		{
			sb.append(buf);
			svcFormBean.sendMessageString(KKW00147SFConst.CITY_NM, X31CWebConst.DATABEAN_SET_VALUE, buf);
		}
		
		//大字通称
		buf = bean.sendMessageString(oaztsu_nm_11, X31CWebConst.DATABEAN_GET_VALUE);
		if (!KKW00130SFLogic.isBlankString(buf))
		{
			sb.append(buf);
			svcFormBean.sendMessageString(KKW00147SFConst.OAZTSU_NM, X31CWebConst.DATABEAN_SET_VALUE, buf);
		}

		//字町名
		buf = bean.sendMessageString(azcho_nm_11, X31CWebConst.DATABEAN_GET_VALUE);
		if (!KKW00130SFLogic.isBlankString(buf))
		{
			sb.append(buf);
			svcFormBean.sendMessageString(KKW00147SFConst.AZCHO_NM, X31CWebConst.DATABEAN_SET_VALUE, buf);
		}

		return sb.toString();
	}


	/**
	 * 遷移元画面からの引継ぎデータの取得とサービスフォームBeanへの設定
	 * 
	 * @param svcFormBean
	 */
	private void getMotoData(X31SDataBeanAccess svcFormBean)
	{
		//引継ぎデータ
//		HashMap<String,Object> dataMap = JCCWebCommon.getScreenInfo(this);
//		HashMap<String,Object> map = ((ArrayList<HashMap<String,Object>>)dataMap.get(KKW00813SFConst.CUST_KEI_HKTGI_LIST)).get(0);
		JCCWebCommon.getScreenInfo(this);

		String[] srcKeys = {
			KKW00147SFConst.SYSID_22,
			KKW00147SFConst.SVC_KEI_NO_22,
			KKW00147SFConst.SVC_KEI_UCWK_NO_22,
			KKW00147SFConst.IDO_DIV_22
		};

		String[] destKeys = {
				KKW00147SFConst.SYSID,
				KKW00147SFConst.SVC_KEI_NO,
				KKW00147SFConst.SVC_KEI_UCWK_NO,
				KKW00147SFConst.IDO_DIV,
				""
		};

		//引継情報設定Ｂｅａｎ
		X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);

		//ＳＹＳＩＤ
		//サービス契約番号
		//サービス契約内訳番号
		//異動区分
		for (int i = 0; i < srcKeys.length; i++)
		{
			String str = hktgiBean.sendMessageString(srcKeys[i], X31CWebConst.DATABEAN_GET_VALUE);
			if (str == null)
			{
				str = "";
			}
			svcFormBean.sendMessageString(destKeys[i], X31CWebConst.DATABEAN_SET_VALUE, str);
		}

		//異動区分
		ido_div = hktgiBean.sendMessageString(KKW00147SFConst.IDO_DIV_22, X31CWebConst.DATABEAN_GET_VALUE);

		// 2012/10/25 電話番号登録受付データ画面への戻る制御 ADD START
		//世代登録年月日 
		String gene_add_dtm = hktgiBean.sendMessageString(KKW00147SFConst.GEBE_ADD_DTM_22, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (gene_add_dtm != null && !"".equals(gene_add_dtm)){
			svcFormBean.sendMessageBoolean(KKW00147SFConst.RETURN_FLG, X31CWebConst.DATABEAN_SET_VALUE ,true);
		}
		// 2012/10/25 電話番号登録受付データ画面への戻る制御 ADD END
//		//異動理由コード
//		svcFormBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD, X31CWebConst.DATABEAN_CLEAR);
//		Integer maxIndex = (Integer)hktgiBean.sendMessage(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_COUNT);
//		for(int i = 0 ; i < maxIndex; i ++){
//			String str = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_VALUE, i);
//			svcFormBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD, X31CWebConst.DATABEAN_ADD_VALUE, str);
//		}

	}

	/**
	 * サーバ側のデータチェック
	 * @return
	 */
	private boolean checkSVData(){
		
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		//2012/03/26 IT2-2012-0000266 ADD START
		boolean errorExists = false;
		//2012/03/26 IT2-2012-0000266 ADD END
		// 2012/08/16 TAI-2012-0000081 ADD START
		String user_kana;
		// 2012/08/16 TAI-2012-0000081 ADD END
		
		//番ポ有無の「有」→「無」のチェック
		//※異動区分が番号変更、番ポ情報変更だけ
		//↓↓↓2012-10-04変更、 電話番号変更時はチェックを行わない↓↓↓
		//if(ido_div.equals(IDO_DIV_BANGO_HENKO) || ido_div.equals(IDO_DIV_BANPO_HENKO))
		if(ido_div.equals(IDO_DIV_BANPO_HENKO))
		//↑↑↑2012-10-04変更、 電話番号変更時はチェックを行わない↑↑↑
		{
			
			String nowBmp;
			String beforeBmp;
			X31SDataBeanAccessArray beanArray;
			X31SDataBeanAccess bean;
			
			//現在の番ポ有無を取得
			bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_UM).getDataBean(0);
			nowBmp = bean.sendMessageString(
					KKW00147SFConst.CD_DIV_LIST_01, 
					X31CWebConst.DATABEAN_GET_VALUE, 
					Integer.parseInt(bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE)));
			
			//変更前の番ポ有無を取得
			beanArray = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA);
			bean = beanArray.getDataBean(0);
			beforeBmp = bean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
			
			//番ポ有無変更のチェック
			if(beforeBmp.equals("1"))
			{
				if(nowBmp.equals("0"))
				{
					JCCWebCommon.setMessageInfo(this, "EKB4210-KW");
					//2012/03/26 IT2-2012-0000266 MOD START
//					return false;
					errorExists = true;
					//2012/03/26 IT2-2012-0000266 MOD END
				}
			}
		}
		
// OT-2013-0000311 2013-03-29 DEL_START
//		//↓↓↓2012-10-04追加、 電話番号変更時 変更前の番ポ有無が「無」でサービス提供中以外の場合 ↓↓↓
//		if(ido_div.equals(IDO_DIV_BANGO_HENKO))
//		{
//			//変更前の番ポ有無を取得
//			String beforeBmp;
//			String svcKeiUcwkStat;
//			X31SDataBeanAccessArray beanArray;
//			X31SDataBeanAccess bean;
//			
//			//変更前の番ポ有無を取得
//			beanArray = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA);
//			bean = beanArray.getDataBean(0);
//			beforeBmp = bean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
//
//			//変更前の番ポ有無が有の場合
//			if (beforeBmp.equals("1")){
//				
//				//サービス契約内訳ステータスを取得
//				beanArray = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0161A010DATA);
//				bean = beanArray.getDataBean(0);
//				svcKeiUcwkStat = bean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_STAT_05, X31CWebConst.DATABEAN_GET_VALUE);
//				
//				// サービス提供中の場合はエラー
//				if (JKKCommonConst.SVC_KEI_STAT_100.equals(svcKeiUcwkStat)){
//					JCCWebCommon.setMessageInfo(this, "EKB4170-KW");
//					errorExists = true;
//				}
//			}
//		}
//		//↑↑↑2012-10-04追加、 電話番号変更時はチェックを行わない↑↑↑
// OT-2013-0000311 2013-03-29 DEL_END
		
		//2012/03/26 IT2-2012-0000266 ADD START
		//VAプルダウン選択のチェック
		//※異動区分が番号追加、電話番号情報変更のとき
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_DENWA_HENKO))
		{
			// 20120720 ANK-0079-00-00 START
			//X31SDataBeanAccess bean = null;
			//boolean vaChoiceExists = false;
			//Object vaChoiceIndex = null;
			
			//bean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
			
			//if(bean != null)
			//{
			//	vaChoiceIndex = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			//	if(vaChoiceIndex != null)
			//	{
			//		//第一要素目以外であれば有効な選択肢（第一要素は空項目）
			//		if(!"0".equals(vaChoiceIndex))
			//		{
			//			vaChoiceExists = true;
			//		}
			//	}
			//}
			
			//選択されていない場合はエラーメッセージ表示
			//if(!vaChoiceExists)
			
			// 20131202 ANK-1578-00-00 START
			String vaChoiceNm = getPulldownNm(svcFormBean, KKW00147SFConst.VA_CHOICE);
			
			if(!TKNRT_TAKNKIKI_MODEL_NM.equals(vaChoiceNm.trim()))
			{
				String vaChoiceCd = getPulldownCd(svcFormBean, KKW00147SFConst.VA_CHOICE);
				if (isNull(vaChoiceCd))
				{
					// VAが選択されていない場合
					
					JCCWebCommon.setMessageInfo(this, "EKB1320-NW", new String[]{"VA"},"va_choice");
					errorExists = true;
				}
				// 20120720 ANK-0079-00-00 END
			}
			// 20131202 ANK-1578-00-00 END
		}

		// 2012/08/16 TAI-2012-0000081 ADD START
		//※異動区分が番号追加、電話番号情報変更、番号変更のとき
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_DENWA_HENKO) || ido_div.equals(IDO_DIV_BANGO_HENKO)){
			// 利用者名（カナ）
			 user_kana = svcFormBean.sendMessageString(KKW00147SFConst.USER_KANA,
						X31CWebConst.DATABEAN_GET_VALUE);
			 
			 if (user_kana != null){
				 
				 user_kana = JPCConvertString.convFullToHalfByKata(user_kana);
				 
				 // 半角に変換した利用者名（カナ）の桁数が36より大きい場合はエラー
				 if (user_kana.length() > 36){
						JCCWebCommon.setMessageInfo(this, "EKB0040-TW", new String[]{"利用者名（カナ）","1","36"},"user_kana");
						errorExists = true;
				 }
			 }
		}
		// 2012/08/16 TAI-2012-0000081 ADD END
		
		//ポートプルダウン選択のチェック
		//※異動区分が番号追加のとき
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA))
		{
			X31SDataBeanAccess bean = null;
			boolean portChoiceExists = false;
			Object portChoiceIndex = null;
			
			bean = svcFormBean.getDataBeanArray(KKW00147SFConst.PORT_NO).getDataBean(0);
			
			if(bean != null)
			{
				portChoiceIndex = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
				if(portChoiceIndex != null)
				{
					//第一要素目以外であれば有効な選択肢（第一要素は空項目）
					if(!"0".equals(portChoiceIndex))
					{
						portChoiceExists = true;
					}
				}
			}
			
			//選択されていない場合はエラーメッセージ表示
			if(!portChoiceExists)
			{
				JCCWebCommon.setMessageInfo(this, "EKB1320-NW", new String[]{"ポート番号"},"port_no");
				errorExists = true;
			}
			
			// ANK-4315-00-00 ADD START
			//ONU交換工事立ち上げ可否チェック
			String onuKokanKojiFlg =svcFormBean.sendMessageString(KKW00147SFConst.ONU_KOKAN_KOJI_FLG, X31CWebConst.DATABEAN_GET_VALUE);
			// ONU交換工事立ち上げの他の工事案件番号が仕掛中かどうか（新設、プラン変更(収容替)、撤去(解約)）
			String KojikahikojiakNo =svcFormBean.sendMessageString(KKW00147SFConst.ONU_KOKAN_KOJIAK_NO, X31CWebConst.DATABEAN_GET_VALUE);
			
			// ONU交換工事を可で仕掛中の工事が存在すればエラーにする。
			if("1".equals(onuKokanKojiFlg) && !JKKStringUtil.isNullBlank(KojikahikojiakNo))
			{
				JCCWebCommon.setMessageInfo(this, "EKB1040-JW", new String[]{"ONU交換工事","立ち上がる状態","登録は"});
				errorExists = true;
			}
			// ANK-4315-00-00 ADD END
		}
		
		return !errorExists;
		//2012/03/26 IT2-2012-0000266 ADD END
		
	}

	// 20120723 ANK-0079-00-00 START
	/**
	 * 3.2 登録確認ボタン押下
	 * 
	 * @return 処理結果
	 * @throws Exception 任意例外
	 */
	public boolean actionCfm() throws Exception
	{
		// 仮登録フラグを設定する
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		svcFormBean.sendMessageString(KKW00147SFConst.KARI_TOUROKU_FLG, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.FLG_OFF);
		
		return cfmTran();
	}
	
	/**
	 * 仮登録ボタン押下
	 * 
	 * @return 処理結果
	 * @throws Exception 任意例外
	 */
	public boolean actionKrAdd() throws Exception
	{
		// 仮登録フラグを設定する
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		svcFormBean.sendMessageString(KKW00147SFConst.KARI_TOUROKU_FLG, X31CWebConst.DATABEAN_SET_VALUE, JKKCommonConst.FLG_ON);
		
		return cfmTran();
	}
	
	/**
	 * 確認処理
	 * 
	 * @return 処理結果
	 * @throws Exception 任意例外
	 */
	private boolean cfmTran() throws Exception
	{
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);
		
		// 20120709 (ロット２)番ポ対応 START
		// DataBean初期化処理
		// ※javascriptでラベル化した項目の値が失われている場合に画面初期表示時の値に戻します。
		resetDataBean();
		// 20120709 (ロット２)番ポ対応 END
		
		//サーバサイドでのデータチェック処理
		if(!checkSVData()){
			// 20131202 ANK-1578-00-00 START
			actionKikiChange();
			// 20131202 ANK-1578-00-00 END
			return true;
		}
		
		//更新確認処理前のサービスフォームBean構成
		confirmServiceFormBean();

		try
		{
			//チェックのみの更新処理呼出
			// 20120810 ANK-0079-00-00 START
			//rs = doAddTelephoneNumberInfo(JPCModelConstant.FUNC_CD_2);
			if (doAddTelephoneNumberInfo(JPCModelConstant.FUNC_CD_2))
			{
				// エラーが発生した場合
				return true;
			}
			// 20120810 ANK-0079-00-00 END
		}
		catch (Exception e) 
		{
			//例外はＦＷにそのまま伝達
			throw e;
		}
		finally
		{
			//何があっても電話番号情報登録確認画面を表示するためのサービスフォームBean編集
			reeditServiceFormBean();
		}

		// View Logic側でのエラーチェック
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div) ||
				IDO_DIV_DENWA_HENKO.equals(ido_div))			//異動区分：光電話・番号追加
		{
			X31SDataBeanAccess svcFormBean = getServiceFormBean();
			String currentSvcKeiUwkNo = "";
			if (IDO_DIV_BANGO_HENKO.equals(ido_div))
			{
				currentSvcKeiUwkNo = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
				
			}
			if (!checkEmegencyAddress(svcFormBean, currentSvcKeiUwkNo))
			{
				// 住所のメッセージを追加する
				JCCWebCommon.setMessageInfo(this, "EKBA410--Q");
			}
		}
		// IT2-2012-0000572 2012/06/06 ADD START
		if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div)) {
			X31SDataBeanAccess svcFormBean = getServiceFormBean();
			String svcEndTerm = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_TERM, X31CWebConst.DATABEAN_GET_VALUE);
			String svcEndY = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YEAR, X31CWebConst.DATABEAN_GET_VALUE);
			String svcEndM = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_MON, X31CWebConst.DATABEAN_GET_VALUE);
			String svcEndD = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_DAY, X31CWebConst.DATABEAN_GET_VALUE);
			String newSvcEndYmd = createYMDStr(svcEndY, svcEndM, svcEndD);
			String unyoYmd = svcFormBean.sendMessageString(KKW00147SFConst.UNYO_YMD, X31CWebConst.DATABEAN_GET_VALUE);
			Calendar calSvcEndYmd = Calendar.getInstance();
			SimpleDateFormat sdfYmd = new SimpleDateFormat("yyyyMMdd");
			calSvcEndYmd.setTime(sdfYmd.parse(newSvcEndYmd));
			Calendar calYmd = Calendar.getInstance();
			calYmd.setTime(sdfYmd.parse(unyoYmd));
			calYmd.add(Calendar.DAY_OF_YEAR, Integer.parseInt(svcEndTerm));
			if (calYmd.compareTo(calSvcEndYmd) < 0) {
				String[] str =
				{
						KKW00147SFConst.SVC_END_YMD, svcEndTerm+"日"
				};
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB2990__Q, str);
			}
		}
		// IT2-2012-0000572 2012/06/06 ADD END
		//遷移先情報設定
		JCCWebCommon.setScreenId(this, SCREEN_ID_KKW00151, JKKScreenConst.SCREEN_ID_KKW00147);

		//遷移先の指定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, SCREEN_ID_KKW00151);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, SCREEN_NM_KKW00151);
		
		//登録確認メッセージを表示
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, new String[]{"電話番号情報の登録"});

		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		String kariTourokuFlg = svcFormBean.sendMessageString(KKW00147SFConst.KARI_TOUROKU_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if (JKKCommonConst.FLG_ON.equals(kariTourokuFlg))
		{
			// 仮登録の場合、仮登録の確認メッセージを表示
			JCCWebCommon.setMessageInfo(this, "EKB1220--I", new String[]{"仮登録を行います。別途登録更新確認ボタンで本登録"});
			
//↓↓↓2013-07-22追加　IT2-2013-0000653（番号追加の仮登録で発信者番号通知オプションが付かない）↓↓↓
			//光電話・番号追加？
			if(IDO_DIV_BANGO_TSUIKA.equals(ido_div))
			{
				//発信者番号通知初期値
				String no_tch_ini = 
					svcFormBean.sendMessageString(KKW00147SFConst.HNO_TCHI_INI, X31CWebConst.DATABEAN_GET_VALUE);
				
				//発信者番号通知
				String no_tch = 
					svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_GET_VALUE);
				no_tch = no_tch.substring(0, 1);		//先頭のコード値だけ使用
				
				//発信者番号通知プルダウンが変更されている？
				if (!no_tch_ini.equals(no_tch))
				{
					// 注意喚起メッセージを表示
					JKKWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD790__I);
//2013-07-23,IT1動確での指摘により、元に戻す実装を無効化
//					{
//						int nHnoTch = (Integer.parseInt(no_tch_ini) -1) * (-1);		//反転
//						X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.HASINSHA_NO_TCH).getDataBean(0);
//						no_tch_ini = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, nHnoTch);
//					}
//					//元に戻す
//					svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_SET_VALUE, no_tch_ini);
				}
			}
//↑↑↑2013-07-22追加　IT2-2013-0000653（番号追加の仮登録で発信者番号通知オプションが付かない）↑↑↑
			// ANK-4315-00-00 ADD START
			// 工事情報が入力されている場合、入力内容が破棄される旨のメッセージを表示する。(「仮登録」では工事情報をＤＢ登録しない。)
			if (!JKKStringUtil.isNullBlank(svcFormBean.sendMessageString(KKW00147SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_1, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_2, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.TNKJ_KIBO_APO_KIGEN_YMD, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.TEL_RRK_KIBO_TIME, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.KOJI_APO_RRKS, X31CWebConst.DATABEAN_GET_VALUE)) || 
				!JKKStringUtil.isNullBlank( svcFormBean.sendMessageString(KKW00147SFConst.CUST_RRKS_TELNO, X31CWebConst.DATABEAN_GET_VALUE)))
				{
					// 注意喚起メッセージを表示
					JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD790__I, new String[]{"仮登録では入力された工事情報は破棄されます。本登録時に再度工事情報入力"});
				}
			// ANK-4315-00-00 ADD END
		}
		
		// OM-2014-0002267対応 20140722 田中 ADD START
		// 異動区分が番号追加の場合
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			//番ポ有無
			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_UM).getDataBean(0);
			String indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			
			// 番ポがありかつ、「一時金設定コード（番ポ）」が空の場合
			if (CD00002_ARI.equals(cdDiv)
					&& "".equals(svcFormBean.sendMessageString(KKW00147SFConst.JMTE_CD_BMP, X31CWebConst.DATABEAN_GET_VALUE))) {
				
				// 確認メッセージを表示
				JCCWebCommon.setMessageInfo(this, "EKBE148--Q");
			}
		}
		// OM-2014-0002267対応 20140722 田中 ADD END

		
		// ANK-1171-00-00 2013/01/07 ADD START
		//異動区分：光電話・電話番号情報変更
		if (IDO_DIV_DENWA_HENKO.equals(ido_div))
		{
			String vaModelCdBefore = "";
			vaModelCdBefore = svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_CD_BEFORE,X31CWebConst.DATABEAN_GET_VALUE);
			
			// 20131202 ANK-1578-00-00 START
			String vaChoiceNm = getPulldownNm(svcFormBean, KKW00147SFConst.VA_CHOICE);
			
			String vaKikiChgNoBefore = svcFormBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_BEFORE,X31CWebConst.DATABEAN_GET_VALUE);
			
			// 変更前ＶＡ形式コードが設定有の場合
//			if (vaModelCdBefore != null && !"".equals(vaModelCdBefore))
			// ANK-4315-00-00 MOD START
//			if ((vaModelCdBefore != null && !"".equals(vaModelCdBefore)) || (TKNRT_TAKNKIKI_MODEL_NM.equals(vaChoiceNm.trim()) || (vaKikiChgNoBefore != null && !"".equals(vaKikiChgNoBefore)))){
			if ((vaModelCdBefore != null && !"".equals(vaModelCdBefore)) || ((TKNRT_TAKNKIKI_MODEL_NM.equals(vaChoiceNm.trim()) || HGW_TAKNKIKI_MODEL_NM.equals(vaChoiceNm.trim())) || (vaKikiChgNoBefore != null && !"".equals(vaKikiChgNoBefore)))){
			// ANK-4315-00-00 MOD END
			// 20131202 ANK-1578-00-00 END
				
				String vaModelCdAfter = svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_CD, X31CWebConst.DATABEAN_GET_VALUE);
				String vaModelNmBefore = svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_NM_BEFORE, X31CWebConst.DATABEAN_GET_VALUE);
				String vaModelNmAfter = svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_NM, X31CWebConst.DATABEAN_GET_VALUE);
//2013-02-21変更　ロット２OT-2013-0000195（VA変更していないのに変更した？メッセージが出る）
//				String vaSeizoNoBefore = svcFormBean.sendMessageString(KKW00147SFConst.VA_SEIZO_NO_BEFORE, X31CWebConst.DATABEAN_GET_VALUE);
//				String vaSeizoNoAfter = svcFormBean.sendMessageString(KKW00147SFConst.VA_SEIZO_NO, X31CWebConst.DATABEAN_GET_VALUE);
//				
//				if (vaSeizoNoBefore == null){
//					vaSeizoNoBefore = "";
//				}
//				
//				if (vaSeizoNoAfter == null){
//					vaSeizoNoAfter = "";
//				}
//				
//				// 変更前VA情報
//				String vaInfoBefor = vaModelCdBefore + vaModelNmBefore + vaSeizoNoBefore;
//				// 変更後VA情報
//				String vaInfoAfter = vaModelCdAfter + vaModelNmAfter + vaSeizoNoAfter;
//
//				if (!vaInfoBefor.equals(vaInfoAfter))
				if (!vaModelCdBefore.equals(vaModelCdAfter) || !vaModelNmBefore.equals(vaModelNmAfter))
//2013-02-21変更　ロット２OT-2013-0000195（VA変更していないのに変更した？メッセージが出る）
				{
					// VA情報が変更されている場合、確認メッセージを表示
					JCCWebCommon.setMessageInfo(this, "EKBC920--Q");
				}
			}
		}
		// ANK-1171-00-00 2013/01/07 ADD END
		
		return true;
	}
	// 20120723 ANK-0079-00-00 END
	
	// ANK-2731-00-00 ADD START
	/**
	 * 強制利用終了ボタン押下時処理
	 * @param 
	 * @param 
	 * @param 
	 * @return 年月日(YYYYMMDD)
	 */
	public boolean actionForceUseExit()
	{
		// ユースケース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>(); // アウトプットマップ生成
		// ANK-4075-00-00 ADD START
		boolean errFlg = true;
		// ANK-4075-00-00 ADD END
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		// ANK-4075-00-00 ADD START
		//スキームタイプを取得
		X31SDataBeanAccess custBean = svcFormBean.getDataBeanArray(KKW00147SFConst.ECK0011A010DATA).getDataBean(0);
		String scmCdDiv = custBean.sendMessageString("スキームタイプコード", X31CWebConst.DATABEAN_GET_VALUE);
		
		if (JCKCommonConst.SCM_TYPE_CD_B.equals(scmCdDiv))
		{
			JCCWebCommon.setMessageInfo(this, "EKB0930-NW", new String[]{"MT・MZ卸スキームの","光電話に関する異動"});
			errFlg = false;
			
			return errFlg;
		}
		// ANK-4075-00-00 ADD END
		
		KKSV0212_KKSV0212OPDBMapper mapper = new KKSV0212_KKSV0212OPDBMapper();
		
		//引継情報設定Ｂｅａｎ
		X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);
		
		//異動理由コード
			String ido_rsn_cd = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_VALUE, 0);
		
		// ANK-4494-00-00 ADD START
		Boolean enumKrkeDoujiFlg = svcFormBean.sendMessageBoolean(KKW00147SFConst.HIDE_ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_GET_VALUE);
		if (enumKrkeDoujiFlg)
		{
			svcFormBean.sendMessageBoolean(KKW00147SFConst.ENUM_KRKE_DOUJI, X31CWebConst.DATABEAN_SET_VALUE, enumKrkeDoujiFlg);
		}
		// ANK-4494-00-00 ADD END
		
		// マッピング用Bean作成
		X31SDataBeanAccess[] paramBean =
		{
			svcFormBean
		};
		
		inputMap = mapper.setKKSV021201SC(paramBean, inputMap, ido_rsn_cd);
		
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0212);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0212OP);
		
		// サービス呼出処理
		invokeService(paramMap, inputMap, outputMap);
		
		// 処理結果の取得
		HashMap<String, Object> execute_info = new HashMap<String, Object>();
		execute_info = (HashMap<String, Object>)outputMap.get("trgt_data");
		String return_cd = (String)execute_info.get("err_cd");
		String err_cd = (String)execute_info.get("err_type");
		// ANK-4075-00-00 DEL START
		//boolean errFlg = true;
		// ANK-4075-00-00 DEL END
		
		if ("1100".equals(return_cd)){
			errFlg = false;
// ANK-4494-00-00 DEL START
//			if (err_cd != null && !"".equals(err_cd) && "E001".equals(err_cd)){
//				
//				JCCWebCommon.setMessageInfo(this, "EKB0290-JW", new String[]{"番ポ","無","光電話・番ポ戻し（強制利用終了）"});
//				
//			}
// ANK-4494-00-00 DEL END
			if (err_cd != null && !"".equals(err_cd) && "E002".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKB1510-KW", new String[]{"光電話・番ポ戻し（強制利用終了）","選択した電話番号の"});
				
			}
			if (err_cd != null && !"".equals(err_cd) && "E004".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKB4180-KW");
				
			}
			if (err_cd != null && !"".equals(err_cd) && "E005".equals(err_cd) || err_cd != null && !"".equals(err_cd) && "E006".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKBE220-KW");
				
			}
// ANK-2995-00-00 DEL START
//			if (err_cd != null && !"".equals(err_cd) && "E007".equals(err_cd)){
//				
//				JCCWebCommon.setMessageInfo(this, "EKBE230-KW");
//				
//			}
// ANK-2995-00-00 DEL END
			if (err_cd != null && !"".equals(err_cd) && "E008".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKBE240-KW");
				
			}
			// ANK-4494-00-00 ADD START
			if (err_cd != null && !"".equals(err_cd) && "E010".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKB0780-KW", new String[]{"処理可能なポートアウト申請","登録されていない","強制利用終了"});
				
			}
			
			if (err_cd != null && !"".equals(err_cd) && "E011".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKB1040-JW", new String[]{"電話番号","番ポ利用停止解除済み","強制利用終了"});
				
			}
			
			if (err_cd != null && !"".equals(err_cd) && "E012".equals(err_cd)){
				
				JCCWebCommon.setMessageInfo(this, "EKB1040-JW", new String[]{"電話番号","ENUM切替不可の状態","同時ENUM切替"});
				
			}
			// ANK-4494-00-00 ADD START
			
		}
		else if ("0000".equals(return_cd)){
		
			// 処理完了メッセージの出力
			JCCWebCommon.setMessageInfo(this, "EKB4390--I", new String[]{"処理"} );
		}
		else {
			errFlg = false;
		}
		
		return errFlg;
		
	}
	// ANK-2731-00-00 ADD END

	// IT2-2012-0000572 2012/06/06 ADD START
	
	/**
	 * 年月日を整形(YYYYMMDD)して返却する
	 * @param year
	 * @param month
	 * @param day
	 * @return 年月日(YYYYMMDD)
	 */
	public static String createYMDStr(String year,String month,String day)
	{
	
		String buffer = "";
		String tmpYear = "";
		String tmpMonth = "";
		String tmpDay = "";
		
		if(year != null && !"".equals(year))
		{
			tmpYear = String.format("%04d", Integer.parseInt(year));
			buffer = buffer + tmpYear;
		}
		else
		{
			return "";
		}

		if(month != null && !"".equals(month))
		{
			tmpMonth = String.format("%02d", Integer.parseInt(month));
			buffer = buffer + tmpMonth;
		}
		else
		{
			return "";
		}
		
		if(day != null && !"".equals(day))
		{
			tmpDay = String.format("%02d", Integer.parseInt(day));
			buffer = buffer + tmpDay;
		}
		else
		{
			return "";
		}
		
		return buffer;
		
	}
	// IT2-2012-0000572 2012/06/06 ADD END

	
	/**
	 * サービスフォームBean内容を画面表示用に再編集
	 */
	private void reeditServiceFormBean()
	{
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		//異動区分の取得
		ido_div = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);

		// IT2-2012-0001214 2012-0709 mod start
//		//-- 事務手数料系は異動区分が光電話・番号追加と光電話・番号解約のみ
//		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_BANGO_KAIYAKU)){
		//-- 事務手数料系は異動区分が光電話・番号追加と光電話・番号変更と光電話・番号解約のみ
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_BANGO_HENKO) || ido_div.equals(IDO_DIV_BANGO_KAIYAKU)){
		// IT2-2012-0001214 2012-0709 mod end
			
			//事務手数料
			String jimuFee = getPulldownSelectedName(svcFormBean, KKW00147SFConst.JIMU_COMMISION);
			svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_L, X31CWebConst.DATABEAN_SET_VALUE, jimuFee);
			
			//事務手数料・指定額
			if (JIMUTE_SHITEIGAKU.equals(jimuFee.substring(0, 2)))
			{
				DecimalFormat df = new DecimalFormat("#,###,##0");
				String shiteigaku = svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_GET_VALUE);
				shiteigaku = df.format(Long.parseLong(shiteigaku));
				svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, shiteigaku);
			}
			
		}
		
		//--番ポ有無は番号追加と番号変更と番号番ポ情報変更のみ
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_BANGO_HENKO) || ido_div.equals(IDO_DIV_BANPO_HENKO)){
			String bmp_um = getPulldownSelectedName(svcFormBean, KKW00147SFConst.BMP_UM);
			svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L, X31CWebConst.DATABEAN_SET_VALUE, bmp_um);
		}
		
		//--発信者番号通知は光電話・番号追加と光電話・電話番号情報変更のみ
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_DENWA_HENKO))
		{
			//発信者番号通知
			String no_tch = getPulldownSelectedName(svcFormBean, KKW00147SFConst.HASINSHA_NO_TCH);
			svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_SET_VALUE, no_tch);
		}

		//--ＶＡ選択は光電話・番号追加と光電話・電話番号情報変更のみ
		//ＶＡ選択
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_DENWA_HENKO))
		{
			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
			String ind = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			String xxx = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, 
					Integer.parseInt(ind));
			String[] vaXxx = xxx.split(" ");
			String[] sfKeys = {KKW00147SFConst.VA_MODEL_CD, KKW00147SFConst.VA_MODEL_NM, KKW00147SFConst.VA_SEIZO_NO};
			for (int i = 0; i < vaXxx.length; i++)
			{
				if (KKW00130SFLogic.isBlankString(vaXxx[i]))
				{
					vaXxx[i] = "";
				}
				svcFormBean.sendMessageString(sfKeys[i], X31CWebConst.DATABEAN_SET_VALUE, vaXxx[i]);
			}
		}
		
		
		//--ポート番号は光電話・番号追加と光電話・電話番号情報変更のみ
		//ポート番号
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA) || ido_div.equals(IDO_DIV_DENWA_HENKO))
		{
			String portNm = getPulldownSelectedName(svcFormBean, KKW00147SFConst.PORT_NO);
			svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L, X31CWebConst.DATABEAN_SET_VALUE, portNm);
		}
		
		//--番号案内は光電話・番号追加のみ
		//番号案内
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA))
		{
			String noguide = getPulldownSelectedName(svcFormBean, KKW00147SFConst.NO_GUIDE);
			svcFormBean.sendMessageString(KKW00147SFConst.NO_GUIDE_L, X31CWebConst.DATABEAN_SET_VALUE, noguide);
		}
		
		//--電話帳掲載は光電話・番号追加のみ
		//電話帳掲載
		if(ido_div.equals(IDO_DIV_BANGO_TSUIKA))
		{
			String dwks = getPulldownSelectedName(svcFormBean, KKW00147SFConst.DNWACHO_KEISAI);
			svcFormBean.sendMessageString(KKW00147SFConst.DNWACHO_KEISAI_L, X31CWebConst.DATABEAN_SET_VALUE, dwks);
		}
		
		//--違約金発生区分は解約だけ
		if(ido_div.equals(IDO_DIV_BANGO_KAIYAKU))
		{
			String iyakuL = getPulldownSelectedName(svcFormBean, KKW00147SFConst.PNLTY_HASSEI_DIV);
			svcFormBean.sendMessageString(KKW00147SFConst.PNLTY_HASSEI_DIV_L, X31CWebConst.DATABEAN_SET_VALUE, iyakuL);
		}
		// ANK-3190-00-00 ADD START
		if(ido_div.equals(IDO_DIV_DENWA_HENKO))
		{
			//番ポ申込手数料
			String bmpFee = getPulldownSelectedName(svcFormBean, KKW00147SFConst.BMP_MSKM_COMMISION);
			svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_L, X31CWebConst.DATABEAN_SET_VALUE, bmpFee);
			
			//番ポ申込手数料・指定額
			if ( bmpFee != null && !"".equals(bmpFee))
			{
				if (JIMUTE_SHITEIGAKU.equals(bmpFee.substring(0, 2)))
				{
					DecimalFormat df = new DecimalFormat("#,###,##0");
					String shiteigaku = svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_GET_VALUE);
					shiteigaku = df.format(Long.parseLong(shiteigaku));
					svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, shiteigaku);
				}
			}
		}
		// ANK-3190-00-00 ADD END
		
	}

	/**
	 * プルダウンの選択項目の名称を取得
	 * 
	 * @param svcFormBean
	 * @param sfKey
	 * @return String
	 */
	private String getPulldownSelectedName(X31SDataBeanAccess svcFormBean, String sfKey)
	{
		X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(sfKey).getDataBean(0);

		String ind = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		
		//プルダウンが有効でない異動区分の場合はNull値として返却
//		String cdDiv = bean.sendMessageString(KKW00130SFConst.CD_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(ind));
		String cdNam = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(ind));

		return cdNam;
	}


	/** 異動区分：光電話・番号追加 */
	private static final String IDO_DIV_BANGO_TSUIKA = JKKCommonConst.IDO_DIV_VALUE_00041;		//

	
	/** 異動区分：光電話・番号変更 */
	private static final String IDO_DIV_BANGO_HENKO = JKKCommonConst.IDO_DIV_VALUE_00042;		//

	
	/** 異動区分：光電話・番号解約 */
	private static final String IDO_DIV_BANGO_KAIYAKU = JKKCommonConst.IDO_DIV_VALUE_00043;		//

	
	/** 異動区分：光電話・番ポ情報変更 */
	private static final String IDO_DIV_BANPO_HENKO = JKKCommonConst.IDO_DIV_VALUE_00045;		//

	
	/** 異動区分：光電話・電話番号情報変更 */
	private static final String IDO_DIV_DENWA_HENKO = JKKCommonConst.IDO_DIV_VALUE_00048;		//

	/** 異動区分：光電話・TDIS情報登録 */
	private static final String IDO_DIV_DENWA_TDIS = JKKCommonConst.IDO_DIV_VALUE_00047;		//

	// ANK-4494-00-00 ADD START
	/** 異動区分：光電話・番ポ戻し(強制利用終了) */
	private static final String IDO_DIV_DENWA_BMPP_MMODOSHU = JKKCommonConst.IDO_DIV_VALUE_00087;		//
	// ANK-4494-00-00 ADD END

	/** 宅内機器種別コード：ＶＡ */
	private static final String TAKNKIKI_SBT_CD_VA = "VA";



	/** 事務手数料：無 */
	private static final String JIMU_TESURYO_NASI = "01";		//一時金設定コード「無」

	/** 事務手数料：有 */
	private static final String JIMU_TESURYO_ARI = "02";

	/** 事務手数料：半額 */
	private static final Object JIMU_TESURYO_HANGAKU = "03";

	/** 事務手数料：指定額 */
	private static final Object JIMU_TESURYO_SHITEIGAKU = "04";


	/** 機器提供種別コード： 00 なし */
	private static final String KKTK_SBT_CD_NONE = "00";



	/** 親契約識別コード： 03 サービス契約内訳 */
	private static final String OYA_KEI_SKBT_CD_03 = "03";



	/**
	 * 更新確認前のサービスフォームBean項目構成
	 */
	private void confirmServiceFormBean()
	{

		String kktk_svc_no = "";	//配送受付に渡すための機器提供サービス契約番号
		String vaModelCd = "";		//配送受付に渡すための宅内機器形式コード

		String indStr;
		String cdDiv;
		
		//サービスフォームBean
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
//		X31SDataBeanAccess svcFormBean = super.getServiceFormBean(KKW00147SF);
		
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		//異動区分
		ido_div = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div) || IDO_DIV_BANGO_KAIYAKU.equals(ido_div)
			|| IDO_DIV_BANGO_HENKO.equals(ido_div))			//←←←2012-06-13追加　ロット１一時金整理対応
		{
			//事務手数料
			X31SDataBeanAccess jimuBean = svcFormBean.getDataBeanArray(KKW00147SFConst.JIMU_COMMISION).getDataBean(0);
			indStr = jimuBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = jimuBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);

			//一時金指定率，一時金指定額
			svcFormBean.sendMessage(KKW00147SFConst.ICJKN_SHITEI_RT, X31CWebConst.DATABEAN_CLEAR);
			if (JIMU_TESURYO_ARI.equals(cdDiv))
			{
				svcFormBean.sendMessageString(KKW00147SFConst.ICJKN_SHITEI_RT, X31CWebConst.DATABEAN_SET_VALUE, "100.0");
				svcFormBean.sendMessage(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_CLEAR);
			}
			else if (JIMU_TESURYO_HANGAKU.equals(cdDiv))
			{
				svcFormBean.sendMessageString(KKW00147SFConst.ICJKN_SHITEI_RT, X31CWebConst.DATABEAN_SET_VALUE, "50.0");
				svcFormBean.sendMessage(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_CLEAR);
			}
			else if (JIMU_TESURYO_SHITEIGAKU.equals(cdDiv))
			{
				//指定額からカンマを抜く
				String shiteigaku = svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_GET_VALUE);
				shiteigaku = shiteigaku.replaceAll(",", "");
				svcFormBean.sendMessageString(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, shiteigaku);
			}
			else
			{
				svcFormBean.sendMessage(KKW00147SFConst.JIMU_COMMISION_AMNT, X31CWebConst.DATABEAN_CLEAR);
			}
			
//↓↓↓2012-06-13削除　ロット１一時金整理対応↓↓↓
//			//一時支払料金番号
//			//2011/11/24 IT2-2011-0000271 MOD START
//			//svcFormBean.sendMessageString(KKW00147SFConst.TMP_PAY_PRC_NO, X31CWebConst.DATABEAN_SET_VALUE, "010000000010");
//			svcFormBean.sendMessageString(KKW00147SFConst.TMP_PAY_PRC_NO, X31CWebConst.DATABEAN_SET_VALUE, "010050026010");
//			//2011/11/24 IT2-2011-0000271 MOD END
//↑↑↑2012-06-13削除　ロット１一時金整理対応↑↑↑
		}

		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div) || IDO_DIV_BANGO_HENKO.equals(ido_div) || IDO_DIV_BANPO_HENKO.equals(ido_div))
		{
			//番ポ有無
			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_UM).getDataBean(0);
			indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
//			svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
			if (CD00002_ARI.equals(cdDiv))
			{
				//番ポ情報の取得
				editBampoInfo(svcFormBean);
			}
		}
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div) || IDO_DIV_DENWA_HENKO.equals(ido_div))
		{
			
			X31SDataBeanAccess bean;

			
			//発信者番号通知
//			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.HASINSHA_NO_TCH).getDataBean(0);
//			String indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
//			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
//			svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
			
			//1203
			//ＶＡ選択
			// IT1-2013-0000099 2013/01/25 start
//			String dispName;
			bean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
			indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
//			dispName = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
// 20131202 ANK-1578-00-00 START
			String selectedModelCd = "";
			if(cdDiv.split(KIKI_SEP).length>0){
				selectedModelCd = cdDiv.split(KIKI_SEP)[0];
			}
// 20131202 ANK-1578-00-00 END
			String selectedChgNo = "";
			if(cdDiv.split(KIKI_SEP).length>1){
				selectedChgNo = cdDiv.split(KIKI_SEP)[1];
			}

			//機器プルダウンリストで引っ掛けて各種情報を取得する
			X31SDataBeanAccessArray kikiPullDownList = svcFormBean.getDataBeanArray(KKW00147SFConst.KIKIPULLDOWN_LIST);
			for(int i = 0 ; i < kikiPullDownList.getCount() ; i++)
			{
				
				X31SDataBeanAccess element;
				
				//1要素取得
				element = kikiPullDownList.getDataBean(i);
				
				//型番＋変更番号が一致するか？
				if(selectedModelCd.equals(element.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_27, X31CWebConst.DATABEAN_GET_VALUE))
						&& selectedChgNo.equals(element.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_27, X31CWebConst.DATABEAN_GET_VALUE)))
				{
					
					//VA形式コードの設定
					svcFormBean.sendMessageString(
							KKW00147SFConst.VA_MODEL_CD, 
							X31CWebConst.DATABEAN_SET_VALUE, 
							element.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_27, X31CWebConst.DATABEAN_GET_VALUE));
					
					//VA製造番号の設定
					svcFormBean.sendMessageString(
							KKW00147SFConst.VA_SEIZO_NO, 
							X31CWebConst.DATABEAN_SET_VALUE, 
							element.sendMessageString(KKW00147SFConst.VA_KIKI_SEIZO_NO_27, X31CWebConst.DATABEAN_GET_VALUE));
					
					//VA機器変更番号の設定
					svcFormBean.sendMessageString(
							KKW00147SFConst.VA_KIKI_CHG_NO, 
							X31CWebConst.DATABEAN_SET_VALUE, 
							element.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO_27, X31CWebConst.DATABEAN_GET_VALUE));
					
					break;
				}
			}
			// IT1-2013-0000099 2013/01/25 end
			
			//ポート番号
			bean = svcFormBean.getDataBeanArray(KKW00147SFConst.PORT_NO).getDataBean(0);
			indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
			//機器提供種別コード
			svcFormBean.sendMessageString(KKW00147SFConst.KKTK_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, KKTK_SBT_CD_NONE);
			
			//宅内機器種別コード
			svcFormBean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, TAKNKIKI_SBT_CD_VA);
		}
		
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			//番号案内
			X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.NO_GUIDE).getDataBean(0);
			indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			svcFormBean.sendMessageString(KKW00147SFConst.NO_GUIDE_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
			//電話帳掲載
			bean = svcFormBean.getDataBeanArray(KKW00147SFConst.DNWACHO_KEISAI).getDataBean(0);
			indStr = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			svcFormBean.sendMessageString(KKW00147SFConst.DNWACHO_KEISAI_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
			//申込内容承認登録明細リスト
			X31SDataBeanAccessArray beans = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0011D020DETAILLIST);
			beans.clearArray();
			bean = beans.addDataBean();

			//申込内容承認登録明細→申込形態コード
			bean.sendMessageString(KKW00147SFConst.MSKM_FORM_CD_18, X31CWebConst.DATABEAN_SET_VALUE, "");
			//申込内容承認登録明細→申込明細種別コード
			bean.sendMessageString(KKW00147SFConst.MSKM_DTL_SBT_CD_18, X31CWebConst.DATABEAN_SET_VALUE, "");

			//配送受付の配送対象物品明細リスト
			beans = svcFormBean.getDataBeanArray(KKW00147SFConst.EDK0011D020DETAILLIST);
			beans.clearArray();
			bean = beans.addDataBean();
			
			//配送対象物品明細→機器提供サービス契約番号
			bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_19, X31CWebConst.DATABEAN_SET_VALUE, kktk_svc_no);
			//配送対象物品明細→宅内機器種別コード
			bean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_19, X31CWebConst.DATABEAN_SET_VALUE, TAKNKIKI_SBT_CD_VA);
			//配送対象物品明細→宅内機器型式コード
			bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_19, X31CWebConst.DATABEAN_SET_VALUE, vaModelCd);
			//配送対象物品明細→申込明細番号　は、サービス内で申込内容承認登録サービスＩ／Ｆ結果から設定すること
			//配送対象物品明細→料金コースコード
			bean.sendMessageString(KKW00147SFConst.PCRS_CD_19, X31CWebConst.DATABEAN_SET_VALUE, PCRS_CD_2_BANGO_COURSE);

			//通知書発行の通知対象物明細リスト
			beans = svcFormBean.getDataBeanArray(KKW00147SFConst.EDK0011D020DETAILLIST);
			beans.clearArray();
			bean = beans.addDataBean();
			
			//通知対象物明細→サービス契約番号
			bean.sendMessageString(KKW00147SFConst.SVC_KEI_NO_20, X31CWebConst.DATABEAN_SET_VALUE, 
					svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
				
			// 20121030 仮登録⇒本登録できない不具合の修正 START
//			//VA選択対象の選定
//			String vaIndex;
//			String ucwkSvcKeiUcwkNo;
//			String ucwkVaTaknkikiodelCd;
//			String ucwkVaKikiSeizoNo;
//			String kktkSvcKeiUcwkNo;
//			String kktkVaTaknkikiodelCd;
//			String kktkVaKikiSeizoNo;
//			X31SDataBeanAccess vaBean;
//			X31SDataBeanAccess ucwkBean;
//			X31SDataBeanAccessArray kktkList;
//			X31SDataBeanAccess kktkElement = null;
//			
//			//まずは選択された要素番号を取得
//			vaBean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
//			vaIndex = vaBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			//次に、内訳に対応する要素を取得
//			// IT1-2012-0001396 2012/10/20 UPD START
//			ucwkBean = null;
//			//ucwkBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191BXXXDATA).getDataBean(Integer.parseInt(vaIndex)-1);
//			if (Integer.parseInt(vaIndex) == 0){
//				ucwkBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191BXXXDATA).getDataBean(Integer.parseInt(vaIndex));
//			}else if (Integer.parseInt(vaIndex) > 0){
//				ucwkBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191BXXXDATA).getDataBean(Integer.parseInt(vaIndex)-1);
//			}
//			// IT1-2012-0001396 2012/10/20 UPD END
//			//各種内訳の値を取得
//			ucwkSvcKeiUcwkNo = ucwkBean.sendMessageString(KKW00147SFConst.RRK_SVC_KEI_UCWK_NO_08, X31CWebConst.DATABEAN_GET_VALUE);
//			ucwkVaTaknkikiodelCd = ucwkBean.sendMessageString(KKW00147SFConst.VA_TAKNKIKI_MODEL_CD_08, X31CWebConst.DATABEAN_GET_VALUE);
//			ucwkVaKikiSeizoNo = ucwkBean.sendMessageString(KKW00147SFConst.VA_KIKI_SEIZO_NO_08,X31CWebConst.DATABEAN_GET_VALUE);
//			
//			//機器提供サービス契約一覧から、選択肢に当てはまるものを選定
//			kktkList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0341B010DATA);
//			for(int i = 0 ; i < kktkList.getCount() ; i++)
//			{
//				//1要素取得
//				kktkElement = kktkList.getDataBean(i);
//				
//				//各種値の取得
//				kktkSvcKeiUcwkNo = kktkElement.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_07, X31CWebConst.DATABEAN_GET_VALUE);
//				kktkVaTaknkikiodelCd = kktkElement.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
//				kktkVaKikiSeizoNo = kktkElement.sendMessageString(KKW00147SFConst.KIKI_SEIZO_NO_07, X31CWebConst.DATABEAN_GET_VALUE);
//
//				//--ＶＡプルダウンで選択されたものに一致する機器提供レコードを特定
//				//内訳番号が同一？
//				if(ucwkSvcKeiUcwkNo.equals(kktkSvcKeiUcwkNo))
//				{
//					//VA機器形式コードが同一？
//					if(ucwkVaTaknkikiodelCd.equals(kktkVaTaknkikiodelCd))
//					{
//						//機器製造番号が同一？
//						if(ucwkVaKikiSeizoNo.equals(kktkVaKikiSeizoNo))
//						{
//							break;
//						}
//					}
//				}
//			}
//			
//			//機器提供サービス契約 宅内機器形式コードの取得
//			svcFormBean.sendMessageString(
//					KKW00147SFConst.TAKNKIKI_MODEL_CD, 
//					X31CWebConst.DATABEAN_SET_VALUE,
//					kktkElement.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE));
//
//			//機器提供サービス契約　機器提供サービス契約番号の取得
//			svcFormBean.sendMessageString(
//					KKW00147SFConst.KKTK_SVC_KEI_NO,
//					X31CWebConst.DATABEAN_SET_VALUE,
//					kktkElement.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07, X31CWebConst.DATABEAN_GET_VALUE));
//			
//			//機器提供サービス契約　更新前世代登録年月日の取得
//			svcFormBean.sendMessageString(
//					KKW00147SFConst.KKTK_BF_GENE_ADD_DTM,
//					X31CWebConst.DATABEAN_SET_VALUE,
//					kktkElement.sendMessageString(KKW00147SFConst.GENE_ADD_DTM_07, X31CWebConst.DATABEAN_GET_VALUE));
//			
//			//機器提供サービス契約　更新前最終更新年月日の取得
//			svcFormBean.sendMessageString(
//					KKW00147SFConst.KKTK_BF_LAST_UPD_DTM,
//					X31CWebConst.DATABEAN_SET_VALUE,
//					kktkElement.sendMessageString(KKW00147SFConst.LAST_UPD_DTM_07, X31CWebConst.DATABEAN_GET_VALUE));
			
			
			// 宅内機器型式コード
			//   ＶＡ選択のプルダウンで選択した宅内機器型式コードを設定
			X31SDataBeanAccess vaChoiceBean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
			String selectedIndex = vaChoiceBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			// IT1-2013-0000099 2013/01/25 start
			String selectedCdDiv = vaChoiceBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectedIndex));
// 20131202 ANK-1578-00-00 START
			String selectedTaknkikiModelCd = "";
			if(selectedCdDiv.split(KIKI_SEP).length>0){
				selectedTaknkikiModelCd = selectedCdDiv.split(KIKI_SEP)[0];
			}
// 20131202 ANK-1578-00-00 END
			String selectedKikiChgNo = "";
			if(selectedCdDiv.split(KIKI_SEP).length>1){
				selectedKikiChgNo = selectedCdDiv.split(KIKI_SEP)[1];
			}
			svcFormBean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD, X31CWebConst.DATABEAN_SET_VALUE, selectedTaknkikiModelCd);
			svcFormBean.sendMessageString(KKW00147SFConst.VA_KIKI_CHG_NO, X31CWebConst.DATABEAN_SET_VALUE, selectedKikiChgNo);
			
			// 機器提供サービス契約番号
			String kktkSvcKeiNo = "";
			String taknkikiChgNo = "";
//			X31SDataBeanAccessArray kk0191Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA);

			X31SDataBeanAccessArray kk0341Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0341B002DATA);
			for(int i = 0; i < kk0341Arr.getCount().intValue(); i++)
			{
				X31SDataBeanAccess kk0341Bean = kk0341Arr.getDataBean(i);
				taknkikiChgNo = kk0341Bean.sendMessageString(KKW00147SFConst.KIKI_CHG_NO_07, X31CWebConst.DATABEAN_GET_VALUE);
				if(selectedKikiChgNo.equals(taknkikiChgNo))
				{
					kktkSvcKeiNo = kk0341Bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07, X31CWebConst.DATABEAN_GET_VALUE);
				}
			}
			// IT1-2013-0000099 2013/01/25 end
//			if(isNull(kktkSvcKeiNo))  //機器に登録されていない     新しい機器にする場合
//			{
//				//1番号1ポートのときの機器提供サービス契約番号
//				X31SDataBeanAccess lastKk0341Bean = kk0341Arr.getDataBean(kk0341Arr.getCount().intValue() - 1);
//				String chbfKktkSvcKeiNo = lastKk0341Bean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO_07, X31CWebConst.DATABEAN_GET_VALUE);
//				svcFormBean.sendMessageString(KKW00147SFConst.CHBF_KKTK_SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, chbfKktkSvcKeiNo);
//			}  CCのほうで検索
			svcFormBean.sendMessageString(KKW00147SFConst.KKTK_SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, kktkSvcKeiNo);
			// 20121030 仮登録⇒本登録できない不具合の修正 END
			
		}
		

		if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div))
		{
			//サブ開発、違約金発生区分の構成
			String yyyy;
			String mm;
			String dd;

			//サービス終了年月日の構成
			yyyy = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_YEAR, X31CWebConst.DATABEAN_GET_VALUE);
			mm = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_MON, X31CWebConst.DATABEAN_GET_VALUE);
			dd = svcFormBean.sendMessageString(KKW00147SFConst.SVC_END_DAY,X31CWebConst.DATABEAN_GET_VALUE);
			
			svcFormBean.sendMessageString(
					KKW00147SFConst.SVC_END_YMD, 
					X31CWebConst.DATABEAN_SET_VALUE, 
					yyyy + mm + dd);
			
			//サービス課金終了年月日の構成
			yyyy = svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_YEAR, X31CWebConst.DATABEAN_GET_VALUE);
			mm = svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_MON, X31CWebConst.DATABEAN_GET_VALUE);
			dd = svcFormBean.sendMessageString(KKW00147SFConst.SVC_CHRG_END_DAY,X31CWebConst.DATABEAN_GET_VALUE);
			
			svcFormBean.sendMessageString(
					KKW00147SFConst.SVC_CHRG_END_YMD, 
					X31CWebConst.DATABEAN_SET_VALUE, 
					yyyy + mm + dd);
			
			//違約金発生区分
			X31SDataBeanAccess iyaku = svcFormBean.getDataBeanArray(KKW00147SFConst.PNLTY_HASSEI_DIV).getDataBean(0);
			indStr = iyaku.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			if(indStr != null && indStr.matches("[0-9]+"))
			{
				cdDiv = iyaku.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
				svcFormBean.sendMessageString(KKW00147SFConst.PNLTY_HASSEI_DIV_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			}
			
		}
		// ANK-3190-00-00 ADD START
		if (IDO_DIV_DENWA_HENKO.equals(ido_div))
		{
			//番ポ申込手数料
			X31SDataBeanAccess bmpBean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_MSKM_COMMISION).getDataBean(0);
			indStr = bmpBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
			cdDiv = bmpBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);

			//一時金指定額
			if (JIMU_TESURYO_SHITEIGAKU.equals(cdDiv))
			{
				//指定額からカンマを抜く
				String shiteigaku = svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_GET_VALUE);
				shiteigaku = shiteigaku.replaceAll(",", "");
				svcFormBean.sendMessageString(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_SET_VALUE, shiteigaku);
			}
			else
			{
				svcFormBean.sendMessage(KKW00147SFConst.BMP_MSKM_COMMISION_AMNT, X31CWebConst.DATABEAN_CLEAR);
			}
		}
		// ANK-3190-00-00 ADD END
		
		String unyoYmd = JCCWebCommon.getOpeDate(this, null);
		String unyoDtm = JCCWebCommon.getOpeDateTimeStamp(this, null);
		
		//運用年月日
		svcFormBean.sendMessageString(KKW00147SFConst.UNYO_YMD, X31CWebConst.DATABEAN_SET_VALUE, unyoYmd);
		//運用年月日時分秒
		svcFormBean.sendMessageString(KKW00147SFConst.UNYO_DTM, X31CWebConst.DATABEAN_SET_VALUE, unyoDtm);

		//請求契約番号
		String seiky_kei_no = "";
		X31SDataBeanAccessArray beans = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0491B030DATA);
		for (int i = 0; i < beans.getCount(); i++)
		{
			X31SDataBeanAccess bean = beans.getDataBean(i);
//			String seiky_kei_stat = bean.sendMessageString(KKW00147SFConst.SEIKY_KEI_STAT_23, X31CWebConst.DATABEAN_GET_VALUE);
//			if (JKKCommonConst.SVC_KEI_STAT_100.equals(seiky_kei_stat))
//			{
				seiky_kei_no = bean.sendMessageString(KKW00147SFConst.SEIKY_KEI_NO_23, X31CWebConst.DATABEAN_GET_VALUE);
				break;
//			}
		}
		svcFormBean.sendMessageString(KKW00147SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, seiky_kei_no);
		//親契約識別コード
		svcFormBean.sendMessageString(KKW00147SFConst.OYA_KEI_SKBT_CD, X31CWebConst.DATABEAN_SET_VALUE, OYA_KEI_SKBT_CD_03);


		//通話明細公開要否		サービス契約内訳<eo光電話>登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.TUWA_DTL_KOKAI_YH, X31CWebConst.DATABEAN_SET_VALUE, CD00003_HI);

		//通信事業者コード
		//editServiceFormBean()でやってる

		//移転トーキ希望有無	サービス契約内訳<eo光電話>登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.ITNTOKI_KIBO_UM, X31CWebConst.DATABEAN_SET_VALUE, CD00002_NASI);

		//配送区分：直送						配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.HAISO_DIV, X31CWebConst.DATABEAN_SET_VALUE, "00");
		//配送先個別指定フラグ：個別指定無し	配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.HISOS_KSITEI_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		//倉庫コード：業パラから設定			配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.SOKO_CD, X31CWebConst.DATABEAN_SET_VALUE, "");
		//棚コード：				配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.SHELF_CD, X31CWebConst.DATABEAN_SET_VALUE, "000");
		//住所未確定フラグ		配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.AD_MI_FIX_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		//出荷待機フラグ		配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.SHUKKA_TAIKI_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		//通知書添付コード		配送受付S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.TCHISHO_TEMP_CD, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		// 通知対象物明細受渡データ		通知書登録S-IF
		X31SDataBeanAccessArray ekk0561d010DetailList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0561D010DETAILLIST);
		ekk0561d010DetailList.clearArray();
		X31SDataBeanAccess ekk0561d010Detail = ekk0561d010DetailList.addDataBean();
		// サービス契約番号
		ekk0561d010Detail.sendMessageString(KKW00147SFConst.SVC_KEI_NO_20, X31CWebConst.DATABEAN_SET_VALUE, 
				svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		// 通知対象物適用開始年月日
		ekk0561d010Detail.sendMessageString(KKW00147SFConst.TCHI_TG_BPIN_TSTAYMD_20, X31CWebConst.DATABEAN_SET_VALUE, unyoYmd);
		// 通知対象物適用終了年月日
		ekk0561d010Detail.sendMessageString(KKW00147SFConst.TCHI_TG_BPIN_TENDYMD_20, X31CWebConst.DATABEAN_SET_VALUE, MAX_DATE);
		
		// 通知書内訳明細受渡データ		通知書登録S-IF
		X31SDataBeanAccessArray ekk0561d010DetailList2 = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0561D010DETAILLIST2);
		ekk0561d010DetailList2.clearArray();
//		X31SDataBeanAccess ekk0561d010Detail2 = ekk0561d010DetailList2.addDataBean();
		
		// オーダ種別コード		オーダ発行条件登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.ORDER_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, "2");
		// サービスオーダコード	オーダ発行条件登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.SVC_ORDER_CD, X31CWebConst.DATABEAN_SET_VALUE, "Z1");
		// 要求種別コード		オーダ発行条件登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.YOKYU_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, "02");
		//オーダ発行条件コード	オーダ発行条件登録S-IF
		svcFormBean.sendMessageString(KKW00147SFConst.ODR_HAKKO_JOKEN_CD, X31CWebConst.DATABEAN_SET_VALUE, "00");
		
		// 20120629 IT2-2012-0001100 START
//		//--eo光電話・番ポ変更だけ
//		if(IDO_DIV_BANPO_HENKO.equals(ido_div)){
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div) || IDO_DIV_BANGO_HENKO.equals(ido_div) || IDO_DIV_BANPO_HENKO.equals(ido_div))
		{
			// 光電話・番号追加、光電話・番号変更、光電話・番ポ情報変更の場合
		// 20120629 IT2-2012-0001100 END
		
			//サービス契約一意照会のBean取得
			X31SDataBeanAccessArray eKK0081A010DATAList;
			X31SDataBeanAccess eKK0081A010DATA;
			eKK0081A010DATAList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0081A010DATA);
			eKK0081A010DATA = eKK0081A010DATAList.getDataBean(0);
			
			//--番ポ工事登録.同時工事有無
			String svcKeiSts;
			svcKeiSts = eKK0081A010DATA.sendMessageString(KKW00147SFConst.SVC_KEI_STAT_21, X31CWebConst.DATABEAN_GET_VALUE);
			
			//ステータスが"010"受付済、"020"照査済、"030"締結済の場合は"1"「有」
			if(svcKeiSts.equals(JKKCommonConst.SVC_KEI_STAT_010) ||
					svcKeiSts.equals(JKKCommonConst.SVC_KEI_STAT_020) ||
					svcKeiSts.equals(JKKCommonConst.SVC_KEI_STAT_030)){
				
				svcFormBean.sendMessageString(
						KKW00147SFConst.DOJI_KOJI_UM, 
						X31CWebConst.DATABEAN_SET_VALUE,
						JKKCommonConst.UM_U);
	
			}else{
				
				svcFormBean.sendMessageString(
						KKW00147SFConst.DOJI_KOJI_UM, 
						X31CWebConst.DATABEAN_SET_VALUE,
						JKKCommonConst.UM_M);
	
			}
			
			// 20120720 ANK-0079-00-00 START
//			String dobsniyrnKh = svcFormBean.sendMessageString(KKW00147SFConst.DOBANITEN_KH, X31CWebConst.DATABEAN_GET_VALUE);
//			if (!isNull(dobsniyrnKh) && dobsniyrnKh.length() >= 1)
//			{
//				//--番ポ工事登録.同番移転有無
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.DOBNITEN_UM,
//						X31CWebConst.DATABEAN_SET_VALUE,
//						dobsniyrnKh.substring(0,1)
//						);
//			}
//			else
//			{
//				//--番ポ工事登録.同番移転有無
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.DOBNITEN_UM,
//						X31CWebConst.DATABEAN_SET_VALUE,
//						CD00002_NASI
//						);
//			}
			// 20120720 ANK-0079-00-00 END
			
			// 20120712 (ロット２)番ポ対応 START
			//番ポ画面Beanの取得
			// IT1-2012-0002104 復活
			X31SDataBeanAccess kkw00148Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_INPUT).getDataBean(0);
	
			//--番ポ工事登録.番ポ工事希望年月日
//			String kiboYMDH = null;
//			String kiboYear = null;
//			String kiboMonth = null;
//			String kiboDay = null;
//			
//			kiboYear = kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[18] , X31CWebConst.DATABEAN_GET_VALUE);
//			kiboMonth = kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[19] , X31CWebConst.DATABEAN_GET_VALUE);
//			kiboDay = kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[19] , X31CWebConst.DATABEAN_GET_VALUE);
//			
//			if((kiboYear != null && !"".equals(kiboYear)) &&
//				(kiboMonth != null && !"".equals(kiboMonth)) &&
//				(kiboDay != null && !"".equals(kiboDay)))
//			{
//				kiboYMDH = kiboYear
//						+  kiboMonth
//						+  kiboDay
//						+  kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[21] , X31CWebConst.DATABEAN_GET_VALUE);
//			}
//			
//			svcFormBean.sendMessageString(
//					KKW00147SFConst.BMP_KOJI_KIBO_YMDH,
//					X31CWebConst.DATABEAN_SET_VALUE,
//					kiboYMDH);
	
			
			//--番ポ工事登録.番ポ受付担当ユーザＩＤ
			svcFormBean.sendMessageString(
					KKW00147SFConst.LOGINUSER_ID, 
					X31CWebConst.DATABEAN_SET_VALUE,
					commonInfoBean.sendMessageString(CommonInfoCFConst.USER_ID, X31CWebConst.DATABEAN_GET_VALUE)
					);
			
			// IT1-2012-0002104 復活
			//--番ポ工事登録.番ポ受付拠点
			svcFormBean.sendMessageString(
					KKW00147SFConst.ITNM_TSJGS_KTN_CD,
					X31CWebConst.DATABEAN_SET_VALUE,
					kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[17] , X31CWebConst.DATABEAN_GET_VALUE));
			// 20120712 (ロット２)番ポ対応 END
		
			// 20120720 ANK-0079-00-00 START
			// 可否調査依頼Ｌ
			svcFormBean.sendMessageString(KKW00147SFConst.DOBANITEN_REQ_CTRL_CD_L,
							X31CWebConst.DATABEAN_SET_VALUE,
							getPulldownName(svcFormBean, KKW00147SFConst.DOBANITEN_REQ_CTRL_CD));
			// 可否調査結果登録Ｌ
			svcFormBean.sendMessageString(KKW00147SFConst.DOBANITEN_JDG_CD_L,
							X31CWebConst.DATABEAN_SET_VALUE,
							getPulldownName(svcFormBean, KKW00147SFConst.DOBANITEN_JDG_CD));
			// 20120720 ANK-0079-00-00 END
		}
	}


	/**
	 * 番ポ入力画面のデータを登録確認処理用に転記
	 * 
	 * @param svcFormBean
	 */
	private void editBampoInfo(X31SDataBeanAccess svcFormBean) 
	{
		//番ポ情報Bean
		X31SDataBeanAccess bmpBean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_INPUT).getDataBean(0);
		
		// 20120712 (ロット２)番ポ対応 START
//		//通信事業者コード
//		String jigyosha = bmpBean.sendMessageString(KKW00147SFConst.MSKMJI_BMP_JGS_04, X31CWebConst.DATABEAN_GET_VALUE);
//		svcFormBean.sendMessageString(KKW00147SFConst.TSJGS_CD, X31CWebConst.DATABEAN_SET_VALUE, jigyosha);
//		
//		//ＮＴＴ契約者名
//		String nm = bmpBean.sendMessageString(KKW00147SFConst.KEISHA_NM_04, X31CWebConst.DATABEAN_GET_VALUE);
//		svcFormBean.sendMessageString(KKW00147SFConst.NTT_KEISHA_NM, X31CWebConst.DATABEAN_SET_VALUE, nm);
//		nm = bmpBean.sendMessageString(KKW00147SFConst.KEISHA_NM_KANA_04, X31CWebConst.DATABEAN_GET_VALUE);
//		svcFormBean.sendMessageString(KKW00147SFConst.NTT_KSH_KANA, X31CWebConst.DATABEAN_SET_VALUE, nm);
//
//		//住所コード
//		StringBuilder ad_cd = new StringBuilder();
//		ad_cd.append(bmpBean.sendMessageString(KKW00147SFConst.AD_CD1_04, X31CWebConst.DATABEAN_GET_VALUE));
//		ad_cd.append(bmpBean.sendMessageString(KKW00147SFConst.AD_CD2_04, X31CWebConst.DATABEAN_GET_VALUE));
//		ad_cd.append(bmpBean.sendMessageString(KKW00147SFConst.AD_CD3_04, X31CWebConst.DATABEAN_GET_VALUE));
//		ad_cd.append(bmpBean.sendMessageString(KKW00147SFConst.AD_CD4_04, X31CWebConst.DATABEAN_GET_VALUE));
//		svcFormBean.sendMessageString(KKW00147SFConst.NTT_KEISHA_AD_CD, X31CWebConst.DATABEAN_SET_VALUE, ad_cd.toString());
//
//		//郵便番号
//		StringBuilder post_no = new StringBuilder();
//		post_no.append(bmpBean.sendMessageString(KKW00147SFConst.PCD_KAMI3_04, X31CWebConst.DATABEAN_GET_VALUE));
//		post_no.append(bmpBean.sendMessageString(KKW00147SFConst.PCD_SHIMO4_04, X31CWebConst.DATABEAN_GET_VALUE));
//		svcFormBean.sendMessageString(KKW00147SFConst.NTT_KEISHA_PCD, X31CWebConst.DATABEAN_SET_VALUE, post_no.toString());
//
//		//ＮＴＴ契約者住所情報
//		String[] srcKeys = {
//				KKW00147SFConst.STATE_04,
//				KKW00147SFConst.CITY_04,
//				KKW00147SFConst.OAZTSU_04,
//				KKW00147SFConst.AZCHO_04,
//				KKW00147SFConst.BNCHIGO_04,
//				KKW00147SFConst.ADRTTM_04,
//				KKW00147SFConst.ADRRM_04
//		};
//		String[] dstKeys = {
//				KKW00147SFConst.NTT_KEISHA_STATE_NM,
//				KKW00147SFConst.NTT_KEISHA_CITY_NM,
//				KKW00147SFConst.NTT_KEISHA_OAZTSU_NM,
//				KKW00147SFConst.NTT_KEISHA_AZCHO_NM,
//				KKW00147SFConst.NTT_KEISHA_BNCHIGO,
//				KKW00147SFConst.NTT_KEISHA_ADRTTM,
//				KKW00147SFConst.NTT_KEISHA_ADRRM
//		};
//		for (int i = 0; i < srcKeys.length; i++)
//		{
//			nm = bmpBean.sendMessageString(srcKeys[i], X31CWebConst.DATABEAN_GET_VALUE);
//			svcFormBean.sendMessageString(dstKeys[i], X31CWebConst.DATABEAN_SET_VALUE, nm);
//		}
		// 20120712 (ロット２)番ポ対応 END
		
		//↓↓↓2012-06-13追加　ロット１一時金整理対応↓↓↓
		//事務手数料（番ポ）
		String jmte_cd_bmp = bmpBean.sendMessageString(KKW00147SFConst.JMTE_CD_BMP_04, X31CWebConst.DATABEAN_GET_VALUE);
		svcFormBean.sendMessageString(KKW00147SFConst.JMTE_CD_BMP, X31CWebConst.DATABEAN_SET_VALUE, jmte_cd_bmp);
		
		//一時金指定率
		if (JIMU_TESURYO_HANGAKU.equals(jmte_cd_bmp))
		{
			svcFormBean.sendMessageString(KKW00147SFConst.JMTE_RT_BMP, X31CWebConst.DATABEAN_SET_VALUE, "50.0");
		}
		else if (JIMU_TESURYO_ARI.equals(jmte_cd_bmp))
		{
			svcFormBean.sendMessageString(KKW00147SFConst.JMTE_RT_BMP, X31CWebConst.DATABEAN_SET_VALUE, "100.0");
		}
		else
		{
			svcFormBean.sendMessageString(KKW00147SFConst.JMTE_RT_BMP, X31CWebConst.DATABEAN_CLEAR);
		}
		
		//事務手数料・指定額（番ポ）
		if (JIMU_TESURYO_SHITEIGAKU.equals(jmte_cd_bmp))
		{
			String jmte_amnt_bmp = bmpBean.sendMessageString(KKW00147SFConst.JMTE_AMNT_BMP_04, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.JMTE_AMNT_BMP, X31CWebConst.DATABEAN_SET_VALUE, jmte_amnt_bmp);
		}
		else
		{
			svcFormBean.sendMessageString(KKW00147SFConst.JMTE_AMNT_BMP, X31CWebConst.DATABEAN_CLEAR);
		}
		//↑↑↑2012-06-13追加　ロット１一時金整理対応↑↑↑
	}
	
	/** 申込種別コード：コース変更　（光電話・番号追加　のため）*/
	private static final String MSKM_SBT_CD_COURSE_HENKO = "00007";
	
	/** 料金コースコード：２番号コース　（光電話・番号追加　のため）*/
	private static final String PCRS_CD_2_BANGO_COURSE = JKKCommonConst.PCRS_CD_A33;
	
	/** 料金プランコード：２番号コース　（光電話・番号追加　のため）*/
	private static final String PPLAN_CD_2_BANGO_COURSE = "P" + JKKCommonConst.PCRS_CD_A33 + "01";
	
	/** 異動ステータス（進捗ステータス）＝光電話番号追加完了*/
	private static final String IDO_STAT_B301 = "B301";
	
	private static final String PCRS_CD_VA_PORT2 = JKKCommonConst.PCRS_CD_C05;
	private static final String PPLAN_CD_VA_PORT2 = "P" + JKKCommonConst.PCRS_CD_C05 + "01";
	
	/**
	 * 電話番号情報登録サービス呼出処理
	 * 
	 * @param funcCode 機能コード
	 * @return boolean 
	 */
	@SuppressWarnings("unchecked")
	private boolean doAddTelephoneNumberInfo(String funcCode)
	{
		boolean isErr = false;
		
		//サービスフォームBean
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		//ユースケースID格納用のHashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		//マッピングクラスの結果を格納するHashMap
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		//サービス呼出結果を格納するHashMap
		HashMap<String, Object> outputMap = new HashMap<String, Object>();
		
		//-- BPに渡す時用のデータ編集
		//発信者番号通知
		X31SDataBeanAccess hBBean = svcFormBean.getDataBeanArray(KKW00147SFConst.HASINSHA_NO_TCH).getDataBean(0);
		String indStr = hBBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		String hasinsyaNoTchL;
		if(indStr != null)
		{
			
			String cdDiv = hBBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStr));
			hasinsyaNoTchL = svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_GET_VALUE);
			
			svcFormBean.sendMessageString(KKW00147SFConst.HASINSHA_NO_TCH_L, X31CWebConst.DATABEAN_SET_VALUE, cdDiv);
			
		}else
		{
			//発信者番号通知
			// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 MOD START
//			String no_tch = CD00002_NASI;	//無
//			//オプションサービスコード "0180"発信者番号表示 でオプションサービス契約一覧照会を行った結果１件以上なら「有」
//			if (0 < svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0351B010DATA).getCount().intValue())
//			{
//				no_tch = CD00002_ARI;	//有
//			}
			String no_tch = getTelNoTchUm();
			// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 MOD END
			hasinsyaNoTchL = no_tch;
			// 20120502 IT2-2012-0000494 START
			selectedPulldownIndex(svcFormBean, KKW00147SFConst.HASINSHA_NO_TCH, no_tch);
			// 20120502 IT2-2012-0000494 END
		}
		
		//番ポ有無
		X31SDataBeanAccess bmpBean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_UM).getDataBean(0);
		String indStrBmp = bmpBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		String cdDivBmp;
		String bmpUmL;
		if(indStrBmp != null)
		{
			cdDivBmp = bmpBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(indStrBmp));
			bmpUmL = svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L, X31CWebConst.DATABEAN_GET_VALUE);
			svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L, X31CWebConst.DATABEAN_SET_VALUE, cdDivBmp);
		}
		else
		{
			X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
			bmpUmL = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE);
			selectedPulldownIndex(svcFormBean, KKW00147SFConst.BMP_UM, bmpUmL);
		}
		
		//ポート番号
		X31SDataBeanAccess portBean = svcFormBean.getDataBeanArray(KKW00147SFConst.PORT_NO).getDataBean(0);
		String portIndStr = portBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		String portCdDiv;
		String portNoL;
		if(portIndStr != null)
		{
			portCdDiv = portBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(portIndStr));
			portNoL = portCdDiv;
			svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L, X31CWebConst.DATABEAN_SET_VALUE, portCdDiv);
		}
		else
		{
			X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
			portNoL = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_PORT_NO_06, X31CWebConst.DATABEAN_GET_VALUE);
			
			selectedPulldownIndex(svcFormBean, KKW00147SFConst.PORT_NO, portNoL);
		}
				
		//異動区分
		ido_div = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		//異動理由コード
		X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);
		X31SDataBeanAccessArray ido_rsn_cd_list = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK1091D010DATAILLIST);
		ido_rsn_cd_list.clearArray();
		Integer maxIndex = (Integer)hktgiBean.sendMessage(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_COUNT);
		//異動理由メモ
		String ido_rsn_memo = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_MEMO_22, X31CWebConst.DATABEAN_GET_VALUE);
		for (int i = 0; i < maxIndex; i++)
		{
			X31SDataBeanAccess bean = ido_rsn_cd_list.addDataBean();
			String ido_rsn_cd = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_VALUE, i);
			bean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_24, X31CWebConst.DATABEAN_SET_VALUE, ido_rsn_cd);
			bean.sendMessageString(KKW00147SFConst.IDO_RSN_MEMO_24, X31CWebConst.DATABEAN_SET_VALUE, ido_rsn_memo);
		}

		// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 START
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		X31SDataBeanAccess subCfBean = commoninfoBean.getDataBeanArray(CommonInfoCFConst.KGGRP_CD_LIST).getDataBean(1);
		// 組織コード、組織名を取得
		String orgCd = subCfBean.sendMessageString(CommonInfoCFConst.ORG_CD_01, X31CWebConst.DATABEAN_GET_VALUE);
		String orgNm = subCfBean.sendMessageString(CommonInfoCFConst.ORG_NM_01, X31CWebConst.DATABEAN_GET_VALUE);
		// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 END

		//異動区分：00041：光電話・番号追加
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			//申込種別コード
			svcFormBean.sendMessageString(KKW00147SFConst.MSKM_SBT_CD, X31CWebConst.DATABEAN_SET_VALUE, MSKM_SBT_CD_COURSE_HENKO);
			
			//料金コースコード
			svcFormBean.sendMessageString(KKW00147SFConst.PCRS_CD, X31CWebConst.DATABEAN_SET_VALUE, PCRS_CD_2_BANGO_COURSE);
			svcFormBean.sendMessageString(KKW00147SFConst.KK0341_PCRS_CD, X31CWebConst.DATABEAN_SET_VALUE, PCRS_CD_VA_PORT2);
			//料金プランコード
			svcFormBean.sendMessageString(KKW00147SFConst.PPLAN_CD, X31CWebConst.DATABEAN_SET_VALUE, PPLAN_CD_2_BANGO_COURSE);
			svcFormBean.sendMessageString(KKW00147SFConst.KK0341_PPLAN_CD, X31CWebConst.DATABEAN_SET_VALUE, PPLAN_CD_VA_PORT2);
			
			//機器提供サービスコード←光電話用VA
			svcFormBean.sendMessageString(KKW00147SFConst.KKTK_SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, "C004");
			
			//進捗ステータス：光電話番号追加完了
			svcFormBean.sendMessageString(KKW00147SFConst.PRG_STAT, X31CWebConst.DATABEAN_SET_VALUE, IDO_STAT_B301);
			
			//サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0065);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0065OP);
			
			// 上りマッピング(サービス項目-DataBean項目マッピング)
			KKSV0065_KKSV0065OPDBMapper mapper = new KKSV0065_KKSV0065OPDBMapper();
			// 20120629 IT2-2012-0001100 START
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 START
//			inputMap = mapper.setKKSV006501CC(paramBean, inputMap, funcCode);		// 電話番号情報登録CC
			inputMap = mapper.setKKSV006501CC(paramBean, inputMap, funcCode, orgCd, orgNm);		// 電話番号情報登録CC
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 END
			
			//「電話番号情報登録＿光電話・番号追加」サービス実行
			invokeService(paramMap, inputMap, outputMap);
			// エラー情報転記処理
			isErr = getErrInfo(paramBean[0], outputMap, "KKSV006501CC");
			// 20120709 ANK-0079-00-00 END
		}
		//異動区分：00048：光電話・電話番号情報変更
		else if (IDO_DIV_DENWA_HENKO.equals(ido_div))
		{
			//サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0211);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0211OP);
			
			KKSV0211_KKSV0211OPDBMapper mapper = new KKSV0211_KKSV0211OPDBMapper();
			
			mapper.setKKSV021101SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //お客様一意照会
			mapper.setKKSV021102SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //サービス契約内訳＜eo光電話＞一意照会
			mapper.setKKSV021103SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1); //サービス契約内訳＜eo光電話＞一覧照会（サービス契約番号）
			mapper.setKKSV021104SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1); //オプションサービス契約＜電話＞一覧照会（サービス契約内訳番号）
			mapper.setKKSV021105SC(paramBean, inputMap, funcCode); //申込内容承認登録
			mapper.setKKSV021107SC(paramBean, inputMap, funcCode); //サービス契約内訳＜eo光電話＞情報変更
// IKK-2013-0001105 2013-05-15 DEL_START
//			mapper.setKKSV021108SC(paramBean, inputMap, funcCode); //サービス契約内訳＜eo光電話＞場所変更
// IKK-2013-0001105 2013-05-15 DEL_END
			mapper.setKKSV021109SC(paramBean, inputMap, funcCode); //オプションサービス契約＜電話＞登録
			mapper.setKKSV021110SC(paramBean, inputMap, funcCode); //オプションサービス契約＜電話＞照査締結
			mapper.setKKSV021111SC(paramBean, inputMap, funcCode); //オプションサービス契約＜電話＞開始
			mapper.setKKSV021118SC(paramBean, inputMap, funcCode); //オプションサービスキャンセル
			mapper.setKKSV021112SC(paramBean, inputMap, funcCode); //オプションサービス契約解約
			mapper.setKKSV021115SC(paramBean, inputMap, funcCode); //オプションサービス契約解約確定
			mapper.setKKSV021113SC(paramBean, inputMap, funcCode); //申込明細照査・後続業務依頼
			mapper.setKKSV021114SC(paramBean, inputMap, funcCode); //進捗情報登録
			mapper.setKKSV021116SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //サービス契約＜電話＞一意照会
			mapper.setKKSV021117SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //サービス契約内訳一意照会
			mapper.setWORK(paramBean, inputMap, funcCode); //作業領域
			mapper.setJKKHakkoSODCC(paramBean, inputMap, funcCode); //SODCCデータのガワだけ設定
			
			// ▼▼▼▼▼ 2012/11/08 IT1-2012-0001939 ADD START ▼▼▼▼▼
			// サービス契約＜ｅｏ光電話＞情報変更起動のため
			mapper.setKKSV021119SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); // サービス契約一意照会
			mapper.setKKSV021120SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); // サービス契約＜ｅｏ光電話＞一意照会
			mapper.setKKSV021121SC(paramBean, inputMap, funcCode); // サービス契約＜ｅｏ光電話＞情報変更
			// ▲▲▲▲▲ 2012/11/08 IT1-2012-0001939 ADD E N D ▲▲▲▲▲
			//ANK-3190-00-00 ADD START
			// OM-2017-0001122 ADD START
			//サービス契約内訳・一意照会結果
			X31SDataBeanAccess svcKeiUcwkBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0161A010DATA).getDataBean(0);
			String svc_kei_ucwk_stat = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_STAT_05, X31CWebConst.DATABEAN_GET_VALUE);
			if ( JKKCommonConst.SVC_KEI_STAT_020.equals(svc_kei_ucwk_stat) || JKKCommonConst.SVC_KEI_STAT_030.equals(svc_kei_ucwk_stat) ) 
			{
			// OM-2017-0001122 ADD END
				mapper.setKKSV021140SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1); //未取消契約一時金一覧照会
				mapper.setKKSV021141SC(paramBean, inputMap, funcCode); //契約一時金取消
				mapper.setKKSV021142SC(paramBean, inputMap, funcCode); //一時金設定論理削除
				mapper.setKKSV021143SC(paramBean, inputMap, funcCode); //一時金設定登録
				mapper.setKKSV021144SC(paramBean, inputMap, funcCode); //一時金設定変更
			// OM-2017-0001122 ADD START
			}
			// OM-2017-0001012 ADD END
			//ANK-3190-00-00 ADD END
			// OM-2013-0003595 2013/11/18 ADD START
			mapper.setKKSV021129SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //オーダ発行条件一覧照会
			mapper.setKKSV021130SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //サービス契約内訳＜eo光電話＞一意照会２
			// OM-2013-0003595 2013/11/18 ADD END
			
			// 20131202 ANK-1578-00-00 START
			mapper.setKKSV021132SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_8);//機器提供サービス契約一覧照会（サービス契約番号）
			// 20131202 ANK-1578-00-00 END
			
			// IT2-2016-0000034 ADD START
			mapper.setKKSV021139SC(paramBean, inputMap, "10");//機器提供サービス契約一覧照会（サービス契約番号）・機器交換中専用
			// IT2-2016-0000034 ADD END
			
// IKK-2013-0001105 2013-05-15 DEL_START
			// IT1-2012-0002354 2012/12/15 ADD START
//			mapper.setKKSV021122SC(paramBean, inputMap, funcCode); //サービス契約内訳＜eo光電話＞場所変更確定
			// IT1-2012-0002354 2012/12/15 ADD END
// IKK-2013-0001105 2013-05-15 DEL_END
			
			// OM-2013-0002277 電話番号情報変更時に工事案件CCの番ポ元通信事業者コードが設定されていない 2013/09/17 START
			mapper.setKKSV021199CC(paramBean, inputMap, funcCode);		// 工事案件CC
			// OM-2013-0002277 電話番号情報変更時に工事案件CCの番ポ元通信事業者コードが設定されていない 2013/09/17 END
			// OM-2013-0005308 2013/12/26 ADD START
			mapper.setKKSV021133SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);	
			// OM-2013-0005308 2013/12/26 ADD END
			// OM-2015-0000564 20151204 ADD START
			mapper.setKKSV021138SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_2); //オーダ発行条件一覧照会
			// OM-2015-0000564 20151204 ADD END
			//サービスIF呼び出し
			if(funcCode.equals(JPCModelConstant.FUNC_CD_1))
			{
				invokeService(paramMap, inputMap, outputMap);
				// OM-2015-0000564 20151204 ADD START
				// エラーメッセージを設定
				if (setErrorMessageInfo(outputMap))
				{
					isErr = true;
					return isErr;
				}
				// OM-2015-0000564 20151204 ADD END
				// IT2-2016-0000034 ADD START
				if (setEgErrorMessageInfo(outputMap))
				{
					isErr = true;
					return isErr;
				}
				// IT2-2016-0000034 ADD START
			}
			// OM-2013-0003595 2013/11/18 ADD START
			if ("1".equals(funcCode)) {
				isErr = getErrInfo(paramBean[0], outputMap, "KKSV021129SC");
			}
			// OM-2013-0003595 2013/11/18 ADD END
		}
		//異動区分：00042：光電話・番号変更
		else if (IDO_DIV_BANGO_HENKO.equals(ido_div))
		{
			//マッピングクラスの生成
			 KKSV0213_KKSV0213OPDBMapper mapper = new KKSV0213_KKSV0213OPDBMapper();
			
			//サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0213);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0213OP);
			
			//下りマッピング
			// 20120709 ANK-0079-00-00 START
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 START
//			mapper.setKKSV021301CC(paramBean, inputMap, funcCode);
			mapper.setKKSV021301CC(paramBean, inputMap, funcCode, orgCd, orgNm);
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 END
			
			//サービスIF呼び出し
			invokeService(paramMap, inputMap, outputMap);
			// エラー情報転記処理
			isErr = getErrInfo(paramBean[0], outputMap, "KKSV021301CC");
			// 20120709 ANK-0079-00-00 END
		}
		//異動区分：00043：光電話・番号解約
		else if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div))
		{
			//マッピングクラスの生成
			KKSV0195_KKSV0195OPDBMapper mapper = new KKSV0195_KKSV0195OPDBMapper();
			
			//サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0195);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0195OP);
			
			//上りマッピング
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 START
//			mapper.setKKSV019501CC147(paramBean, inputMap, funcCode);
			mapper.setKKSV019501CC147(paramBean, inputMap, funcCode, orgCd, orgNm);
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 END
			// ANK-2956-00-00 2016/10/03 ADD START
			mapper.setKKSV019506SC(paramBean, inputMap, funcCode);
			// ANK-2956-00-00 2016/10/03 ADD END
			// ANK-4494-00-00 ADD START
			mapper.setKKSV019527CC(paramBean, inputMap, funcCode);
			// ANK-4494-00-00 ADD END
			if (JPCModelConstant.FUNC_CD_1.equals(funcCode))
			{
				//サービスIF呼び出し
				invokeService(paramMap, inputMap, outputMap);
				// ANK-2956-00-00 2016/10/03 ADD START
				Map<String, Object> kksv019506sc = (Map<String, Object>)outputMap.get("KKSV019506SC");
				if (kksv019506sc != null)
				{
					// 電話番号一意照会の抽出
					ArrayList<Map<String, Object>> ezm0121a010msgList = (ArrayList<Map<String, Object>>)kksv019506sc.get("EZM0121A010CBSMsg1List");
					
					// 電話番号一意照会結果から取得
					String kojinHojin_tlnTaiCd = new String();
					if (ezm0121a010msgList != null && ezm0121a010msgList.size() > 0)
					{
						kojinHojin_tlnTaiCd = (String)ezm0121a010msgList.get(0).get("kojin_hojin_tln_tai_cd");
					}
					// 電話マスタの一意紹介結果を取得し、個人法人帯コードが「法人用」の場合エラー 
					if(JKKStrConst.CD00410_HOJIN.equals(kojinHojin_tlnTaiCd)) {
						
						// メッセージ表示部の設定を行なう
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0290_JW, new String[]{"電話番号","法人用","番号解約"});
						isErr = true;
						return isErr;
					}
				}
				// ANK-2956-00-00 2016/10/03 ADD END
				// ANK-4494-00-00 ADD START
				Map<String, Object> kksv019527cc = (Map<String, Object>)outputMap.get("KKSV019527CC");
				if (kksv019527cc != null)
				{
					String errCd = (String)kksv019527cc.get("ERR_CD");
					
					// 
					if("E10".equals(errCd)) {
						
						// メッセージ表示部の設定を行なう
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1040_JW, new String[]{"電話番号","番ポ利用停止解除済み","解約"});
						isErr = true;
						return isErr;
					}
					else if ("E11".equals(errCd))
					{
						// メッセージ表示部の設定を行なう
						JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1040_JW, new String[]{"電話番号","ENUM切替不可の状態","同時ENUM切替"});
						isErr = true;
						return isErr;
					}
				}
				// ANK-4494-00-00 ADD END
			}
			
		}
		//異動区分：00045：光電話・番ポ情報変更
		else if (IDO_DIV_BANPO_HENKO.equals(ido_div))
		{
			//マッピングクラスの生成
			KKSV0214_KKSV0214OPDBMapper mapper = new KKSV0214_KKSV0214OPDBMapper();
			
			//サービスパラメタ設定
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0214);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0214OP);
			
			//下りマッピング
			// 20120709 ANK-0079-00-00 START
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 START
//			mapper.setKKSV021401CC(paramBean, inputMap, funcCode);
			mapper.setKKSV021401CC(paramBean, inputMap, funcCode, orgCd, orgNm);
			// OM-2013-0002656 対応履歴情報に「テスト用全機能利用権限者」と登録される 2014/03/27 END

			//サービスIF呼び出し
			invokeService(paramMap, inputMap, outputMap);
			// エラー情報転記処理
			isErr = getErrInfo(paramBean[0], outputMap, "KKSV021401CC");
			// 20120709 ANK-0079-00-00 END
		}
		// 想定以外の異動区分
		else
		{
			return isErr;
		}
			
		//--BPから帰ってきたとき用のデータ編集
		//発信者番号通知
		svcFormBean.sendMessageString(
				KKW00147SFConst.HASINSHA_NO_TCH_L, 
				X31CWebConst.DATABEAN_SET_VALUE, 
				getDisplayNameFromPulldown(svcFormBean, KKW00147SFConst.HASINSHA_NO_TCH, hasinsyaNoTchL));
		
		//番ポ有無
		svcFormBean.sendMessageString(KKW00147SFConst.BMP_UM_L,
				X31CWebConst.DATABEAN_SET_VALUE, 
				getDisplayNameFromPulldown(svcFormBean,KKW00147SFConst.BMP_UM,bmpUmL));
		
		//ポート番号
		svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_L,
				X31CWebConst.DATABEAN_SET_VALUE, 
				getDisplayNameFromPulldown(svcFormBean,KKW00147SFConst.PORT_NO,portNoL));
		
		return isErr;
	}

	/**
	 * 3.4 電話番号発番ボタン押下時の処理 (action_TelnoHtb)
	 * 
	 * @return 処理結果
	 */
	public boolean actionTelnoHtb()
	{
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		
		HashMap<String, Object> hktgiInfMap = new HashMap<String, Object>();

		//** 引継情報キー（ＳＹＳＩＤ） */
		String sysid = svcFormBean.sendMessageString(KKW00147SFConst.SYSID, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiInfMap.put(KKW00201SFConst.HKTGI_KEY_SYSID, sysid);

		//** 引継情報キー（サービス契約番号） */
		String svc_kei_no = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		hktgiInfMap.put(KKW00201SFConst.HKTGI_KEY_SVC_KEI_NO, svc_kei_no);

// 住変VA 2013-04-18 EDIT_START
		//** 引継情報キー（住所コード） */
		// String adCd = svcFormBean.sendMessageString(KKW00147SFConst.AD_CD, X31CWebConst.DATABEAN_GET_VALUE);
		
		//サービス契約回線内訳
		X31SDataBeanAccess svcKeiKaisenBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0251ZXXXDATA).getDataBean(0);
		String adCd =svcKeiKaisenBean.sendMessageString(KKW00147SFConst.KAISEN_PLACE_AD_CD_13, X31CWebConst.DATABEAN_GET_VALUE); 
// 住変VA 2013-04-18 EDIT_END
		hktgiInfMap.put(KKW00201SFConst.HKTGI_KEY_AD_CD, adCd);

		//引継情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00201, hktgiInfMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00201, JKKScreenConst.SCREEN_ID_KKW00147);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00201);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00201);

		return true;
	}
	
	// ▼▼▼▼▼ 2013/02/22 OT-2013-0000205 UPD START ▼▼▼▼▼
	/**
	 * ｅｏ電話番号発番画面からの復帰処理
	 * 
	 * @return 処理結果
	 */
	public boolean actionTelnoHtbRet()
	{
		// 引継情報を取得
		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);
		String telno = (String)dataMap.get(KKW00201SFConst.HKTGI_KEY_HRADSI_TEL_NO);

		X31SDataBeanAccess svcFormBean = getServiceFormBean();

		// 電話番号の設定
		svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, telno);

		// 局番の設定
		if(!isNull(telno))
		{
			svcFormBean.sendMessageString(KKW00147SFConst.KYOKU_NO, X31CWebConst.DATABEAN_SET_VALUE, telno.substring(0, 6));
		}

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		// 遷移先画面設定
		X31SDataBeanAccess  commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,   X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00147);

		return true;
	}
	// ▲▲▲▲▲ 2013/02/22 OT-2013-0000205 UPD E N D ▲▲▲▲▲



	/** 番号ポータビリティ情報保持キー定義 */
	private static final String[] SRC_KKW00148_KEYS = new String[]{
		KKW00147SFConst.TELNO_04,						//0 番ポ入力 電話番号
		KKW00147SFConst.KEISHA_NM_KANA_04,				//1 番ポ入力 契約者名（カナ）
		KKW00147SFConst.KEISHA_NM_04,					//2 番ポ入力 契約者名
		KKW00147SFConst.PCD_KAMI3_04,					//3 番ポ入力 郵便番号（上３桁）
		KKW00147SFConst.PCD_SHIMO4_04,					//4 番ポ入力 郵便番号（下４桁）
		KKW00147SFConst.AD_CD1_04,						//5 番ポ入力 住所コード１
		KKW00147SFConst.AD_CD2_04,						//6 番ポ入力 住所コード２
		KKW00147SFConst.AD_CD3_04,						//7 番ポ入力 住所コード３
		KKW00147SFConst.AD_CD4_04,						//8 番ポ入力 住所コード４
		KKW00147SFConst.STATE_04,						//9 番ポ入力 都道府県
		KKW00147SFConst.CITY_04,						//10 番ポ入力 市区町村
		KKW00147SFConst.OAZTSU_04,						//11 番ポ入力 大字通称
		KKW00147SFConst.AZCHO_04,						//12 番ポ入力 字丁目
		KKW00147SFConst.BNCHIGO_04,						//13 番ポ入力 番地・号
		KKW00147SFConst.ADRTTM_04,						//14 番ポ入力 建物名
		KKW00147SFConst.ADRRM_04,						//15 番ポ入力 部屋番号
		KKW00147SFConst.MSKMJI_BMP_JGS_04,				//16 番ポ入力 申込時番ポ事業者
		KKW00147SFConst.MSKMJI_BMP_JGS_UKKTN_04,		//17 番ポ入力 申込時番ポ事業者受付拠点
		KKW00147SFConst.BMP_TRAN_KBN_04,				// 番ポ処理区分
		KKW00147SFConst.DOJI_KOJI_JDG_CD_04,			// 同時工事判定コード
		// ANK-4494-00-00 ADD START
		KKW00147SFConst.KOJI_JISI_HOUHOU_04,			// 番ポ入力 工事実施方法
		// ANK-4494-00-00 ADD END
		KKW00147SFConst.BMP_KOJI_KIBO_YMD_YEAR_04,		//18 番ポ入力 番ポ工事希望年月日（年）
		KKW00147SFConst.BMP_KOJI_KIBO_YMD_MON_04,		//19 番ポ入力 番ポ工事希望年月日（月）
		KKW00147SFConst.BMP_KOJI_KIBO_YMD_HI_04,		//20 番ポ入力 番ポ工事希望年月日（日）
		KKW00147SFConst.BMP_KOJI_KIBO_HM_04,			//21 番ポ入力 番ポ工事希望時刻
		KKW00147SFConst.BMP_KOJI_FIX_YMD_YEAR_04,		// 番ポ工事確定年月日（年）
		KKW00147SFConst.BMP_KOJI_FIX_YMD_MON_04,		// 番ポ工事確定年月日（月）
		KKW00147SFConst.BMP_KOJI_FIX_YMD_HI_04,			// 番ポ工事確定年月日（日）
		KKW00147SFConst.BMP_KOJI_FIX_HM_04,				//23 番ポ入力 番ポ工事確定時刻
		KKW00147SFConst.BMP_KOJI_FIN_YMD_YEAR_04,		// 番ポ工事完了年月日（年）
		KKW00147SFConst.BMP_KOJI_FIN_YMD_MON_04,		// 番ポ工事完了年月日（月）
		KKW00147SFConst.BMP_KOJI_FIN_YMD_HI_04,			// 番ポ工事完了年月日（日）
		KKW00147SFConst.BMP_KOJI_YMD_PDING_04			// 番ポ工事日保留
		, KKW00147SFConst.JMTE_CD_BMP_04				//25 事務手数料（番ポ）［一時金設定コード］
		, KKW00147SFConst.JMTE_AMNT_BMP_04				//26 事務手数料・指定額（番ポ）
// ANK-4494-00-00 ADD START
		, KKW00147SFConst.ZM0121_UPD_DTM_04				// 番ポ入力 電話番号_更新年月日時分秒
// ANK-4494-00-00 ADD START
// ANK-4494-00-00 STEP2 ADD START
		, KKW00147SFConst.SOTEI_SWITCH_TIMEZ_04			//"想定切替時間帯"
// ANK-4494-00-00 STEP2 ADD END
		// ANK-4685-00-00 ADD START
		, KKW00147SFConst.DOBANITEN_MSKM_UM_04			// 番ポ入力 同番移転申込有無
		// ANK-4685-00-00 ADD END
	};
	
	/** 番号ポータビリティ情報登録画面用項目キー定義 */
	private static final String[] TGT_KKW00148_KEYS = new String[]{
		KKW00148SFConst.TELNO_06					//"電話番号"
		, KKW00148SFConst.KEISHA_NM_KANA_06			//"契約者名（カナ）"
		, KKW00148SFConst.KEISHA_NM_06				//"契約者名"
		, KKW00148SFConst.PCD_KAMI3_06				//"郵便番号（上３桁）"
		, KKW00148SFConst.PCD_SHIMO4_06				//"郵便番号（下４桁）"
		, KKW00148SFConst.AD_CD1_06					//"住所コード１"
		, KKW00148SFConst.AD_CD2_06					//"住所コード２"
		, KKW00148SFConst.AD_CD3_06					//"住所コード３"
		, KKW00148SFConst.AD_CD4_06					//"住所コード４"
		, KKW00148SFConst.STATE_06					//"都道府県"
		, KKW00148SFConst.CITY_06					//"市区町村"
		, KKW00148SFConst.OAZTSU_06					//"大字通称"
		, KKW00148SFConst.AZCHO_06					//"字丁目"
		, KKW00148SFConst.BNCHIGO_06				//"番地・号"
		, KKW00148SFConst.ADRTTM_06					//"建物名"
		, KKW00148SFConst.ADRRM_06					//"部屋番号"
		, KKW00148SFConst.MSKMJI_BMP_JGS_06			//"申込時番ポ事業者"
		, KKW00148SFConst.MSKMJI_BMP_JGS_UKKTN_06	//"申込時番ポ事業者受付拠点"
		, KKW00148SFConst.BMP_TRAN_KBN_06			//"番ポ処理区分"
		, KKW00148SFConst.DOJI_KOJI_JDG_CD_06		//"同時工事判定コード"
// ANK-4494-00-00 ADD START
		, KKW00148SFConst.KOJI_JISI_HOUHOU_06		//"工事実施方法"
// ANK-4494-00-00 ADD END
		, KKW00148SFConst.BMP_KOJI_KIBO_YMD_YEAR_06	//"番ポ工事希望年月日（年）"
		, KKW00148SFConst.BMP_KOJI_KIBO_YMD_MON_06	//"番ポ工事希望年月日（月）"
		, KKW00148SFConst.BMP_KOJI_KIBO_YMD_HI_06	//"番ポ工事希望年月日（日）"
		, KKW00148SFConst.BMP_KOJI_KIBO_HM_06		//"番ポ工事希望時刻"
		, KKW00148SFConst.BMP_KOJI_FIX_YMD_YEAR_06	//"番ポ工事確定年月日（年）"
		, KKW00148SFConst.BMP_KOJI_FIX_YMD_MON_06	//"番ポ工事確定年月日（月）"
		, KKW00148SFConst.BMP_KOJI_FIX_YMD_HI_06	//"番ポ工事確定年月日（日）"
		, KKW00148SFConst.BMP_KOJI_FIX_HM_06		//"番ポ工事確定時刻"
		, KKW00148SFConst.BMP_KOJI_FIN_YMD_YEAR_06	//"番ポ工事完了年月日（年）"
		, KKW00148SFConst.BMP_KOJI_FIN_YMD_MON_06	//"番ポ工事完了年月日（月）"
		, KKW00148SFConst.BMP_KOJI_FIN_YMD_HI_06	//"番ポ工事完了年月日（日）"
		, KKW00148SFConst.BMP_KOJI_YMD_PDING_06		//"番ポ工事日保留"
		, KKW00148SFConst.JMTE_CD_BMP_06			// 事務手数料
		, KKW00148SFConst.JMTE_AMNT_BMP_06			// 事務手数料・指定額
// ANK-4494-00-00 ADD START
		, KKW00148SFConst.ZM0121_UPD_DTM_06			//"電話番号_更新年月日時分秒"
// ANK-4494-00-00 ADD END
// ANK-4494-00-00 STEP2 ADD START
		, KKW00148SFConst.SOTEI_SWITCH_TIMEZ_06		//"想定切替時間帯"
// ANK-4494-00-00 STEP2 ADD END
		// ANK-4685-00-00 ADD START
		, KKW00148SFConst.USEPLACE_CHG_UM_06		//"同番移転申込有無"
		// ANK-4685-00-00 ADD END
	};

	// 20120719 ANK-0079-00-00 START
	/** 同番移転情報保持キー定義 */
	private static final String[] SRC_KKW04213_KEYS = new String[]{
		// 20121113 IT1-2012-0001995 ADD START
		KKW00147SFConst.DOBANITEN_NO_29,
		KKW00147SFConst.GENE_ADD_DTM_29,
		KKW00147SFConst.UPD_DTM_29,
		// 20121113 IT1-2012-0001995 ADD END
		KKW00147SFConst.TELNO_29,
		KKW00147SFConst.KSH_NM_KANA_29,
		KKW00147SFConst.KSH_NM_29,
		KKW00147SFConst.MAN_INPUT_29,
		KKW00147SFConst.PCD1_29,
		KKW00147SFConst.PCD2_29,
		KKW00147SFConst.AD_CD_29,
		KKW00147SFConst.STATE_29,
		KKW00147SFConst.CITY_29,
		KKW00147SFConst.OAZTSU_29,
		KKW00147SFConst.AZCHO_29,
		KKW00147SFConst.BNCHIGO_29,
		KKW00147SFConst.ADRTTM_29,
		KKW00147SFConst.ADRRM_29,
		KKW00147SFConst.TORIKESHI_FLG_29,
		KKW00147SFConst.TESURYO_UMU_DIV_29,
		KKW00147SFConst.TESURYO_UMU_DIV_NM_29,
		KKW00147SFConst.TESURYO_29,
		KKW00147SFConst.KIJI_RAN_29
	};
	
	/** 同番移転情報登録画面用項目キー定義 */
	private static final String[] TGT_KKW04213_KEYS = new String[]{
		// 20121113 IT1-2012-0001995 ADD START
		KKW04213SFConst.DOBANITEN_NO_05,
		KKW04213SFConst.DOBAN_GENE_ADD_DTM_05,
		KKW04213SFConst.DOBAN_UPD_DTM_05,
		// 20121113 IT1-2012-0001995 ADD END
		KKW04213SFConst.TELNO_05,
		KKW04213SFConst.KSH_NM_KANA_05,
		KKW04213SFConst.KSH_NM_05,
		KKW04213SFConst.MAN_INPUT_05,
		KKW04213SFConst.PCD1_05,
		KKW04213SFConst.PCD2_05,
		KKW04213SFConst.AD_CD_05,
		KKW04213SFConst.STATE_05,
		KKW04213SFConst.CITY_05,
		KKW04213SFConst.OAZTSU_05,
		KKW04213SFConst.AZCHO_05,
		KKW04213SFConst.BNCHIGO_05,
		KKW04213SFConst.ADRTTM_05,
		KKW04213SFConst.ADRRM_05,
		KKW04213SFConst.TORIKESHI_FLG_05,
		KKW04213SFConst.TESURYO_UMU_DIV_05,
		KKW04213SFConst.TESURYO_UMU_DIV_NM_05,
		KKW04213SFConst.TESURYO_05,
		KKW04213SFConst.KIJI_RAN_05
	};
	// 20120719 ANK-0079-00-00 END
	
	/**
	 * 宅内機器種別コード：50 光電話用VA
	 * @since 2012-06-18
	 */
	private static final String CD01262_VA = "50";


	/**
	 * 3.5 番ポ情報入力ボタン押下時の処理 (action_Bmp)
	 * 
	 * @return 処理結果
	 */
	public boolean actionBmp()
	{
		return forward2BangoPortabilityGamen(JKKScreenConst.SCREEN_ID_KKW00147);
	}
	
	
	/**
	 * 3.6 同番移転入力ボタン押下時の処理 (actionDobaniten2)
	 * 
	 * @return 処理結果
	 */
	public boolean actionDobaniten2()
	{
		return forward2DoubanItenGamen(JKKScreenConst.SCREEN_ID_KKW00151);
	}
	
	/**
	 * 移転トーキボタン押下時ハンドラ
	 * @return
	 */
	public boolean actionItnToki()
	{
	
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		HashMap<String, Object> hktgiInfMap = new HashMap<String, Object>();
		ArrayList<HashMap<String, Object>> arr = new ArrayList<HashMap<String,Object>>();
		
		//引継情報の構築
		//SYSID
		hktgiInfMap.put(
				KKW00147SFConst.SYSID_22, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SYSID, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		//サービス契約番号
		hktgiInfMap.put(
				KKW00147SFConst.SVC_KEI_NO_22, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SVC_KEI_NO, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		//サービス契約内訳番号
		hktgiInfMap.put(
				KKW00147SFConst.SVC_KEI_UCWK_NO_22, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SVC_KEI_UCWK_NO, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		//異動区分
		hktgiInfMap.put(
				KKW00147SFConst.IDO_DIV_22, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.IDO_DIV, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		arr.add(hktgiInfMap);
		hktgiInfMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, arr);

		//引継情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW05601, hktgiInfMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW05601, JKKScreenConst.SCREEN_ID_KKW00147);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW05601);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW05601);
		
		return true;
		
	}
	
	/**
	 * 
	 * @param motoScreenId
	 * @return boolean
	 */
	@SuppressWarnings("unchecked")
	private boolean forward2BangoPortabilityGamen(String motoScreenId)
	{
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
//		X31SDataBeanAccess svcFormBean = this.getServiceFormBean(KKW00147SF);
		
//		HashMap<String, Object> hktgiInfMap = getHktgiDataMap(svcFormBean, JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, hktgiKeys);
		// 20120420 榮川 mod start
		// 電話番号情報登録確認画面からの遷移時に番号追加、番号変更で編集モードにならないようにする。
//		HashMap<String, Object> hktgiInfMap = makeHktgiDataMap(svcFormBean);
		HashMap<String, Object> hktgiInfMap;
		if (JKKScreenConst.SCREEN_ID_KKW00151.equals(motoScreenId)) {
			hktgiInfMap = makeKkninHktgiDataMap(svcFormBean);
		} else {
			hktgiInfMap = makeHktgiDataMap(svcFormBean);
		}
		// 20120420 榮川 mod end

		//** 引継情報キー（番号ポータビリティ情報登録DataBean） */
		HashMap<String, Object> outMap = new HashMap<String, Object>();
		X31SDataBeanAccess kkw00148Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_INPUT).getDataBean(0);

		for (int i = 0; i < TGT_KKW00148_KEYS.length; i++)
		{
			String srcVal = kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[i], X31CWebConst.DATABEAN_GET_VALUE);
			outMap.put(TGT_KKW00148_KEYS[i], srcVal);
		}
		// 電話番号は画面上のものを取得
		String telno = svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_GET_VALUE);
		outMap.put(TGT_KKW00148_KEYS[0], telno);

		//番ポ入力 例外
		Boolean exptn = kkw00148Bean.sendMessageBoolean(KKW00147SFConst.EXPTN_04, X31CWebConst.DATABEAN_GET_VALUE);
		outMap.put(KKW00148SFConst.EXPTN_06, exptn);

		//サービス契約内訳番号
		String ucwkNo = "";
		String idoDiv = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 番号変更の場合には内訳は設定しない（これから新内訳作成を行う為）
		if (!IDO_DIV_BANGO_HENKO.equals(idoDiv))
		{
			ucwkNo = svcFormBean.sendMessageString(
					KKW00147SFConst.SVC_KEI_UCWK_NO, 
					X31CWebConst.DATABEAN_GET_VALUE);
		}
		outMap.put(KKW00147SFConst.SVC_KEI_UCWK_NO, ucwkNo);
		
		String adCd = svcFormBean.sendMessageString(
				KKW00147SFConst.AD_CD, 
				X31CWebConst.DATABEAN_GET_VALUE);
		
		outMap.put(KKW00148SFConst.EMG_AD_CD_06, adCd);
		
		ArrayList<HashMap<String, Object>> arr = (ArrayList<HashMap<String, Object>>)hktgiInfMap.remove(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		HashMap<String, Object> dataMap = arr.remove(0);
		dataMap.putAll(outMap);
		arr.add(dataMap);
		hktgiInfMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, arr);

		//引継情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00148, hktgiInfMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00148, motoScreenId);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00148);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00148);
				
		return true;
	}

	/**
	 * 
	 * @param motoScreenId
	 * @return boolean
	 */
	private boolean forward2DoubanItenGamen(String motoScreenId)
	{
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		HashMap<String, Object> hktgiInfMap = new HashMap<String, Object>();
		ArrayList<HashMap<String, Object>> arr = new ArrayList<HashMap<String,Object>>();

//		//引継情報の構築
//		//SYSID
//		hktgiInfMap.put(
//				KKW00147SFConst.SYSID, 
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.SYSID, 
//						X31CWebConst.DATABEAN_GET_VALUE));
//		
//		//サービス契約番号
//		hktgiInfMap.put(
//				KKW00147SFConst.SVC_KEI_NO, 
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.SVC_KEI_NO, 
//						X31CWebConst.DATABEAN_GET_VALUE));
//		
//		//サービス契約内訳番号
//		hktgiInfMap.put(
//				KKW00147SFConst.SVC_KEI_UCWK_NO, 
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.SVC_KEI_UCWK_NO, 
//						X31CWebConst.DATABEAN_GET_VALUE));
//		
//		//サービス契約回線内訳番号
//		hktgiInfMap.put(
//				KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, 
//				svcFormBean.sendMessageString(
//						KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, 
//						X31CWebConst.DATABEAN_GET_VALUE));
		
		// 20120719 ANK-0079-00-00 START
		X31SDataBeanAccess kkw04213Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.DOBANITEN_INPUT).getDataBean(0);
		for (int i = 0; i < SRC_KKW04213_KEYS.length; i++)
		{
			if (KKW00147SFConst.MAN_INPUT_29.equals(SRC_KKW04213_KEYS[i]) || KKW00147SFConst.TORIKESHI_FLG_29.equals(SRC_KKW04213_KEYS[i]))
			{
				hktgiInfMap.put(TGT_KKW04213_KEYS[i], kkw04213Bean.sendMessageBoolean(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_GET_VALUE));
			}
			else
			{
				hktgiInfMap.put(TGT_KKW04213_KEYS[i], kkw04213Bean.sendMessageString(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_GET_VALUE));
			}
		}
		// 20120719 ANK-0079-00-00 END
		
		arr.add(hktgiInfMap);
		hktgiInfMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, arr);
		
		//引継情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW04213, hktgiInfMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW04213, motoScreenId);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW04213);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW04213);

		return true;
	}

	// ▼▼▼▼▼ 2013/02/22 OT-2013-0000205 UPD START ▼▼▼▼▼
	/**
	 * 番号ポータビリティ情報登録画面からの復帰処理
	 * 
	 * @return 処理結果
	 */
	@SuppressWarnings("unchecked")
	public boolean actionBmpRet()
	{
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		X31SDataBeanAccess kkw00148Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_INPUT).getDataBean(0);

		// 引継情報を取得
		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);
		HashMap<String, Object> hktgiInfMap = ((ArrayList<HashMap<String, Object>>)dataMap.get(KKW00147SFConst.CUST_KEI_HKTGI_LIST)).get(0);

		for (int i = 0; i < TGT_KKW00148_KEYS.length; i++)
		{
			kkw00148Bean.sendMessageString(SRC_KKW00148_KEYS[i], X31CWebConst.DATABEAN_SET_VALUE, (String)hktgiInfMap.get(TGT_KKW00148_KEYS[i]));
		}

		// 番ポ入力 例外
		Boolean exptn = (Boolean)hktgiInfMap.get(KKW00148SFConst.EXPTN_06);
		kkw00148Bean.sendMessageBoolean(KKW00147SFConst.EXPTN_04, X31CWebConst.DATABEAN_SET_VALUE, exptn);

		// 電話番号取得
		String telno = kkw00148Bean.sendMessageString(KKW00147SFConst.TELNO_04, X31CWebConst.DATABEAN_GET_VALUE);

		// 検索条件の設定
		svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, telno);

		// サービス呼出　KKSV0076ＮＲＮ番号取得
		executeServiceKKSV0076(svcFormBean);

		// ＮＲＮ番号、通信事業者コードの更新
		editNrn(svcFormBean, CD00002_ARI);

		// ST3-2013-0000040 2013/03/01 ADD start
		String waningFlg = (String)hktgiInfMap.get(KKW00148SFConst.WANING_FLG_06);
		
		if ("1".equals(waningFlg))
		{
			hktgiInfMap.put(KKW00148SFConst.WANING_FLG_06,"");
			
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD290__Q, new String[]{"NTT契約者住所"});	
		}
		else if ("2".equals(waningFlg))
		{
			hktgiInfMap.put(KKW00148SFConst.WANING_FLG_06,"");
			
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD290__Q, new String[]{"緊急通報用住所"});	
		}
		// ST3-2013-0000040 2013/03/01 ADD end
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		// 画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,   X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00147);
		
		return true;
	}
	// ▲▲▲▲▲ 2013/02/22 OT-2013-0000205 UPD E N D ▲▲▲▲▲

	/**
	 * 3.6 戻るボタン押下時の処理 (action_Back)
	 * 
	 * @return 処理結果
	 */
	public boolean actionBack()
	{
//		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
//		戻り先画面IDを取得
//		String backScreenId = svcFormBean.sendMessageString(KKW00147SFConst.BACK_SCREEN_ID, X31CWebConst.DATABEAN_GET_VALUE);
		String backScreenId = JCCWebCommon.getScreenId(this);
		
		//↓↓↓2012-06-16追加、戻り先が電話番号情報登録確認画面の場合は異動区分に従い補正する↓↓↓
		if (JKKScreenConst.SCREEN_ID_KKW00151.equals(backScreenId))
		{
			if (JKKCommonConst.IDO_DIV_VALUE_00041.equals(ido_div))
			{
				//↓↓↓2012-10-24変更 戻るフラグがONの場合、戻り先を電話番号登録受付データ一覧画面に設定↓↓↓
				
				boolean return_flg = svcFormBean.sendMessageBoolean(KKW00147SFConst.RETURN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
					
				if(return_flg){
					//戻り先を電話番号登録受付データ一覧画面に補正
					backScreenId = JKKScreenConst.SCREEN_ID_KKW15601;					
				}else{
					//戻り先を異動区分選択画面に補正
					backScreenId = JKKScreenConst.SCREEN_ID_KKW00145;
				}				
				//↑↑↑2012-10-24変更 戻るフラグがONの場合、戻り先を電話番号登録受付データ一覧画面に設定↑↑↑
			}
			else
			{
				//戻り先をサービス契約更新＜eo光電話＞画面に補正
				backScreenId = JKKScreenConst.SCREEN_ID_KKW00130;
			}
		}
		//↑↑↑2012-06-16追加↑↑↑

		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		
		//遷移先の指定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, backScreenId);

		return true;
	}

	// 20131202 ANK-1578-00-00 START
	/**
	 * 機器選択プルダウン変更時処理
	 * 
	 * @return 処理結果
	 */
	public boolean actionKikiChange()
	{
		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = getServiceFormBean();

		// 選択された機器の機器型式コードを取得
		X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.VA_CHOICE).getDataBean(0);
		String index = bean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(index));
		String[] chksplit = cdDiv.split(KIKI_SEP);
		String kikiModelCd = "";
		if(chksplit != null && chksplit.length > 0)
		{
			kikiModelCd = cdDiv.split(KIKI_SEP)[0];
		}
		
		// ポート番号プルダウン非活性フラグ
		String portNoDisabledFlg = "0";

		// 多機能ルータが選択されている場合
		if (isTknrt(svcFormBean,kikiModelCd))
		{
			// ポート番号プルダウンは非活性
			portNoDisabledFlg = "1";

			// 電話番号順番に応じたポート番号を設定する
			String idoDiv = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
			// 光電話・番号追加の場合
			if (IDO_DIV_BANGO_TSUIKA.equals(idoDiv))
			{
				// ANK-2953-00-00 MOD START
				//// ポート番号は「2」固定
				//// ポート番号プルダウンのインデックスを設定
				//selectedPulldownIndex(svcFormBean, KKW00147SFConst.PORT_NO, "2");
				// ポート番号プルダウンを活性で設定
				portNoDisabledFlg = "0";
				// ANK-2953-00-00 MOD END
			}
			// 光電話・電話番号情報変更の場合
			else
			{
				// ANK-2953-00-00 DEL START
				//String portNo = "1";
				//// 緊急通報情報一覧照会明細
				//X31SDataBeanAccessArray emgList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191B006DETAILLIST);
				//String svcKeiUwkNo = svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO, X31CWebConst.DATABEAN_GET_VALUE);
				//for(int i = 0; i < emgList.getCount(); i++)
				//{
				//	X31SDataBeanAccess emgBean = emgList.getDataBean(i);
				//	String tmpSvcKeiUwkNo = emgBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_28, X31CWebConst.DATABEAN_GET_VALUE);
				//	if (svcKeiUwkNo.equals(tmpSvcKeiUwkNo))
				//	{
				//		String telnoJun = emgBean.sendMessageString(KKW00147SFConst.TELNO_JUN_28, X31CWebConst.DATABEAN_GET_VALUE);
				//		// 電話番号順番が「2」の場合
				//		if ("2".equals(telnoJun))
				//		{
				//			portNo = "2";
				//		}
				//		// ポート番号プルダウンのインデックスを設定
				//		selectedPulldownIndex(svcFormBean, KKW00147SFConst.PORT_NO, portNo);
				//		break;
				//	}
				//}
				// ANK-2953-00-00 DEL END
				// IT1-2017-0000006 ADD START
				X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
				String portNo = svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.VA_PORT_NO_06, X31CWebConst.DATABEAN_GET_VALUE);
				
				if (JKKStringUtil.isNullBlank(portNo))
				{
					portNo = "1";
				}
				// ポート番号プルダウンのインデックスを設定
				selectedPulldownIndex(svcFormBean, KKW00147SFConst.PORT_NO, portNo);
				// IT1-2017-0000006 ADD END
			}
		}

		// ポート番号プルダウン非活性フラグを設定
		svcFormBean.sendMessageString(KKW00147SFConst.PORT_NO_DISABLED_FLG, X31CWebConst.DATABEAN_SET_VALUE, portNoDisabledFlg);

		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// 遷移先の指定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);

		return true;
	}

	/**
	 * 機器型式コードから多機能ルータどうかを判定して返します。
	 * <br>
	 * @param kikiModelCd 機器型式コード
	 * @return 多機能ルータの場合はtrue、それ以外はfalse
	 */
	private boolean isTknrt(X31SDataBeanAccess svcFormBean, String kikiModelCd)
	{
		
		// 多機能出荷前の場合、空
		if (kikiModelCd == null || "".equals(kikiModelCd))
		{
			return true;
		}
		//機器提供サービス契約・一覧照会結果
		X31SDataBeanAccessArray kk0341Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0341B002DATA);

		//機器提供サービス契約より宅内機器種別コードが"VA"のものを抽出する
		//kikiModelCd : 宅内機器形式コード

		for(int i = 0; i < kk0341Arr.getCount(); i++)
		{
			X31SDataBeanAccess bean = kk0341Arr.getDataBean(i);
			String kikiModelCd_2 = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
			String kikiSvcCd = bean.sendMessageString(KKW00147SFConst.KKTK_SVC_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
			// ANK-4315-00-00 MOD START
//			if (kikiModelCd.equals(kikiModelCd_2) && "C024".equals(kikiSvcCd))
			if (kikiModelCd.equals(kikiModelCd_2) && ("C024".equals(kikiSvcCd) || "C025".equals(kikiSvcCd)))
			// ANK-4315-00-00 MOD END
			{
				return true;
			}
		}

//		//宅内機器型式一覧照会
//		X31SDataBeanAccessArray list1 = svcFormBean.getDataBeanArray(KKW00147SFConst.EXX0000ZXXXDATA);
//		
//		int in = list1.getCount();
//		for (int i = 0; i < in; i++)
//		{
//			X31SDataBeanAccess subbean = list1.getDataBean(i);
//
//			String kikiModelCd_2 = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
//			String taknkikiSbtCd = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
//			if (kikiModelCd.equals(kikiModelCd_2) && "R0".equals(taknkikiSbtCd))
//			{
//				return true;
//			}
//		}

		return false;
		
	}
	// 20131202 ANK-1578-00-00 END
	
	/**
	 * プルダウンの編集
	 * 
	 * @param svcFormBean
	 * @param srcKeyCd
	 * @param tgtKeyCd
	 * @param initVal
	 */
	private void configPulldown(X31SDataBeanAccess svcFormBean, String srcKeyCd, String tgtKeyCd, String initVal)
	{
		int ind = 0;

		X31SDataBeanAccessArray cdArr = svcFormBean.getDataBeanArray(srcKeyCd);

		X31SDataBeanAccess tgtBean = svcFormBean.getDataBeanArray(tgtKeyCd).getDataBean(0);
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_CLEAR);
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_CLEAR);
		for (int i = 0; i < cdArr.getCount().intValue(); i++)
		{
			X31SDataBeanAccess bean = cdArr.getDataBean(i);
			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_14, X31CWebConst.DATABEAN_GET_VALUE);
			String cdNam = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_14, X31CWebConst.DATABEAN_GET_VALUE);
			if (initVal.equals(cdDiv))
			{
				ind = i;		//選択値のインデックスを更新
			}
			//コードリストに追加
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, cdDiv);
			//名称リストに追加
			tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, cdDiv + CD_SEP + cdNam);
		}

		//インデックス設定
		tgtBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(ind));
	}

	/**
	 * プルダウンの編集
	 * 
	 * @param svcFormBean
	 * @param tgtKeyCd
	 */
	private void configClearPulldown(X31SDataBeanAccess svcFormBean, String tgtKeyCd)
	{
		int ind = 0;

		X31SDataBeanAccess tgtBean = svcFormBean.getDataBeanArray(tgtKeyCd).getDataBean(0);

		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01,    X31CWebConst.DATABEAN_CLEAR);
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_CLEAR);

		// コードリストに追加
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01,    X31CWebConst.DATABEAN_ADD_VALUE, "");
		// 名称リストに追加
		tgtBean.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01, X31CWebConst.DATABEAN_ADD_VALUE, "");

		// インデックス設定
		tgtBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(ind));
	}

	
	

	// 20120925 DEL START 
//	/**
//	 * コード区分名称一覧照会明細よりコード区分名称の ArrayList を編集
//	 * 
//	 * @param svcFormBean
//	 * @param srcKeyCd
//	 * @return コード区分名称のリスト
//	 */
//	private HashMap<String, String> editCodeNameArrayList(X31SDataBeanAccess svcFormBean, String srcKeyCd)
//	{
//		HashMap<String, String> rs = new HashMap<String, String>();
//		
//		X31SDataBeanAccessArray cdArr = svcFormBean.getDataBeanArray(srcKeyCd);
//		for (int i = 0; i < cdArr.getCount().intValue(); i++)
//		{
//			X31SDataBeanAccess bean = cdArr.getDataBean(i);
//			String cdDiv = bean.sendMessageString(KKW00147SFConst.CD_DIV_14, X31CWebConst.DATABEAN_GET_VALUE);
//			String cdNam = bean.sendMessageString(KKW00147SFConst.CD_DIV_NM_14, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			rs.put(cdDiv, cdDiv + CD_SEP + cdNam);
//		}
//
//		return rs;
//	}
	// 20120925  DEL END

	


	/**
	 * KKW00151電話番号情報登録確認<br/>
	 * 3.1 確定ボタン押下時の処理 (action_Fix)<br/>
	 * 
	 * @return 処理結果
	 */
	public boolean actionFix() throws Exception
	{
		
		//更新確認処理前のサービスフォームBean構成
		confirmServiceFormBean();

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		try
		{
			//更新処理呼出
			// 20120810 ANK-0079-00-00 START
			//rs = doAddTelephoneNumberInfo(JPCModelConstant.FUNC_CD_1);
			if (doAddTelephoneNumberInfo(JPCModelConstant.FUNC_CD_1))
			{
				// エラーが発生した場合
				return true;
			}
			// 20120810 ANK-0079-00-00 END
		}
		catch (Exception e) 
		{
			//例外はそのままＦＷに伝達
			throw e;
		}
		finally
		{
			//何があっても電話番号情報登録確認画面を表示するためのサービスフォームBean編集
			reeditServiceFormBean();
		}

		// View Logic側でのエラーチェック
		if (IDO_DIV_BANGO_KAIYAKU.equals(ido_div))			//異動区分：解約
		{
			X31SDataBeanAccess svcFormBean = getServiceFormBean();
			if (getTelKeiCount(svcFormBean) == 2 && isTowPortVA(svcFormBean))
			{
				// VAポートのメッセージを追加する
				JCCWebCommon.setMessageInfo(this, "EKBA420--I");
			}
		}
		//遷移先情報設定
		JCCWebCommon.setScreenId(this, SCREEN_ID_KKW00152, SCREEN_ID_KKW00151);

		//遷移先の指定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, SCREEN_ID_KKW00152);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, SCREEN_NM_KKW00152);

		//更新完了メッセージを表示
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB4390__I, new String[]{"電話番号情報の登録"});

		return true;
	}


// 2012/10/24 IT1-2012-0001138 ADD START
	/**
	 * 3.5 ＴＤＩＳ情報ボタン押下（actionOpenTDIS）
	 * 
	 * @return
	 */
	public boolean actionOpenTDIS()
	{
		String nextScreenId = JKKScreenConst.SCREEN_ID_KKW00834;

		HashMap<String, Object> xMap = configureParams4SubScreen();

		// 遷移先から戻る際に必要な情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00147, xMap);

		//遷移先情報設定
		JCCWebCommon.setScreenInfo(this, nextScreenId, xMap);
		
		JCCWebCommon.setScreenId(this, nextScreenId, JKKScreenConst.SCREEN_ID_KKW00147);

		//遷移先の指定
		super.getCommonInfoBean().sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, 
				X31CWebConst.DATABEAN_SET_VALUE, nextScreenId);
		super.getCommonInfoBean().sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, 
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00834);

		return true;
	}

	/**
	 * サブ画面引継ぎ用ハッシュマップを編成します
	 * 
	 * @return 引継ぎ情報用ハッシュマップ
	 */
	private HashMap<String, Object> configureParams4SubScreen()
	{
		// 引継情報MAP作成
		HashMap<String, Object> dataMap     = new HashMap<String, Object>();

		// 引継電話番号登録受付データ選択情報MAP作成
		X33VDataTypeList transferInfo       = new X33VDataTypeList();
		HashMap<String, Object> transferMap = new HashMap<String, Object>();

		//引継ぎデータ設定
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);

		//電話番号 ← 電話番号履歴＿選択
		String telno_rrk_choice = svcFormBean.sendMessageString(KKW00147SFConst.TELNO_RRK_CHOICE, X31CWebConst.DATABEAN_GET_VALUE);
		int pos = Integer.parseInt(telno_rrk_choice);
		X31SDataBeanAccess bean = svcFormBean.getDataBeanArray(KKW00147SFConst.TELNO_RRK).getDataBean(pos);

		// SYSID
		transferMap.put("ＳＹＳＩＤ",  hktgiBean.sendMessageString(KKW00147SFConst.SYSID_22,   X31CWebConst.DATABEAN_GET_VALUE));
		// 電話番号
		transferMap.put("電話番号",     bean.sendMessageString(KKW00147SFConst.RIREKI_TELNO_02, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号
		transferMap.put("サービス契約番号",  hktgiBean.sendMessageString(KKW00147SFConst.SVC_KEI_NO_22, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約内訳番号
		transferMap.put("サービス契約内訳番号", hktgiBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_22, X31CWebConst.DATABEAN_GET_VALUE));
		// OM-2014-0001464 番号変更後に変更前電話のTDIS情報登録を行うと利用中の電話番号が変更される 2014/04/14 START
		// 電話番号履歴で選択された電話のサービス契約内訳番号を取得する
		String selTelno = bean.sendMessageString(KKW00147SFConst.RIREKI_TELNO_02, X31CWebConst.DATABEAN_GET_VALUE);
		String selSvcKeiUcwkNo = "";
		// サービス契約内訳＜eo光電話＞一覧照会（サービス契約番号）
		X31SDataBeanAccessArray svcKeiUcwkList = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191B001DATA);
		for (int i = 0; null != svcKeiUcwkList && i < svcKeiUcwkList.getCount(); i++)
		{
			X31SDataBeanAccess svcKeiUcwkBean = svcKeiUcwkList.getDataBean(i);
			// サービス契約内訳＜eo光電話＞一覧照会（サービス契約番号）．電話番号
			String telno = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.TELNO_30, X31CWebConst.DATABEAN_GET_VALUE);
			// 電話番号が一致する場合
			if (null != telno && telno.equals(selTelno))
			{
				selSvcKeiUcwkNo = svcKeiUcwkBean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_30, X31CWebConst.DATABEAN_GET_VALUE);
				break;
			}
		}
		// サービス契約内訳番号（電話帳掲載申込画面表示用）
		transferMap.put(JKKCommonConst.HKTGI_SVC_KEI_UCWK_NO_KKW00834, selSvcKeiUcwkNo);
		// OM-2014-0001464 番号変更後に変更前電話のTDIS情報登録を行うと利用中の電話番号が変更される 2014/04/14 END
		// 異動区分
		transferMap.put("異動区分", hktgiBean.sendMessageString(KKW00147SFConst.IDO_DIV_22, X31CWebConst.DATABEAN_GET_VALUE));

		// IT1-2012-0001908 異動理由コードが受け渡せていない ADD START
		// 可変項目の場合(String[]のみ対応)	
		int length = (Integer)hktgiBean.sendMessage(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_COUNT);
		String[] obj = new String[length];
		for (int k = 0 ; k < length ; k++)
		{
			obj[k] = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_VALUE, k);
		}
		// 異動理由コード
		transferMap.put("異動理由コード", obj);
		
		// IT1-2012-0001908 異動理由コードが受け渡せていない ADD END
		// 引継電話番号情報登録の格納
		transferInfo.add(transferMap);
		dataMap.put("顧客契約引継リスト", transferInfo);
		
		return dataMap;
	}

	/**
	 * 照会モード、ＴＤＩＳ情報ボタン押下処理
	 * 
	 * @return
	 */
	public boolean actionOpenTDISRef()
	{
		return actionOpenTDIS();
	}

// 2012/10/24 IT1-2012-0001138 ADD END

	/**
	 * KKW04213 同番移転入力画面への遷移
	 */
	public boolean actionDobaniten(){
		
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		HashMap<String, Object> hktgiInfMap = new HashMap<String, Object>();
		ArrayList<HashMap<String, Object>> arr = new ArrayList<HashMap<String,Object>>();
		
		//引継情報の構築
		//SYSID
		hktgiInfMap.put(
				KKW00147SFConst.SYSID, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SYSID, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		//サービス契約番号
		hktgiInfMap.put(
				KKW00147SFConst.SVC_KEI_NO, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SVC_KEI_NO, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		String idoDiv = svcFormBean.sendMessageString(KKW00147SFConst.IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);

		String svcKeiUcwkNo = svcFormBean.sendMessageString(
				KKW00147SFConst.SVC_KEI_UCWK_NO, 
				X31CWebConst.DATABEAN_GET_VALUE);
		
		if (!IDO_DIV_BANGO_HENKO.equals(idoDiv))
		{
			svcKeiUcwkNo = "";
		}
		//サービス契約内訳番号
		hktgiInfMap.put(
				KKW00147SFConst.SVC_KEI_UCWK_NO, 
				svcKeiUcwkNo);
		
		//異動区分
		hktgiInfMap.put(
				KKW00147SFConst.IDO_DIV, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.IDO_DIV, 
						X31CWebConst.DATABEAN_GET_VALUE));
		
		// 2012/07/10 IT2-2012-0001042 ADD START
		//サービス契約回線内訳番号
		hktgiInfMap.put(
				KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, 
				svcFormBean.sendMessageString(
						KKW00147SFConst.SVC_KEI_KAISEN_UCWK_NO, 
						X31CWebConst.DATABEAN_GET_VALUE));
		// 2012/07/10 IT2-2012-0001042 ADD END
		
		// 20120719 ANK-0079-00-00 START
		X31SDataBeanAccess kkw04213Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.DOBANITEN_INPUT).getDataBean(0);
		for (int i = 0; i < SRC_KKW04213_KEYS.length; i++)
		{
			if (KKW00147SFConst.MAN_INPUT_29.equals(SRC_KKW04213_KEYS[i]) || KKW00147SFConst.TORIKESHI_FLG_29.equals(SRC_KKW04213_KEYS[i]))
			{
				hktgiInfMap.put(TGT_KKW04213_KEYS[i], kkw04213Bean.sendMessageBoolean(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_GET_VALUE));
			}
			else
			{
				hktgiInfMap.put(TGT_KKW04213_KEYS[i], kkw04213Bean.sendMessageString(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_GET_VALUE));
			}
		}
		// 20120719 ANK-0079-00-00 END
		
		// OT-2013-0000311 2013-03-30 ADD_START
		// 画面に電話番号が設定されてた場合は画面の電話番号を渡す
		String telno = svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_GET_VALUE);
		if (!isNull(telno))
		{
			hktgiInfMap.put(KKW04213SFConst.TELNO_05, telno);
		}
		// OT-2013-0000311 2013-03-30 ADD_END
		
		arr.add(hktgiInfMap);
		hktgiInfMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, arr);

		//引継情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW04213, hktgiInfMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW04213, JKKScreenConst.SCREEN_ID_KKW00147);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW04213);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW04213);
		
		return true;
		
	}
	
	/**
	 * KKW04213 同番移転入力画面からの復帰
	 * @return
	 */
	public boolean actionDobanitenRet(){
		
		// 20120719 ANK-0079-00-00 START
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		X31SDataBeanAccess kkw04213Bean = svcFormBean.getDataBeanArray(KKW00147SFConst.DOBANITEN_INPUT).getDataBean(0);
		
		// 引継情報を取得
		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);
		HashMap<String, Object> hktgiInfMap = ((ArrayList<HashMap<String, Object>>)dataMap.get(KKW04213SFConst.CUST_KEI_HKTGI_LIST)).get(0);

		for (int i = 0; i < TGT_KKW04213_KEYS.length; i++)
		{
			if (KKW04213SFConst.MAN_INPUT_05.equals(TGT_KKW04213_KEYS[i]) || KKW04213SFConst.TORIKESHI_FLG_05.equals(TGT_KKW04213_KEYS[i]))
			{
				kkw04213Bean.sendMessageBoolean(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_SET_VALUE, (Boolean)hktgiInfMap.get(TGT_KKW04213_KEYS[i]));
			}
			else
			{
				kkw04213Bean.sendMessageString(SRC_KKW04213_KEYS[i], X31CWebConst.DATABEAN_SET_VALUE, (String)hktgiInfMap.get(TGT_KKW04213_KEYS[i]));
				if (KKW04213SFConst.TELNO_05.equals(TGT_KKW04213_KEYS[i]))
				{
					svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, (String)hktgiInfMap.get(TGT_KKW04213_KEYS[i]));
				}
			}
		}
		
		if (IDO_DIV_BANGO_TSUIKA.equals(ido_div))
		{
			// 異動区分が光電話・番号追加の場合
			// 同番移転入力画面受渡データ
			X31SDataBeanAccessArray dobanitenInputList = svcFormBean.getDataBeanArray(KKW00147SFConst.DOBANITEN_INPUT);
			X31SDataBeanAccess dobanitenInput = dobanitenInputList.getDataBean(0);
			boolean torikeshiFlg = dobanitenInput.sendMessageBoolean(KKW00147SFConst.TORIKESHI_FLG_29, X31CWebConst.DATABEAN_GET_VALUE);
			
			if (torikeshiFlg)
			{
				// 取消の場合、以下項目を初期化
				
				// 可否調査依頼
				selectedPulldownIndex(svcFormBean, KKW00147SFConst.DOBANITEN_REQ_CTRL_CD, null);
				// 可否調査結果登録
				selectedPulldownIndex(svcFormBean, KKW00147SFConst.DOBANITEN_JDG_CD, "0");
			}
		}
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00147);
		// 20120719 ANK-0079-00-00 END
		
		return true;
	}

	/**
	 * KKW00151電話番号情報登録確認<br/>
	 * 3.3 番ポ情報入力ボタン押下時の処理 (action_Bmp)<br/>
	 * 
	 * @return 処理結果
	 */
	public boolean actionBmp2()
	{
		return forward2BangoPortabilityGamen(JKKScreenConst.SCREEN_ID_KKW00151);
	}

	/**
	 * KKW00151電話番号情報登録確認<br/>
	 * 3.4 修正ボタン押下時の処理 (action_Shusei)<br/>
	 * 
	 * @return 処理結果
	 */
	public boolean actionShusei()
	{
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00147, SCREEN_ID_KKW00151);

		//画面情報を設定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW00147);
		
		return true;
	}

	/**
	 * KKW00152電話番号情報登録完了<br/>
	 * 3.1 「異動区分選択へ」ボタン押下時の処理 (action_IdoDivChoice)<br/>
	 * 
	 * @return 処理結果
	 */
	public boolean actionIdoDivChoice()
	{
		// ST1-2012-0001092 電話オプション登録・解約で不要なSODが発行される 2012/12/23 START
		// 異動区分選択画面から遷移した場合に、異動区分選択画面に「サービス契約情報へ」ボタンではなく
		// 「サービス契約一覧照会へ」ボタンが表示されるよう修正
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		boolean returnFlg = svcFormBean.sendMessageBoolean(KKW00147SFConst.RETURN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if (returnFlg)
		{
// IT2-2012-0001980 2012-12-10 ADD_START
			HashMap<String, Object> hktgiInfMap = new HashMap<String, Object>();
			ArrayList<HashMap<String, Object>> arr = new ArrayList<HashMap<String,Object>>();
			
			//引継情報の構築
			//SYSID
			hktgiInfMap.put(
					KKW00147SFConst.SYSID_22, 
					svcFormBean.sendMessageString(
							KKW00147SFConst.SYSID, 
							X31CWebConst.DATABEAN_GET_VALUE));
			
			//サービス契約番号
			hktgiInfMap.put(
					KKW00147SFConst.SVC_KEI_NO_22, 
					svcFormBean.sendMessageString(
							KKW00147SFConst.SVC_KEI_NO, 
							X31CWebConst.DATABEAN_GET_VALUE));
			
			//サービス契約内訳番号
			hktgiInfMap.put(
					KKW00147SFConst.SVC_KEI_UCWK_NO_22, 
					svcFormBean.sendMessageString(
							KKW00147SFConst.SVC_KEI_UCWK_NO, 
							X31CWebConst.DATABEAN_GET_VALUE));
			
			//異動区分
			hktgiInfMap.put(
					KKW00147SFConst.IDO_DIV_22, 
					svcFormBean.sendMessageString(
							KKW00147SFConst.IDO_DIV, 
							X31CWebConst.DATABEAN_GET_VALUE));
			
			X31SDataBeanAccess hktgiBean = svcFormBean.getDataBeanArray(KKW00147SFConst.CUST_KEI_HKTGI_LIST).getDataBean(0);
			int length = (Integer)hktgiBean.sendMessage(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_COUNT);
			String[] obj = new String[length];
			for (int k = 0 ; k < length ; k++)
			{
				obj[k] = hktgiBean.sendMessageString(KKW00147SFConst.IDO_RSN_CD_22, X31CWebConst.DATABEAN_GET_VALUE, k);
			}
			// 異動理由コード
			hktgiInfMap.put(KKW00147SFConst.IDO_RSN_CD_22, obj);
			
			arr.add(hktgiInfMap);
			hktgiInfMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, arr);

			//引継情報を設定
			JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00145, hktgiInfMap);
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00145, JKKScreenConst.SCREEN_ID_KKW00147);
// IT2-2012-0001980 2012-12-10 ADD_END
		}
		// ST1-2012-0001092 電話オプション登録・解約で不要なSODが発行される 2012/12/23 END
		//遷移先の指定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		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;
	}


	

	/**
	 * KKW00152電話番号情報登録完了<br/>
	 *3.2 「お客様一覧照会へ」ボタン押下時の処理 (action_CustShokai)
	 * 
	 * @return 処理結果
	 */
	public boolean actionCustShokai()
	{

		//遷移先の指定
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		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;
	}

	
	private HashMap<String, Object> makeHktgiDataMap(X31SDataBeanAccess svcFormBean)
	{
		//遷移先情報設定
		String[] hktgiKeys = {
				KKW00147SFConst.SYSID_22
			,	KKW00147SFConst.SVC_KEI_NO_22
			,	KKW00147SFConst.IDO_DIV_22
			,	KKW00147SFConst.IDO_RSN_CD_22
			// UI残65_異動理由の要否について 2012/05/14 kitatani strat
			,   KKW00147SFConst.IDO_RSN_MEMO_22
			// UI残65_異動理由の要否について 2012/05/14 kitatani end
		};
		HashMap<String, Object> xMap = getHktgiDataMap(svcFormBean, JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, hktgiKeys);

		return xMap;
	}

	// 20120420 榮川 add start
	// 電話番号情報登録確認画面からの遷移時に番号追加、番号変更で編集モードにならないようにする。
	private HashMap<String, Object> makeKkninHktgiDataMap(X31SDataBeanAccess svcFormBean)
	{
		//遷移先情報設定
		String[] hktgiKeys = {
				KKW00147SFConst.SYSID_22
			,	KKW00147SFConst.SVC_KEI_NO_22
			//	IT2-2013-0000024 2013/02/01 ADD START
			,	KKW00147SFConst.IDO_DIV_22
			//	IT2-2013-0000024 2013/02/01 ADD END
		};
		HashMap<String, Object> xMap = getHktgiDataMap(svcFormBean, JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, hktgiKeys);

		return xMap;
	}
	// 20120420 榮川 add end
	
	/**	
	 * <dd>メソッド名：引継情報データマップ取得
	 * <dd>メソッド説明：引数のサービスフォームBeanより引継情報データマップの生成を行う。
	 * <dd>備考：引継情報データタイプの可変項目はString[]のみ対応。
	 * @param bean サービスフォームBean
	 * @param hktgiKey 引継情報データタイプのキー
	 * @param hktgiPrmKeys 引継情報データタイプの項目キーリスト	
	 * @return HashMap<String, Object> 引継情報データマップ
	 */
	private HashMap<String, Object> getHktgiDataMap(X31SDataBeanAccess bean, String hktgiKey , String[] hktgiPrmKeys)
	{
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();

		X31SDataBeanAccessArray infList =  bean.getDataBeanArray(hktgiKey);
		for (int i = 0 ; i < infList.getCount() ; i++)
		{
			HashMap<String, Object> inMap = new HashMap<String, Object>();

			X31SDataBeanAccess inf = infList.getDataBean(i);
			for (int j = 0 ; j < hktgiPrmKeys.length ; j++)	
			{
				try
				{
					inMap.put(hktgiPrmKeys[j], inf.sendMessageObject(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE));
				}
				catch (X31SRuntimeException ex)	
				{
					// 可変項目の場合(String[]のみ対応)	
					int length = (Integer)inf.sendMessage(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_COUNT);
					String[] obj = new String[length];
					for (int k = 0 ; k < length ; k++)
					{
						obj[k] = inf.sendMessageString(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE, k);
					}
					inMap.put(hktgiPrmKeys[j], obj);
				}
			}
			dataList.add(inMap);
		}
		dataMap.put(hktgiKey, dataList);

		return dataMap;	
	}
	// 20120925 DEL START 
//	/**	
//	 * <dd>メソッド名：文字列切り取り処理
//	 * <dd>メソッド説明：
//	 * <dd>備考：
//	 * @param str 処理対象文字列
//	 * @param sta 開始位置
//	 * @return 編集後文字列
//	 */
//	private String substring(String str, int sta)
//	{
//		if (str == null)
//		{
//			return "";
//		}
//		
//		return substring(str, sta, str.length());
//	}
//	/**	
//	 * <dd>メソッド名：文字列切り取り処理
//	 * <dd>メソッド説明：
//	 * <dd>備考：
//	 * @param str 処理対象文字列
//	 * @param sta 開始位置
//	 * @param end 終了位置
//	 * @return 編集後文字列
//	 */
//	private String substring(String str, int sta, int end)
//	{
//		if (str == null)
//		{
//			return "";
//		}
//		
//		if (sta > end
//				|| str.length() < sta
//				|| str.length() < end)
//		{
//			return "";
//		}
//		
//		return str.substring(sta, end);
//	}
	// 20120925 DEL END 
	/**
	 * サービス契約内訳＜電話＞の明細から２番号契約でそれぞれの緊急先住所が異なるかをチェックする
	 * <br>
	 * @param svcFormBean フォームbean
	 * @return true : true : 同じ false: 異なる
	 */
	private boolean checkEmegencyAddress(X31SDataBeanAccess svcFormBean, String currentSvcKeiUwkNo)
	{
		// サービス契約内訳＜電話＞の明細から２番号契約でそれぞれの緊急先住所が異なるかをチェックする
		X31SDataBeanAccessArray kk081Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191B006DETAILLIST);
		
		// とりあえず画面からの入力と既存データとの比較だけを行う。
		StringBuilder addrStr = new StringBuilder();
		for(int i = 0; i < kk081Arr.getCount(); i++)
		{
			X31SDataBeanAccess bean = kk081Arr.getDataBean(i);
			String svcKeiUwkNo = bean.sendMessageString(KKW00147SFConst.SVC_KEI_UCWK_NO_28, X31CWebConst.DATABEAN_GET_VALUE);
			if (!svcKeiUwkNo.equals(currentSvcKeiUwkNo))
			{
				// 住所の表示方法が変わったらここも変更する必要あり
				addrStr.append(bean.sendMessageString(KKW00147SFConst.EMG_AD_CD_28, X31CWebConst.DATABEAN_GET_VALUE))
						.append(getTrimStr(bean.sendMessageString(KKW00147SFConst.EMG_BNCHIGO_28, X31CWebConst.DATABEAN_GET_VALUE)))
						.append(getTrimStr(bean.sendMessageString(KKW00147SFConst.EMG_ADRTTM_28, X31CWebConst.DATABEAN_GET_VALUE)))
						.append(getTrimStr(bean.sendMessageString(KKW00147SFConst.EMG_ADRRM_28, X31CWebConst.DATABEAN_GET_VALUE)));				
				break;
			}
			
		}
		// 他の番号が存在するか確認する
		if (addrStr.length() == 0)
		{
			return true;
		}
		// 入力された住所をチェック
		StringBuilder inputAddr = new StringBuilder();
		inputAddr.append(svcFormBean.sendMessageString(KKW00147SFConst.AD_CD, X31CWebConst.DATABEAN_GET_VALUE))
				.append(getTrimStr(svcFormBean.sendMessageString(KKW00147SFConst.BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE)))
				.append(getTrimStr(svcFormBean.sendMessageString(KKW00147SFConst.ADRTTM, X31CWebConst.DATABEAN_GET_VALUE)))
				.append(getTrimStr(svcFormBean.sendMessageString(KKW00147SFConst.ADRRM, X31CWebConst.DATABEAN_GET_VALUE)));
		// 住所を比較する
		return inputAddr.toString().equals(addrStr.toString());
	}
	
	/**
	 * 文字列トリムして返す。
	 * <br>
	 * @param val 元の入力文字列
	 * @return
	 */
	private String getTrimStr(String val)
	{
		if (val == null)
		{
			return "";
		}
		return val.trim();
	}

	/**
	 * サービス契約されている電話番号の数を返す。（１番号のみか、２番号まで契約されているか？）
	 * <br>
	 * @param svcFormBean フォームbean
	 * @return 契約されている数を返す
	 */
	private int getTelKeiCount(X31SDataBeanAccess svcFormBean)
	{
		// 緊急住所の登録件数にて判断してみる?
		X31SDataBeanAccessArray kk081Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191B006DETAILLIST);
		return kk081Arr.getCount();
	}
	
	/**
	 * ２ポートVAどうかを返す。
	 * <br>
	 * @param svcFormBean フォームbean
	 * @param modelCd 宅内機器形式コード
	 * @return ２ポートVAの場合はtrue、それ以外はfalse
	 */
	private boolean isTowPortVA(X31SDataBeanAccess svcFormBean)
	{
		String modelCd = svcFormBean.sendMessageString(KKW00147SFConst.VA_MODEL_CD, X31CWebConst.DATABEAN_GET_VALUE);
		// パラメータチェック
		if (modelCd == null)
		{
			return false;
		}
		//機器提供サービス契約・一覧照会結果
		X31SDataBeanAccessArray kk0341Arr = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0341B002DATA);

		//機器提供サービス契約より宅内機器種別コードが"VA"のものを抽出する
		//kikiModelCd : 宅内機器形式コード

		for(int i = 0; i < kk0341Arr.getCount(); i++)
		{
			X31SDataBeanAccess bean = kk0341Arr.getDataBean(i);
			String kikiSbtCd = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
			String kikiModelCd = bean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_07, X31CWebConst.DATABEAN_GET_VALUE);
			String ports = bean.sendMessageString(KKW00147SFConst.PORT_CNT_07, X31CWebConst.DATABEAN_GET_VALUE);
			if (CD01262_VA.equals(kikiSbtCd) && 2 <= Integer.parseInt(ports) && modelCd.equals(kikiModelCd))
			{
				return true;
			}
		}

		//宅内機器型式一覧照会
		X31SDataBeanAccessArray list1 = svcFormBean.getDataBeanArray(KKW00147SFConst.EXX0000ZXXXDATA);
		
		int in = list1.getCount();
		for (int i = 0; i < in; i++)
		{
			X31SDataBeanAccess subbean = list1.getDataBean(i);

//			String kikiSbtCd = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_SBT_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
			String kikiModelCd = subbean.sendMessageString(KKW00147SFConst.TAKNKIKI_MODEL_CD_10, X31CWebConst.DATABEAN_GET_VALUE);
			String ports = subbean.sendMessageString(KKW00147SFConst.PORT_CNT_10, X31CWebConst.DATABEAN_GET_VALUE);
			if (2 <= Integer.parseInt(ports) && modelCd.equals(kikiModelCd))
			{
				return true;
			}
		}

		return false;
	}

	// 20120709 (ロット２)番ポ対応 START
	/**
	 * DataBean初期化処理
	 * ※javascriptでラベル化した項目の値が失われている場合に画面初期表示時の値に戻します。
	 * 
	 */
	private void resetDataBean()
	{
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		
		// 番ポ有無
		X31SDataBeanAccess bmpBean = svcFormBean.getDataBeanArray(KKW00147SFConst.BMP_UM).getDataBean(0);
		String bmpIndex = bmpBean.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		if(bmpIndex == null){
			X31SDataBeanAccess svcKeiUcwkTelBean = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0191A010DATA).getDataBean(0);
			selectedPulldownIndex(svcFormBean, KKW00147SFConst.BMP_UM,
					svcKeiUcwkTelBean.sendMessageString(KKW00147SFConst.BMP_UM_06, X31CWebConst.DATABEAN_GET_VALUE));
		}
	}
	// 20120709 (ロット２)番ポ対応 END
	
	// 20120720 ANK-0079-00-00 START
	/**
	 * <dd>メソッド名：プルダウン名称取得処理
	 * <dd>メソッド説明：プルダウンが選択しているプルダウン表示名を取得する。
	 * <dd>備考：なし。
	 * @param bean サービスフォームBean
	 * @param pulldownInfName プルダウン情報名(キー値)
	 * @return String プルダウン名称
	 */
	private String getPulldownName(X31SDataBeanAccess bean, String pulldownInfName)
	{
		String cdDivNam = "";
		
		X31SDataBeanAccessArray pulldownInfList = bean.getDataBeanArray(pulldownInfName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);
		
		String index = pulldownInf.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (!isNull(index))
		{
			cdDivNam = pulldownInf.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(index));
			int pos = cdDivNam.indexOf(".");
			if (pos >= 0)
			{
				cdDivNam = cdDivNam.substring(pos + 1).trim();
			}
		}
		
		return cdDivNam;
	}
	
	/**
	 * <dd>メソッド名：プルダウンコード取得処理
	 * <dd>メソッド説明：プルダウンが選択しているプコードを取得する。
	 * <dd>備考：なし。
	 * @param bean サービスフォームBean
	 * @param pulldownInfName プルダウン情報名(キー値)
	 * @return String プルダウン名称
	 */
	private String getPulldownCd(X31SDataBeanAccess bean, String pulldownInfName)
	{
		String cdDiv = "";
		
		X31SDataBeanAccessArray pulldownInfList = bean.getDataBeanArray(pulldownInfName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);
		
		String index = pulldownInf.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (!isNull(index))
		{
			cdDiv = pulldownInf.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(index));
		}
		
		return cdDiv;
	}
	
	// 20131202 ANK-1578-00-00 START
	/**
	 * <dd>メソッド名：プルダウン名称取得処理
	 * <dd>メソッド説明：プルダウンが選択している名称を取得する。
	 * <dd>備考：なし。
	 * @param bean サービスフォームBean
	 * @param pulldownInfName プルダウン情報名(キー値)
	 * @return String プルダウン名称
	 */
	private String getPulldownNm(X31SDataBeanAccess bean, String pulldownInfName)
	{
		String cdDivNm = "";
		
		X31SDataBeanAccessArray pulldownInfList = bean.getDataBeanArray(pulldownInfName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);
		
		String index = pulldownInf.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (!isNull(index))
		{
			cdDivNm  = pulldownInf.sendMessageString(KKW00147SFConst.CD_DIV_NM_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(index));
		}
		
		return cdDivNm;
	}
	// 20131202 ANK-1578-00-00 END
	
	/**
	 * エラー情報転記処理
	 * 
	 * @param bean
	 * @param outputMap
	 * @param outputMapKey
	 * @return エラー有無(true：エラー、false、エラー無し)
	 */
	@SuppressWarnings("unchecked")
	private boolean getErrInfo(X31SDataBeanAccess bean, HashMap outputMap, String outputMapKey) {
		
		boolean isErr = false;
		
		HashMap parentMap = null;
		if (outputMap.containsKey(outputMapKey))
		{
			parentMap = (HashMap) outputMap.get(outputMapKey);
		}

		ArrayList<HashMap<String, Object>> errInfoList = (ArrayList<HashMap<String, Object>>)parentMap.get("err_info_list");
		for (int i = 0; errInfoList != null && i < errInfoList.size(); i++)
		{
			HashMap<String, Object> errInfo = errInfoList.get(i);
			String msgId = (String)errInfo.get("msg_id");
			String[] ckanChrArray = null;
			String ckanChr = (String)errInfo.get("ckan_chr");
			if (!isNull(ckanChr))
			{
				ckanChrArray = ckanChr.split(",");
			}
			String kmkId = (String)errInfo.get("kmk_id");
			String kkokuFlg = (String)errInfo.get("kkoku_flg");
			
			// 20121004 置換文字列が存在しないエラーメッセージの表示対応
			//JCCWebCommon.setMessageInfo(this, msgId, ckanChrArray, kmkId);
			if (ckanChrArray != null && ckanChrArray.length > 0){
				JCCWebCommon.setMessageInfo(this, msgId, ckanChrArray, kmkId);
			}else{
				JCCWebCommon.setMessageInfo(this, msgId, kmkId);
			}
			// 20121004 置換文字列が存在しないエラーメッセージの表示対応
			
			if ("0".equals(kkokuFlg))
			{
				isErr = true;
			}
		}
		return isErr;
	}
	
	// 20120720 ANK-0079-00-00 END
	
	/**
	 * <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(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_COUNT);
			for (int i = 0 ; i < count ; i++)
			{
				String cd = pulldownInf.sendMessageString(KKW00147SFConst.CD_DIV_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, i);
				if (cd.equals(targetCd))
				{
					index = String.valueOf(i);
					break;
				}
			}
		}
		
		pulldownInf.sendMessageString(KKW00147SFConst.INDEX_01, X31CWebConst.DATABEAN_SET_VALUE, index);
	}
	
	/**
	 * オブジェクトに値が設定されているか判定します。
	 * <br>
	 * @param arg0 判定するオブジェクト
	 * @return オブジェクトに値が設定されていない場合はtrue
	 */
	public static boolean isNull(Object arg0) 
	{
		if (arg0 == null) 
		{
			return true;
		}

		return 0 == arg0.toString().length();
	}

// OT-2013-0000171 2013/02/21 ADD START
	/**
	 * 番ポ有無を有無を切り替えた際、切り替え前区分の電話番号、NRNに対し、クリア処理を行います。
	 * <br>
	 * @return 処理結果
	 * @exception	Exception	例外が発生した場合
	 */
	public boolean actionTelNoClear() throws Exception
	{
		// DataBeanを取得
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		
		// サービスフォームBeanの入力項目値をクリアする
		//電話番号
		svcFormBean.sendMessageString(KKW00147SFConst.TEL_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
		//ＮＲＮ
		svcFormBean.sendMessageString(KKW00147SFConst.NRN, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// 20131225 IT2-2013-0000866 START
		actionKikiChange();
		// 20131225 IT2-2013-0000866 END
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
// OT-2013-0000171 2013/02/21 ADD END
	// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 ADD START
	/**
	 * 電話番号通知有無を取得します。
	 * <br>
	 * @return CD00002_NASI：無、CD00002_ARI：有
	 */
	private String getTelNoTchUm()
	{
		String telNoTchUm = CD00002_NASI;	//無
		
		// DataBeanを取得
		X31SDataBeanAccess svcFormBean = getServiceFormBean();
		
		// オプションサービス契約一覧照会結果取得(オプションサービスコード＝B022：電話番号通知を指定して照会した結果)
		X31SDataBeanAccessArray eKK0351B010Array = svcFormBean.getDataBeanArray(KKW00147SFConst.EKK0351B010DATA);
		
		if (eKK0351B010Array != null && eKK0351B010Array.getCount() > 0)
		{
			for (int i = 0; i < eKK0351B010Array.getCount(); i++)
			{
				X31SDataBeanAccess eKK0351B010Bean = eKK0351B010Array.getDataBean(i);
				String opSvcKeiStat = eKK0351B010Bean.sendMessageString(KKW00147SFConst.OP_SVC_KEI_STAT_15, X31CWebConst.DATABEAN_GET_VALUE);
				
				if (JKKCommonConst.SVC_KEI_STAT_910.compareTo(opSvcKeiStat) > 0)
				{
					// 「解約済、キャンセル済」以外のレコードが１件見つかった時点で有とする
					telNoTchUm = CD00002_ARI;	//有
					break;
				}
			}
		}
		
		return telNoTchUm;
	}	
	// 20131017 OM-2013-0003279 発信者番号通知の有無の判定方法を変更 ADD END
	
	// OM-2015-0000564 20151201 ADD START
	/**
	 * エラーメッセージを設定します。
	 * <br>
	 * @param outputMap サービス実行結果
	 * @return エラーが存在する場合はtrue、存在しない場合はfalse
	 */
	@SuppressWarnings("unchecked")
	private boolean setErrorMessageInfo(HashMap<String, Object> outputMap)
	{
		boolean isError = false;

		// オーダ発行条件チェック
		HashMap<String, Object> kksv021138scMap = (HashMap<String, Object>)outputMap.get("KKSV021138SC");
		if (null != kksv021138scMap)
		{
			// エラーの場合
			if ("1".equals(kksv021138scMap.get("chk_kbn")))
			{
				// オーダが処理された後の操作を促すメッセージを表示
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBE020_KW);
				isError = true;
			}
		}

		return isError;
	}
	// OM-2015-0000564 20151201 ADD END
	
// IT2-2016-0000034 ADD START
	/**
	 * エラーメッセージを設定します。
	 * <br>
	 * @param outputMap サービス実行結果
	 * @return エラーが存在する場合はtrue、存在しない場合はfalse
	 */
	@SuppressWarnings("unchecked")
	private boolean setEgErrorMessageInfo(HashMap<String, Object> outputMap)
	{
		boolean isError = false;

		// オーダ発行条件チェック
		HashMap<String, Object> KKSV021139SCscMap = (HashMap<String, Object>)outputMap.get("KKSV021139SC");
		if (null != KKSV021139SCscMap)
		{
			// エラーの場合
			if ("1".equals(KKSV021139SCscMap.get("chk_kbn")))
			{
				// オーダが処理された後の操作を促すメッセージを表示
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0290_JW, new String[]{"E→G切替工事","工事中","交換予定の機器へ手動での紐替え変更は"});
				isError = true;
			}
		}

		return isError;
	}
// IT2-2016-0000034 ADD END
	// ANK-4315-00-00 ADD START
	/**
	 * 「工事情報登録画面」ボタン押下時処理
	 * 
	 * @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(KKW00147SFConst.SYSID, X31CWebConst.DATABEAN_GET_VALUE));
		// サービス契約番号 (引継ぎ項目)
		childMap.put(JKKCommonConst.HKTGI_SVC_KEI_NO, svcFormBean.sendMessageString(KKW00147SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		// 異動区分 (引継ぎ項目)
		childMap.put(JKKCommonConst.HKTGI_IDO_DIV, svcFormBean.sendMessageString(KKW00147SFConst.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);
		
		dataMap.put("rrk_way_hoki", svcFormBean.sendMessageString(KKW00147SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("kojiak_biko", svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_1, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("kojiak_biko_2", svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_2, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("tnkj_kibo_apo_kigen_ymd", svcFormBean.sendMessageString(KKW00147SFConst.TNKJ_KIBO_APO_KIGEN_YMD, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("tel_rrk_kibo_time", svcFormBean.sendMessageString(KKW00147SFConst.TEL_RRK_KIBO_TIME, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("koji_apo_rrks", svcFormBean.sendMessageString(KKW00147SFConst.KOJI_APO_RRKS, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put("cust_rrks_telno", svcFormBean.sendMessageString(KKW00147SFConst.CUST_RRKS_TELNO, X31CWebConst.DATABEAN_GET_VALUE));

		// 画面情報を設定（工事情報登録画面）
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW00404, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW00404, JKKScreenConst.SCREEN_ID_KKW00147);

		// 共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_ID_KKW00404);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE,
				JKKScreenConst.SCREEN_NAME_KKW00404);

		return true;
	}
	
	/**
	 * KKW00404_ONU交換工事情報入力画面<br/>
	 *3.2 「工事情報入力」ボタン押下時の処理 (action_CustShokai)
	 * 
	 * @return 処理結果
	 */
	public boolean actionKojiifinputrefresh()
	{
		// 共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		// サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();
		
		HashMap<String, Object> dataMap = JCCWebCommon.getScreenInfo(this);

		svcFormBean.sendMessageString(KKW00147SFConst.RRK_WAY_HOKI, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_rrk_way_hoki"));
		svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_1, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_kojiak_biko"));
		svcFormBean.sendMessageString(KKW00147SFConst.KOJIAK_BIKO_2, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_kojiak_biko_2"));
		svcFormBean.sendMessageString(KKW00147SFConst.TNKJ_KIBO_APO_KIGEN_YMD, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tnkj_kibo_apo_kigen_ymd"));
		svcFormBean.sendMessageString(KKW00147SFConst.TEL_RRK_KIBO_TIME, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_tel_rrk_kibo_time"));
		svcFormBean.sendMessageString(KKW00147SFConst.KOJI_APO_RRKS, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_koji_apo_rrks"));
		svcFormBean.sendMessageString(KKW00147SFConst.CUST_RRKS_TELNO, X31CWebConst.DATABEAN_SET_VALUE, (String)dataMap.get("ret_cust_rrks_telno"));

		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, 
		X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW00147);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, 
		JKKScreenConst.SCREEN_NAME_KKW00147);

		 return true;
	}
	// ANK-4315-00-00 ADD END
	
	// ANK-4494-00-00 ADD START
	/**
	 * 指定された画面制御権限がユーザーに付与されているか判断する。
	 * 
	 * @return boolean
	 */
	@SuppressWarnings("unchecked")
	private boolean getDispAuthority()
	{
		JCCAuthorityCtrlStatus.setAuthorityCtrl(this);
		String sessionId = this.getSession().getViewParamId().getSessionID();
		HashMap authoriMap = (HashMap)X33CUtil.getSession(sessionId).getSession().getAttribute("COMMON_INFO_AUTHORITY_CD_CACHE");
		
		if (authoriMap.containsKey("AUKKW00147300"))
		{
			return true;
		}
		else 
		{
			return false;
		}
		
	}
	// ANK-4494-00-00 ADD END
}
