/*******************************************************************************
 *	All Rights reserved,Copyright (c) K-Opticom
 ********************************************************************************
 *＜プログラム内容＞
 *	システム名		：eo顧客基幹システム
 *	モジュール名	：KKW22701SFLogic
 *	ソースファイル名：KKW22701SFLogic.java
 *	作成者			：富士通
 *	日付			：2022年12月15日
 *＜機能概要＞
 *	支払方法変更一覧ビューロジック
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	新規作成	2022/12/15  FJ)西窪     【ANK-4329-00-00】新規作成
 *	v64.00.00   2023/01/26  FJ)西窪		【ANK-4348-00-00】mineo譲渡後支払方法変更対応
 ********************************************************************************/
package eo.web.webview.KKW22701SF;


import java.util.ArrayList;
import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31CMessageResult;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;

import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.util.JKKStringUtil;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.KKW22701SF.KKW22701SFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKKeiNewCmnLogicUtil;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.common.JKKWebCommon;
import eo.web.webview.mapping.KKSV1014_KKSV1014OPDBMapper;

/**
 * 支払方法変更一覧ビューロジック.<p>
 * <>
 * @author 富士通
 */
@SuppressWarnings("serial")
public class KKW22701SFLogic extends JCCWebBusinessLogic
{
	
	/**
	 * 検索処理ユースケースID
	 */
	private static final String INITAL_DISPLAY_USECASE_ID = "KKSV1014";

	/**
	 * 初期表示を処理します。
	 * <>
	 * @return true固定
	 * @throws Exception 例外
	 */
	public boolean init() throws Exception
	{
		// 画面情報
		HashMap<String, Object> screenInfoMap = JCCWebCommon.getScreenInfo(this);
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 遷移先より戻った場合はセッションからデータを取得する
		if (screenInfoMap != null)
		{
			JKKWebCommon.setSelfScreenID(this);
			
			// 前回の検索結果をクリアする
			bean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST).clearArray();
			
			// 検索条件を保存領域から、引き継ぐ
			restoreSearchCondition(screenInfoMap);
			setSerchBean(screenInfoMap);
			setBackupBean(screenInfoMap);
		}
		else
		{
			// 初期表示時は申込ステータス：002（照査待ち）、004（保留）で検索する
			bean.sendMessageString(KKW22701SFConst.SRC_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, "002,004");	
			// 保存用検索条件データタイプ
			X31SDataBeanAccess saveBean = bean.getDataBeanArray(KKW22701SFConst.SAVE_SEARCH_INFO).getDataBean(0);
			saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE,"000");
		}
				
		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, INITAL_DISPLAY_USECASE_ID);
		
		// 選択行を初期化する
		bean.sendMessageString(KKW22701SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// 一覧表示部分を非表示にする
		bean.sendMessageBoolean(KKW22701SFConst.LIST_DISP_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		// 一覧表示件数を初期化する
		bean.sendMessageString(KKW22701SFConst.SEARCH_COUNT, X31CWebConst.DATABEAN_SET_VALUE, "0");

		// 支払方法変更一覧情報照会サービス実行
		invokeKKSV1014(true);
		
		//プルダウン選択値の設定
		setPulldown(screenInfoMap);
		
		return true;
	}

	/**
	 * 支払方法変更一覧画面の検索ボタンを処理します。
	 * <>
	 * @return 成否
	 * @throws Exception 例外
	 */
	public boolean search() throws Exception
	{
		JKKWebCommon.setSelfScreenID(this);
		
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 一覧表示件数を初期化する
		bean.sendMessageString(KKW22701SFConst.SEARCH_COUNT, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		// ページング情報の初期化
		JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW22701);
				
		// 入力用Beanを検索用Beanに退避する。
		setSerchBean(null);
		// 入力用Beanを退避用Beanに退避する。
		setBackupBean(null);
		
		// 前回の検索結果をクリアする
		bean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST).clearArray();
		bean.sendMessageBoolean(KKW22701SFConst.LIST_DISP_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		
		// KKSV1014_支払方法変更情報一覧照会サービスを実行
		invokeKKSV1014(false);
		
		return true;
	}
	
	/**
	 * 仮申込検索画面の登録ボタンを処理します。
	 * <>
	 * @return 成否
	 * @throws Exception 例外
	 */
	@SuppressWarnings("unchecked")
	public boolean showAdd() throws Exception
	{
		JKKWebCommon.setSelfScreenID(this);
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		HashMap hikitsugiMap = new HashMap();
		
		// 選択行
		String selectRow = bean.sendMessageString(KKW22701SFConst.SELECT_ROW, X31CWebConst.DATABEAN_GET_VALUE);
		// 検索結果リスト
		X31SDataBeanAccessArray paywayUkinfoList = bean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST);
		// 選択されたデータ
		X31SDataBeanAccess selectedBean = paywayUkinfoList.getDataBean(Integer.parseInt(selectRow));
		
		// 申込日
		hikitsugiMap.put("申込日", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_DAY, X31CWebConst.DATABEAN_GET_VALUE));

		// 支払方法変更受付番号
		hikitsugiMap.put("支払方法変更受付番号", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_UK_NO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// ｅｏＩＤ
		hikitsugiMap.put("ｅｏＩＤ", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_EOID, X31CWebConst.DATABEAN_GET_VALUE));

		// 請求契約番号
		hikitsugiMap.put("請求契約番号", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// クレジットカード申込種別コード
		hikitsugiMap.put("クレジットカード申込種別コード", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE));
		
		// クレジットカード名義（ローマ字）
		hikitsugiMap.put("クレジットカード名義（ローマ字）", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_CRECARD_NM_ROMAJI, X31CWebConst.DATABEAN_GET_VALUE));
		
		// クレジットイシュア区分
		hikitsugiMap.put("クレジットイシュア区分", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_CRDT_ISSUER_DIV, X31CWebConst.DATABEAN_GET_VALUE));
		
		// クレジットカード照査ステータス
		hikitsugiMap.put("クレジットカード照査ステータス", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, X31CWebConst.DATABEAN_GET_VALUE));
		
		// カード名義人チェック結果コード 
		hikitsugiMap.put("カード名義人チェック結果コード", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_CARD_MEIGIN_CKRLT_CD, X31CWebConst.DATABEAN_GET_VALUE));
		
		// サービス契約ステータス
		hikitsugiMap.put("サービス契約ステータス", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_STAT, X31CWebConst.DATABEAN_GET_VALUE));
		
		// チェック時点お客様名
		hikitsugiMap.put("チェック時点お客様名", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_NM, X31CWebConst.DATABEAN_GET_VALUE));
		
		// チェック時点お客様カナ名
		hikitsugiMap.put("チェック時点お客様カナ名", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_KANA_NM, X31CWebConst.DATABEAN_GET_VALUE));
		
		// サービス契約番号 
		hikitsugiMap.put("サービス契約番号", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// サービス契約ステータス
		hikitsugiMap.put("サービス契約ステータス", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_STAT, X31CWebConst.DATABEAN_GET_VALUE));
		
		// SYSID 
		hikitsugiMap.put("ＳＹＳＩＤ", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SYSID, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 更新年月日時分秒（更新前）
		hikitsugiMap.put("更新年月日時分秒（更新前）", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_UPD_DTM, X31CWebConst.DATABEAN_GET_VALUE));

		//ANK-4348-00-00 ADD START
		// 更新年月日時分秒（更新前）＿支払方法変更受付情報
		hikitsugiMap.put("更新年月日時分秒（更新前）＿支払方法変更受付情報", selectedBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_UPD_DTM_PAYWAY, X31CWebConst.DATABEAN_GET_VALUE));
		//ANK-4348-00-00 ADD END

		
		// 画面情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW22702, hikitsugiMap);
		
		// 戻り先画面IDの設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW22702, JKKScreenConst.SCREEN_ID_KKW22701);
		// 遷移先より戻った時のため検索条件を保存
		saveSearchConditionToSession();
		// 画面遷移処理
		setNextScreen(JKKScreenConst.SCREEN_ID_KKW22702, JKKScreenConst.SCREEN_ID_KKW22702);
		
		return true;
	}
	
	/**
	 * 仮申込検索画面のクリアボタンを処理します。
	 * <>
	 * @return 成否
	 * @throws Exception 例外
	 */
	public boolean clear() throws Exception
	{
		JKKWebCommon.setSelfScreenID(this);

		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 前回の検索結果をクリアする
		bean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST).clearArray();
		
		// 選択を初期化する
		bean.sendMessageString(KKW22701SFConst.SELECT_ROW, X31CWebConst.DATABEAN_CLEAR);
		
		// 一覧表示部分を非表示にする
		bean.sendMessageBoolean(KKW22701SFConst.LIST_DISP_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		
		// 一覧表示件数を初期化する
		bean.sendMessageString(KKW22701SFConst.SEARCH_COUNT, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		
		// 申込種別のプルダウンを初期化する
		X31SDataBeanAccessArray datasbtlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_SBT_INFO);
		X31SDataBeanAccess datasbtBean = datasbtlist.getDataBean(0);
		datasbtBean.sendMessageString(KKW22701SFConst.INDEX_01,X31CWebConst.DATABEAN_SET_VALUE, "0");

		// 申込ステータスのプルダウンを初期化する
		X31SDataBeanAccessArray datastatlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_STAT_INFO);
		X31SDataBeanAccess datastatBean = datastatlist.getDataBean(0);
		datastatBean.sendMessageString(KKW22701SFConst.INDEX_01,X31CWebConst.DATABEAN_SET_VALUE, "0");

		// 申込年月日（自）を初期化する
		X31SDataBeanAccessArray mskmYmdSta = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_STA);
		X31SDataBeanAccess mskmYmdStabean = mskmYmdSta.getDataBean(0);
		mskmYmdStabean.sendMessageString(KKW22701SFConst.YEAR_01 , X31CWebConst.DATABEAN_SET_VALUE, "");
		mskmYmdStabean.sendMessageString(KKW22701SFConst.MON_01 , X31CWebConst.DATABEAN_SET_VALUE, "");
		mskmYmdStabean.sendMessageString(KKW22701SFConst.DAY_01 , X31CWebConst.DATABEAN_SET_VALUE, "");

		// 申込年月日（至）を初期化する
		X31SDataBeanAccessArray mskmYmdEnd = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_END);
		X31SDataBeanAccess mskmYmdEndbean = mskmYmdEnd.getDataBean(0);
		mskmYmdEndbean.sendMessageString(KKW22701SFConst.YEAR_01 , X31CWebConst.DATABEAN_SET_VALUE, "");
		mskmYmdEndbean.sendMessageString(KKW22701SFConst.MON_01 , X31CWebConst.DATABEAN_SET_VALUE, "");
		mskmYmdEndbean.sendMessageString(KKW22701SFConst.DAY_01 , X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// eoIDを初期化する
		bean.sendMessageString(KKW22701SFConst.EOID, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// お客さまIDを初期化する
		bean.sendMessageString(KKW22701SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		// 請求契約番号を初期化する
		bean.sendMessageString(KKW22701SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, "");
				
		// 遷移先画面ＩＤの設定
		setNextScreen(JKKScreenConst.SCREEN_ID_KKW22701, JKKScreenConst.SCREEN_NAME_KKW22701);
		
		
		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, INITAL_DISPLAY_USECASE_ID);
		
		// ページング情報の初期化
		JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW22701);
		
		// 入力用Beanを検索用Beanに退避する。
		setSerchBean(null);
		// 入力用Beanを退避用Beanに退避する。
		setBackupBean(null);
		
		// クリア時は申込ステータス：002（照査待ち）、004（保留）で検索する
		bean.sendMessageString(KKW22701SFConst.SRC_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, "002,004");	
		
		// KKSV1014_支払方法変更情報一覧照会サービスを実行
		invokeKKSV1014(false);
		
		// 保存用検索条件データタイプ
		X31SDataBeanAccess saveBean = bean.getDataBeanArray(KKW22701SFConst.SAVE_SEARCH_INFO).getDataBean(0);
		saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE,"000");
		
		return true;
	}
		
	/**
	 * ページングを処理します。
	 * <>
	 * @return 成否
	 * @throws Exception 例外
	 */
	public boolean paging() throws Exception
	{
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 前回の検索結果をクリアする
		bean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST).clearArray();
		bean.sendMessageBoolean(KKW22701SFConst.LIST_DISP_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
		
		// KKSV1014_支払方法変更情報一覧照会サービスを実行
		invokeKKSV1014(false);

		setNextScreen(JKKScreenConst.SCREEN_ID_KKW22701, JKKScreenConst.SCREEN_NAME_KKW22701);
		
		return true;
	}
	
	/**
	 * 支払方法変更情報一覧照会サービスを実行します。
	 * 
	 * @return
	 * @param  boolean firstdispFlg:初期表示フラグ
	 * @throws Exception 
	 * @throws Exception 
	 */
	private void invokeKKSV1014(boolean firstdispFlg) throws Exception
	{
		X31SDataBeanAccess bean = super.getServiceFormBean();
		X31SDataBeanAccess[] paramBean = {bean};
		
		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, INITAL_DISPLAY_USECASE_ID);
		
		// マッピングクラスのインスタンスを生成
		KKSV1014_KKSV1014OPDBMapper mapper = new KKSV1014_KKSV1014OPDBMapper();
		
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		
		// ★上りマッピング★
		if(firstdispFlg)
		{
			// ※初期表示の場合のみ、プルダウン表示用のコード名称管理一覧照会を実行
			mapper.setKKSV101401SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
			mapper.setKKSV101402SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		}
		// 支払方法変更情報一覧照会SC
		mapper.setKKSV101403SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1);
		
		// ページング情報の設定
		JCCWebCommon.upmapperPageLinkInfo(this, "0", "KKSV101403SC", dataMap);
		
		// 検索結果格納用マップ
		HashMap<String, Object> outputMap = new HashMap<String, Object>();
		
		// 検索処理呼出
		X31CMessageResult msgResult = invokeService(paramMap, dataMap, outputMap);
		if (msgResult != null)
		{
			return;
		}
		
		// ★下りマッピング★
		if(firstdispFlg)
		{
			// ※初期表示の場合のみ、プルダウン表示用のコード名称管理一覧照会結果を設定
			setMskmStatPulldown(outputMap);
			JKKWebCommon.setPulldownList(bean, outputMap,KKW22701SFConst.MSKM_STAT_INFO, "KKSV101401SC", true);
			JKKWebCommon.setPulldownList(bean, outputMap,KKW22701SFConst.MSKM_SBT_INFO, "KKSV101402SC", true);
		}
		// 支払方法変更情報一覧照会SC
		mapper.getKKSV101403SC(paramBean, outputMap);
		
		
		// 検索エラーフラグの取得
		String searchErrFlg = JCCWebCommon.getSearchErrFlg("KKSV101403SC", outputMap);
		
		// 遷移先画面ＩＤの設定
		setNextScreen(JKKScreenConst.SCREEN_ID_KKW22701, JKKScreenConst.SCREEN_NAME_KKW22701);
				
		if ("1".equals(searchErrFlg))
		{
			// 検索結果が0件の場合の処理
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0330__I);
			return;
		}
		else if ("2".equals(searchErrFlg))
		{
			
			// 検索結果が最大検索件数超えの場合の処理
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0340__I, new String [] {"10000"});
			return;
		}
		
		// リストを設定する
		this.setList(bean, "0");
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this,  "0", "KKSV101403SC", outputMap);
		
		// 検索のコマンドIDを設定する。
		JCCWebCommon.setSearchCommand(this, "L_PAG_LIST");

		
		return;
	}
	
	/**
	 * 一覧表の表示設定を行います。
	 * <>
	 * @param paramBean 設定する一覧のBean情報
	 * @param rowNo 行番号
	 * @param serviceFormBean 設定する画面のServiceFormBean
	 */
	private void setList(X31SDataBeanAccess paramBean, String rowNo)
	{
		X31SDataBeanAccessArray mskmList = paramBean.getDataBeanArray(KKW22701SFConst.PAYWAY_UKINFO_LIST);
		paramBean.sendMessageBoolean(KKW22701SFConst.LIST_DISP_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
		// 行番号を設定
		paramBean.sendMessageString(KKW22701SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, rowNo);
		// 一覧表示件数を設定する
		paramBean.sendMessageString(KKW22701SFConst.SEARCH_COUNT, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(mskmList.getCount()));
	}
	
	
	/**
	 * 画面遷移先を設定します。
	 * <>
	 * @param nextScreenId 遷移先画面ＩＤ
	 * @param nextScreenName 遷移先画面名
	 */
	private void setNextScreen(String nextScreenId, String nextScreenName)
	{
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, nextScreenId);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, nextScreenName);
	}
	
	/**
	 * 入力用Beanの設定値を検索用Beanに退避します。
	 * 
	 */
	private void setSerchBean(HashMap screenInfoMap)
	{
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 申込年月日（自）
		X31SDataBeanAccess mskmYmdSta = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_STA).getDataBean(0);
		String mskmYearSta = mskmYmdSta.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmMonSta = mskmYmdSta.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmDaySta = mskmYmdSta.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_GET_VALUE);
		String srcmskmYmdSta = mskmYearSta + mskmMonSta + mskmDaySta;
		bean.sendMessageString(KKW22701SFConst.SRC_MSKM_YMD_STA, 			X31CWebConst.DATABEAN_SET_VALUE, srcmskmYmdSta);
		
		// 申込年月日（至）
		X31SDataBeanAccess mskmYmdEnd = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_END).getDataBean(0);
		String mskmYearEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmMonEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmDayEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_GET_VALUE);
		String srcmskmYmdEnd = mskmYearEnd + mskmMonEnd + mskmDayEnd;
		bean.sendMessageString(KKW22701SFConst.SRC_MSKM_YMD_END, 			X31CWebConst.DATABEAN_SET_VALUE, srcmskmYmdEnd);
		
		// ｅｏＩＤ
		String eoID = bean.sendMessageString(KKW22701SFConst.EOID, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW22701SFConst.SRC_EOID, 	X31CWebConst.DATABEAN_SET_VALUE, eoID);
		
		// お客さまID
		String svcKeiNo = bean.sendMessageString(KKW22701SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW22701SFConst.SRC_SVC_KEI_NO, 					X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		
		// 請求契約番号
		String seikyKeiNo = bean.sendMessageString(KKW22701SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW22701SFConst.SRC_SEIKY_KEI_NO, 					X31CWebConst.DATABEAN_SET_VALUE, seikyKeiNo);
		
		if(screenInfoMap == null)
		{
			// 申込ステータス
			X31SDataBeanAccessArray datastatlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_STAT_INFO);
			X31SDataBeanAccess mskmstatBean = datastatlist.getDataBean(0);
			int mskmStatSelIndex = Integer.parseInt(mskmstatBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_GET_VALUE));
			String mskmStat = mskmstatBean.sendMessageString(KKW22701SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, mskmStatSelIndex);
			bean.sendMessageString(KKW22701SFConst.SRC_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, mskmStat);
			
			// 申込種別コード
			X31SDataBeanAccessArray datasbtlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_SBT_INFO);
			X31SDataBeanAccess mskmsbtBean = datasbtlist.getDataBean(0);
			int mskmSbtSelIndex = Integer.parseInt(mskmsbtBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_GET_VALUE));
			String mskmSbt = mskmsbtBean.sendMessageString(KKW22701SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, mskmSbtSelIndex);
			bean.sendMessageString(KKW22701SFConst.SRC_MSKM_SBT_CD, 					X31CWebConst.DATABEAN_SET_VALUE, mskmSbt);
			
		}
		else
		{
			//遷移先画面からの復帰の場合、画面引継ぎ情報マップから設定する。
			// 申込種別コード
			String mskmSbt = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD);
			bean.sendMessageString(KKW22701SFConst.SRC_MSKM_SBT_CD, 					X31CWebConst.DATABEAN_SET_VALUE, mskmSbt);
			
			// 申込ステータス
			String mskmStat = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT);
			if("000".equals(mskmStat)){
				mskmStat = "002,004";
			}
			bean.sendMessageString(KKW22701SFConst.SRC_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, mskmStat);

		}

	}
	
	/**
	 * 検索用Beanの設定値を退避用Beanに退避します。
	 * 
	 */
	private void setBackupBean(HashMap screenInfoMap)
	{
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 保存用検索条件データタイプ
		X31SDataBeanAccess saveBean = bean.getDataBeanArray(KKW22701SFConst.SAVE_SEARCH_INFO).getDataBean(0);
		
		// 申込年月日（自）
		X31SDataBeanAccess mskmYmdSta = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_STA).getDataBean(0);
		String mskmYearSta = mskmYmdSta.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmMonSta = mskmYmdSta.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmDaySta = mskmYmdSta.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_GET_VALUE);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_Y, X31CWebConst.DATABEAN_SET_VALUE, mskmYearSta);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_M, X31CWebConst.DATABEAN_SET_VALUE, mskmMonSta);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_D, X31CWebConst.DATABEAN_SET_VALUE, mskmDaySta);
		
		// 申込年月日（至）
		X31SDataBeanAccess mskmYmdEnd = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_END).getDataBean(0);
		String mskmYearEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmMonEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_GET_VALUE);
		String mskmDayEnd = mskmYmdEnd.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_GET_VALUE);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_Y, X31CWebConst.DATABEAN_SET_VALUE, mskmYearEnd);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_M, X31CWebConst.DATABEAN_SET_VALUE, mskmMonEnd);
		saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_D, X31CWebConst.DATABEAN_SET_VALUE, mskmDayEnd);
		
		// ｅｏＩＤ
		String eoID = bean.sendMessageString(KKW22701SFConst.EOID, X31CWebConst.DATABEAN_GET_VALUE);
		saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_EOID, 	X31CWebConst.DATABEAN_SET_VALUE, eoID);
		
		// お客さまID
		String svcKeiNo = bean.sendMessageString(KKW22701SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO, 					X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		
		// 請求契約番号
		String seikyKeiNo = bean.sendMessageString(KKW22701SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO, 					X31CWebConst.DATABEAN_SET_VALUE, seikyKeiNo);

		if(screenInfoMap == null)
		{
			// 申込ステータス
			X31SDataBeanAccessArray mskmstatlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_STAT_INFO);
			X31SDataBeanAccess datastatBean = mskmstatlist.getDataBean(0);
			int mskmStatSelIndex = Integer.parseInt(datastatBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_GET_VALUE));
			String mskmStat = datastatBean.sendMessageString(KKW22701SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, mskmStatSelIndex);
			saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, mskmStat);
	
			// 申込種別
			X31SDataBeanAccessArray datasbtlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_SBT_INFO);
			X31SDataBeanAccess mskmsbtBean = datasbtlist.getDataBean(0);
			int mskmSbtSelIndex = Integer.parseInt(mskmsbtBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_GET_VALUE));
			String mskmSbt = mskmsbtBean.sendMessageString(KKW22701SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, mskmSbtSelIndex);
			saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD, 					X31CWebConst.DATABEAN_SET_VALUE, mskmSbt);
		}
		else
		{
			//遷移先画面からの復帰の場合、画面引継ぎ情報マップから設定する。
			// 申込種別コード
			String mskmSbt = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD);
			saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD, 					X31CWebConst.DATABEAN_SET_VALUE, mskmSbt);
			
			// 申込ステータス
			String mskmStat = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT);
			saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, 					X31CWebConst.DATABEAN_SET_VALUE, mskmStat);
		}

		
		
	}
	
	/**
	 * 他画面から戻った時に検索状態を復元するため、検索条件をセッションに保存します。
	 * 
	 */
	@SuppressWarnings("unchecked")
	private void saveSearchConditionToSession()
	{
		X31SDataBeanAccess bean = super.getServiceFormBean();
		HashMap backupDataMap = new HashMap();
		
		// 保存用検索条件データタイプ
		X31SDataBeanAccess saveBean = bean.getDataBeanArray(KKW22701SFConst.SAVE_SEARCH_INFO).getDataBean(0);
		
		// 検索条件情報.申込年月日（自）＿年
		String mskm_ymd_from_y = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_Y, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_STA_Y, mskm_ymd_from_y);
		
		// 検索条件情報.申込年月日（自）＿月
		String mskm_ymd_from_m = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_M, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_STA_M, mskm_ymd_from_m);

		// 検索条件情報.申込年月日（自）＿日
		String mskm_ymd_from_d = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_STA_D, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_STA_D, mskm_ymd_from_d);
		
		// 検索条件情報.申込年月日（至）＿年
		String mskm_ymd_to_y = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_Y, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_END_Y, mskm_ymd_to_y);
		
		// 検索条件情報.申込年月日（至）＿月
		String mskm_ymd_to_m = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_M, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_END_M, mskm_ymd_to_m);

		// 検索条件情報.申込年月日（至）＿日
		String mskm_ymd_to_d = saveBean.sendMessageString(KKW22701SFConst.MSKM_YMD_END_D, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.MSKM_YMD_END_D, mskm_ymd_to_d);
		
		// 検索条件情報.申込ステータス
		String mskm_stat = saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT, mskm_stat);
		
		// 検索条件情報.eoID
		String eoID = saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_EOID, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.PAYWAY_CHG_EOID, eoID);
		
		// 検索条件情報.お客さまID
		String svcKeiNo = saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO, svcKeiNo);
		
		// 検索条件情報.申込種別コード
		String mskm_sbt = saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD, mskm_sbt);
		
		// 検索条件情報.請求契約番号
		String seikyKeiNo = saveBean.sendMessageString(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		backupDataMap.put(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO, seikyKeiNo);



		
		// 画面情報の設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW22701, backupDataMap);
	}
	
	/**
	 * 検索条件を保存用検索条件領域から復元します。
	 * @param screenInfoMap セッションに退避した検索情報 
	 */
	private void restoreSearchCondition(HashMap<String, Object> screenInfoMap)
	{
		// 画面情報
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 申込年月日（自）
		X31SDataBeanAccess mskmYmdSta = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_STA).getDataBean(0);
		String mskm_ymd_from_y = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_Y);
		String mskm_ymd_from_m = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_M);
		String mskm_ymd_from_d = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_D);
		mskmYmdSta.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_from_y);
		mskmYmdSta.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_from_m);
		mskmYmdSta.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_from_d);
		
		// 申込年月日（至）
		X31SDataBeanAccess mskmYmdEnd = bean.getDataBeanArray(KKW22701SFConst.MSKM_YMD_END).getDataBean(0);
		String mskm_ymd_to_y = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_Y);
		String mskm_ymd_to_m = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_M);
		String mskm_ymd_to_d = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_D);
		mskmYmdEnd.sendMessageString(KKW22701SFConst.YEAR_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_to_y);
		mskmYmdEnd.sendMessageString(KKW22701SFConst.MON_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_to_m);
		mskmYmdEnd.sendMessageString(KKW22701SFConst.DAY_01, X31CWebConst.DATABEAN_SET_VALUE, mskm_ymd_to_d);
		
		// ｅｏＩＤ
		String eoID = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_EOID);
		bean.sendMessageString(KKW22701SFConst.EOID, X31CWebConst.DATABEAN_SET_VALUE, eoID);
		
		// お客さまＩＤ
		String svcKeiNo = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO);
		bean.sendMessageString(KKW22701SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		
		// 検索条件情報.請求契約番号
		String seikyKeiNo = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO);
		bean.sendMessageString(KKW22701SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, seikyKeiNo);
		
		
		// ★この時点ではプルダウンのコードリスト取得サービス実行前の為、プルダウンの選択値はサービス実行後に設定する。

	}
	
	/**
	 * コードより該当するプルダウンのindexとコード区分名を取得します。
	 * <>
	 * @param bean データBeanアクセスクラス
	 * @param code 探すコード
	 * @param param [0] 該当のindex、[1] 該当のコード区分名
	 */
	private void getPulldownSelected(X31SDataBeanAccess bean, String code, ArrayList<String> param)
	{
		Integer count = (Integer)bean.sendMessage(KKW22701SFConst.CD_DIV_LIST_01,
				X31CWebConst.DATABEAN_GET_COUNT);
		
		for (int i = 0; i < count; i++)
		{
			String cd = bean.sendMessageString(KKW22701SFConst.CD_DIV_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, i);

			String nm = bean.sendMessageString(KKW22701SFConst.CD_DIV_NM_LIST_01,
					X31CWebConst.DATABEAN_GET_VALUE, i);

			if (cd != null)
			{
				if (cd.equals(code))
				{
					param.add(i + "");
					param.add(nm);
					return;
				}
			}
		}
		param.add("0");
		param.add("");
	}
	
	/**
	 * 申込ステータスプルダウンの設定値を追加します。
	 * <>
	 * @param 
	 * @param 
	 * @param 
	 */
	@SuppressWarnings("unchecked")
	private void setMskmStatPulldown(HashMap outputMap)
	{
		//下り情報マップから対象の情報を取得します
		HashMap<String, Object> parentMap = (HashMap<String, Object>) outputMap.get("KKSV101401SC");

		if(parentMap == null) 
		{
			//NULLの場合処理を終了します
			return ;
		}
		//Mapにコード名称管理一覧照会明細が含まれているか判定します
		//コード明細情報リストにコード名称管理一意照会明細を設定します
		ArrayList childList = (ArrayList)parentMap.get("EZM0171B010CBSMsg1List");
		//コード明細情報リストがNULLか、空か判定します
		if (childList == null || 0 == childList.size())
		{
			//NULL、空の場合処理を終了します
			return ;
		}
		
		HashMap<String, Object> map = new HashMap();
		map.put("cd_div", "002,004");
		map.put("cd_div_nm", "照査待ち/保留");
		childList.add(map);
	}
	
	/**
	 * 検索条件の引継ぎが行われていたか判定。
	 * <>
	 * @param 
	 * @param 
	 * @param 
	 */
	@SuppressWarnings("unchecked")
	private boolean chkscreenInfoMap(HashMap screenInfoMap)
	{
		// 申込年月日（自）
		String mskm_ymd_from_y = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_Y);
		String mskm_ymd_from_m = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_M);
		String mskm_ymd_from_d = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_STA_D);
		// 申込年月日（至）
		String mskm_ymd_to_y = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_Y);
		String mskm_ymd_to_m = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_M);
		String mskm_ymd_to_d = (String)screenInfoMap.get(KKW22701SFConst.MSKM_YMD_END_D);
		// ｅｏＩＤ
		String eoID = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_EOID);
		// お客さまＩＤ
		String svcKeiNo = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_SVC_KEI_NO);
		// 検索条件情報.請求契約番号
		String seikyKeiNo = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_SEIKY_KEI_NO);		
		// 申込種別コード
		String mskmSbt = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD);
		// 申込ステータス
		String mskmStat = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT);
		
		if(JKKStringUtil.isNullBlank(mskm_ymd_from_y)
			&& JKKStringUtil.isNullBlank(mskm_ymd_from_m)
			&& JKKStringUtil.isNullBlank(mskm_ymd_from_d)
			&& JKKStringUtil.isNullBlank(mskm_ymd_to_y)
			&& JKKStringUtil.isNullBlank(mskm_ymd_to_m)
			&& JKKStringUtil.isNullBlank(mskm_ymd_to_d)
			&& JKKStringUtil.isNullBlank(eoID)
			&& JKKStringUtil.isNullBlank(svcKeiNo)
			&& JKKStringUtil.isNullBlank(seikyKeiNo)
			&& JKKStringUtil.isNullBlank(mskmSbt)
			&& JKKStringUtil.isNullBlank(mskmStat))
		{
			//引継ぎ項目が無い場合：true
			return false;
		}
		
		return true;
	}

	/**
	 * 検索条件の引継ぎが行われていたか判定。
	 * <>
	 * @param 
	 * @param 
	 * @param 
	 */
	@SuppressWarnings("unchecked")
	private void setPulldown(HashMap screenInfoMap)
	{
		// 画面情報
		X31SDataBeanAccess bean = super.getServiceFormBean();
		
		// 申込種別のプルダウン
		X31SDataBeanAccessArray datasbtlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_SBT_INFO);
		X31SDataBeanAccess datasbtBean = datasbtlist.getDataBean(0);
		// 申込ステータスのプルダウン
		X31SDataBeanAccessArray datastatlist = bean.getDataBeanArray(KKW22701SFConst.MSKM_STAT_INFO);
		X31SDataBeanAccess datastatBean = datastatlist.getDataBean(0);
		
		// 遷移先より戻った場合はセッションからデータを取得する
		if (screenInfoMap != null)
		{
			// 申込種別のプルダウン
			String mskmSbt = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_SBT_CD);
			// indexを調べてselectedにする
			ArrayList<String> selParamMskmsbt = new ArrayList<String>();
			getPulldownSelected(datasbtBean, mskmSbt, selParamMskmsbt);
			datasbtBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_SET_VALUE, (String)selParamMskmsbt.get(0));
			
			// 申込ステータスのプルダウン
			String mskmStat = (String)screenInfoMap.get(KKW22701SFConst.PAYWAY_CHG_MSKM_STAT);
			if("000".equals(mskmStat)){
				mskmStat = "";
			}
			// indexを調べてselectedにする
			ArrayList<String> selParamMskmstat = new ArrayList<String>();
			getPulldownSelected(datastatBean, mskmStat, selParamMskmstat);
			datastatBean.sendMessageString(KKW22701SFConst.INDEX_01,
					X31CWebConst.DATABEAN_SET_VALUE, (String)selParamMskmstat.get(0));
		}
		else
		{
			// 申込ステータスのプルダウン
			datastatBean.sendMessageString(KKW22701SFConst.INDEX_01,X31CWebConst.DATABEAN_SET_VALUE, "0");

			// 申込種別のプルダウン
			datasbtBean.sendMessageString(KKW22701SFConst.INDEX_01,X31CWebConst.DATABEAN_SET_VALUE, "0");
		}

	}


}
