/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom, 2011
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：契約管理
 *   モジュール名    ：マンションオーナー一覧
 *   ソースファイル名：KKW12501SFLogic.java
 *   作成者          ：富士通
 *   日付            ：2011年12月30日
 *＜機能概要＞
 *   マンションオーナー一覧ビューロジックです。
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *   v1.00.00    2011/12/19   FJ）富士通  新規作成
 *
 **********************************************************************/
package eo.web.webview.KKW12501SF;

import java.util.ArrayList;
import java.util.HashMap;

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 eo.common.constant.JPCModelConstant;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.KKW12501SF.KKW12501SFConst;
import eo.web.webview.KKW12502SF.KKW12502SFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.mapping.KKSV0274_KKSV0274OPDBMapper;
import eo.web.webview.mapping.KKSV0275_KKSV0275OPDBMapper;

public class KKW12501SFLogic extends JCCWebBusinessLogic {

	/** 空文字 */
	private static final String ENPTY = "";
	
	/** 検索タイプ:初期検索ボタン押下 */
	private static final int SEARCH_TYPE_INIT = 0;
	
	/** 検索タイプ:検索ボタン押下 */
	private static final int SEARCH_TYPE_SEARCH  = 1;

	/** 検索タイプ:ページング押下 */
	private static final int SEARCH_TYPE_PAGING  = 2;

	/** ページング表示モード:表示 */
	private static final String DISP_PAGING_ON = "on";
	
	/** ページング表示モード:非表示 */
	private static final String DISP_PAGING_OFF = "off";
// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO START
	/** ボタン制御（表示） */
	private static final String BTN_FLG_DISP  = "1";
	/** ボタン制御（非表示） */
	private static final String BTN_FLG_NOTDISP  = "0";
// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO END

	/**
	 * 照会画面初期表示処理
	 * @return 正常終了:true 異常修了:false
	 * @throws Exception 
	 */
	public boolean actionInit() throws Exception
	{
		
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		//  セッションから検索条件を取得
		HashMap<String, Object> resultMap = JCCWebCommon.getScreenInfo(this);
		
		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};
// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO START
		// ボタン表示／非表示設定
		String preScreenId = JCCWebCommon.getScreenId(this);
		if (preScreenId == null || "".equals(preScreenId))
		{
			// 閉じるボタン表示
			paramBean[0].sendMessageString(KKW12501SFConst.CL_BTN_FLG,   X31CWebConst.DATABEAN_SET_VALUE, BTN_FLG_DISP);
			// 戻るボタン非表示
			paramBean[0].sendMessageString(KKW12501SFConst.BACK_BTN_FLG, X31CWebConst.DATABEAN_SET_VALUE, BTN_FLG_NOTDISP);
		}
		else
		{
			// 閉じるボタン非表示
			paramBean[0].sendMessageString(KKW12501SFConst.CL_BTN_FLG,   X31CWebConst.DATABEAN_SET_VALUE, BTN_FLG_NOTDISP);
			// 戻るボタン表示
			paramBean[0].sendMessageString(KKW12501SFConst.BACK_BTN_FLG, X31CWebConst.DATABEAN_SET_VALUE, BTN_FLG_DISP);
		}
// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO END
		// 変数の定義
		HashMap<String, Object> paramMap = null;
		HashMap<String, Object> inputMap = null;
		HashMap<String, Object> outputMap = null;
		
		paramMap = new HashMap<String, Object>();		//パラメタ設定用マップ
		inputMap = new HashMap<String, Object>();		//データマップ
		outputMap = new HashMap<String, Object>();		//結果格納用マップ
		
		// パラメタ設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0274);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0274);

		KKSV0274_KKSV0274OPDBMapper mapper = new KKSV0274_KKSV0274OPDBMapper();
		mapper.setKKSV027401SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_3);

		// マンションオーナー初期表示サービス実行
		invokeService(paramMap, inputMap, outputMap);	
		
		// 取得情報の下りマッピング
		mapper.getKKSV027401SC(paramBean, outputMap);

		if (resultMap != null && resultMap.containsKey(KKW12501SFConst.HIKI_MANSION_ID)) {

			// マンションオーナー一覧照会マップ.ＫＥＹ＿マンションオーナー都道府県名選択
			selectPulldown(paramBean, KKW12501SFConst.JOKEN_MANSD_AD_STATE_PDN, (String) resultMap.get(KKW12501SFConst.JOKEN_MANSD_AD_STATE));

			// マンション一覧検索共通処理を呼び出す。
			searchMansionItiran(svcFormBean, resultMap, SEARCH_TYPE_INIT);
			
			// 詳細画面で表示したマンションIDを取得
			String workSyokaiMansionId = (String) resultMap.get(KKW12501SFConst.HIKI_MANSION_ID);

			// 表示データから詳細画面で表示したマンションIDがあるかを検索する。
			X31SDataBeanAccessArray listKKSV027502SC_mans_ownr_list_EZM0171A010CBSMsg1List = paramBean[0].getDataBeanArray(KKW12501SFConst.MANS_OWNR_LIST);
			
			if(listKKSV027502SC_mans_ownr_list_EZM0171A010CBSMsg1List != null) {
				// 表示一覧データありの場合
				
				boolean find = false;
				for (int i = 0; i < listKKSV027502SC_mans_ownr_list_EZM0171A010CBSMsg1List.getCount(); i++) {
					
					X31SDataBeanAccess subbean = listKKSV027502SC_mans_ownr_list_EZM0171A010CBSMsg1List.getDataBean(i);
					
					if (workSyokaiMansionId.equals(subbean.sendMessageString("照会情報＿マンションオーナーＩＤ", X31CWebConst.DATABEAN_GET_VALUE))) {
						// みつかった場合にはその行のマンション一覧をデフォルト選択する
						find = true;
						paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(i));
						break;
					}

				}
				
				if (!find) {
					
					// みつからない場合には先頭を選択
					paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "0");
					
				}

			}
			
			// スクリーン情報のマンションIDを削除
			resultMap.remove(KKW12501SFConst.HIKI_MANSION_ID);

		} else {

			//ページ番号のリセット
			JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW12501);
			
			// ページング表示制御（非表示）
			paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_OFF);

		}

		//共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW12501);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW12501);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 照会画面初期表示処理
	 * @return 正常終了:true 異常修了:false
	 * @throws Exception 
	 */
	public boolean actionSearch() throws Exception
	{
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// マンション一覧検索共通処理を呼び出す。
		searchMansionItiran(svcFormBean, JCCWebCommon.getScreenInfo(this), SEARCH_TYPE_SEARCH);
		
		//共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW12501);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW12501);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * ページングリンク処理を行います。
	 * <br>
	 * @return true:正常
	 * @exception Exceptionがスローされます。
	 */
	public boolean actionPaging() throws Exception
	{
		
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();

		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// マンション一覧検索共通処理を呼び出す。
		searchMansionItiran(svcFormBean, JCCWebCommon.getScreenInfo(this), SEARCH_TYPE_PAGING);
		
		//共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW12501);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW12501);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 検索処理共通処理。
	 * <br>
	 * @return true:正常
	 * @exception Exceptionがスローされます。
	 */
	public void searchMansionItiran(X31SDataBeanAccess svcFormBean, HashMap<String, Object> searchConditionMap, int search_type) throws Exception {

		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		// マンションオーナー一覧初期化
		paramBean[0].getDataBeanArray(KKW12501SFConst.MANS_OWNR_LIST).clearArray();
		paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		if (search_type == SEARCH_TYPE_INIT) {
			
			// 再表示用最新検索データ保持データ設定
			backupParam(paramBean);

		} else if (search_type == SEARCH_TYPE_SEARCH) {
			
			// 再表示用最新検索データ保持データ設定
			backupParam(paramBean);
			
			//ページ番号のリセット
			JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW12501);
			
		} else if (search_type == SEARCH_TYPE_PAGING) {

		}
		
		// 変数の定義
		HashMap<String, Object> paramMap = null;
		HashMap<String, Object> inputMap = null;
		HashMap<String, Object> outputMap = null;
		
		paramMap = new HashMap<String, Object>();		//パラメタ設定用マップ
		inputMap = new HashMap<String, Object>();		//データマップ
		outputMap = new HashMap<String, Object>();		//結果格納用マップ
		
		// パラメタ設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0275);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0275);

		// マンション一覧検索パラメータ各種設定
		KKSV0275_KKSV0275OPDBMapper mapper = new KKSV0275_KKSV0275OPDBMapper();
		mapper.setKKSV027501SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);

		// ページング情報の設定
		JCCWebCommon.upmapperPageLinkInfo(this, "0", "KKSV027501SC", inputMap);

		// マンションオーナー初期表示サービス実行
		invokeService(paramMap, inputMap, outputMap);	
		
		// 検索エラーフラグの取得
		String searchErrFlg = JCCWebCommon.getSearchErrFlg("KKSV027501SC", outputMap);

		// 検索結果が0件の場合の処理
		if(JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchErrFlg))
		{
			// メッセージ設定
			JCCWebCommon.setMessageInfo(this, "EKB0330--I");
			
			// リスト選択なし
			paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "");

			// ページング表示制御（非表示）
			paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_OFF);

			return;
			
		// 検索結果が最大検索件数超えの場合の処理
		}
		else if(JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchErrFlg))
		{
			// メッセージ設定
			String[] msg = {JCCWebCommon.getSearchConst("KKW12501_MAX_SHOW_CNT")};
			JCCWebCommon.setMessageInfo(this, "EKB0340--I", msg);
			
			// リスト選択なし
			paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "");

			// ページング表示制御（非表示）
			paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_OFF);

			return;

		// 表示ページに該当するデータがない場合の処理
		}
		else if(JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchErrFlg))
		{
			// 一覧選択なし
			paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "");
			
			// メッセージ設定
			JCCWebCommon.setMessageInfo(this, "EKB0350--I");

			// ページング表示制御（表示）
			paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_OFF);

		}
		else{
			// 一覧１行目の選択
			paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "0");
			
			// ページング表示制御（表示）
			paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_ON);

		}

		// 取得情報の下りマッピング
		mapper.getKKSV027501SC(paramBean, outputMap);
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this,  "0", "KKSV027501SC", outputMap);

		// 検索のコマンドIDを設定する。
		JCCWebCommon.setSearchCommand(this, "paging");

		return;
	}	

	/**
	 * 画面項目のクリア処理を行います。
	 * <br>
	 * @return true:正常
	 * @exception Exceptionがスローされます。
	 */
	public boolean actionClear() throws Exception
	{
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		//  セッションから検索条件を取得
		JCCWebCommon.getScreenInfo(this);
		
		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// マンションオーナー一覧照会マップ.ＫＥＹ＿マンションオーナーＩＤクリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_ID, X31CWebConst.DATABEAN_SET_VALUE, new String());
		// マンションオーナー一覧照会マップ.ＫＥＹ＿マンションオーナー名クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_NM, X31CWebConst.DATABEAN_SET_VALUE, new String());
		// マンションオーナー一覧照会マップ.ＫＥＹ＿マンションオーナーカナ名クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_KANA, X31CWebConst.DATABEAN_SET_VALUE, new String());

		// マンションオーナー一覧照会マップ.ＫＥＹ＿代表者連絡先都道府県名空選択
		selectPulldown(paramBean, KKW12501SFConst.JOKEN_MANSD_AD_STATE_PDN, "0");
		// マンションオーナー一覧照会マップ.ＫＥＹ＿代表者連絡先市区町村名クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_CITY, X31CWebConst.DATABEAN_SET_VALUE, new String());
		// マンションオーナー一覧照会マップ.ＫＥＹ＿代表者連絡先大字通称名クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_OAZTSU, X31CWebConst.DATABEAN_SET_VALUE, new String());
		// マンションオーナー一覧照会マップ.ＫＥＹ＿代表者連絡先字丁目名クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_AZCHO, X31CWebConst.DATABEAN_SET_VALUE, new String());
		// マンションオーナー一覧照会マップ.ＫＥＹ＿代表者連絡先番地号クリア
		paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, new String());

		//ページ番号のリセット
		JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW12501);
		
		// ページング表示制御（非表示）
		paramBean[0].sendMessageString(KKW12501SFConst.PAGE_LINK_FLG, X31CWebConst.DATABEAN_SET_VALUE, DISP_PAGING_OFF);

		// マンションオーナーリストの初期化
		paramBean[0].getDataBeanArray(KKW12501SFConst.MANS_OWNR_LIST).clearArray();

		// 一覧選択なし
		paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_SET_VALUE, "");
		
		//共有フォームBean設定
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW12501);
		commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW12501);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 詳細ボタン押下処理を行います。
	 * <br>
	 * @return true:正常
	 * @exception Exceptionがスローされます。
	 */
	public boolean actionDetail() throws Exception
	{
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		//  セッションから検索条件を取得
		JCCWebCommon.getScreenInfo(this);
		
		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};

		// マンション一覧情報選択値と同値を持つマンション情報を取得し、画面へ受け渡す制御項目の設定を行う。
		String sel = paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_GET_VALUE);
		
		if (!"".equals(sel)) {
			// 選択あり
			
			// 選択値より、マンションオーナーIDを取得
			X31SDataBeanAccessArray mansion_owner_list = paramBean[0].getDataBeanArray(KKW12501SFConst.MANS_OWNR_LIST);
			X31SDataBeanAccess mansion_owner_subbean = mansion_owner_list.getDataBean(Integer.parseInt(sel));
			String mansion_owner_id = mansion_owner_subbean.sendMessageString(KKW12501SFConst.SHOKAI_INF_MANS_OWNR_ID_02, X31CWebConst.DATABEAN_GET_VALUE);

			// 詳細画面に渡す情報をHashMapに設定
			// 引継ぎ情報の設定 
			HashMap<String, Object> hikiMap = new HashMap<String, Object>();

			// サービス選択画面への引継ぎ 
			HashMap<String, Object> dataMap = new HashMap<String, Object>();
			
			// マンションオーナーＩＤ
			dataMap.put(KKW12502SFConst.HIKI_MANSION_ID, mansion_owner_id);
			
			ArrayList<HashMap<String, Object>> dataArray = new ArrayList<HashMap<String, Object>>();
			dataArray.add( dataMap );
			
			//顧客契約引継リストとしてdataMapに設定
			hikiMap.put(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST, dataArray);

			// 引継情報の設定
			JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW12502, hikiMap);

			// 画面戻り時の表示データを保持
			HashMap<String, Object> returnMap = setReSearchData(paramBean);
			
			// 戻り先画面ＩＤ設定
			JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW12501, returnMap);
			JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW12502, JKKScreenConst.SCREEN_ID_KKW12501);

			// 遷移先情報の設定
			X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, 
					JKKScreenConst.SCREEN_ID_KKW12502);
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, 
					JKKScreenConst.SCREEN_NAME_KKW12502);

		} else {
			
			//共有フォームBean設定
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW12501);
			commonInfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW12501);
			
		}
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * バックアップデータから画面データを復元する処理
	 * <br>
	 * @param paramBean DataBean項目の配列
	 */
	private HashMap<String, Object> setReSearchData(X31SDataBeanAccess[] paramBean)
	{

		// 次画面から戻ってくる際の引継情報(引継Map)を作成する。
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// 検索条件を設定
		dataMap.put(KKW12501SFConst.JOKEN_MANS_OWNR_ID, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANS_OWNR_ID, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANS_OWNR_NM, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANS_OWNR_NM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANS_OWNR_KANA, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANS_OWNR_KANA, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANSD_AD_STATE, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANSD_AD_STATE, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANSD_AD_CITY, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANSD_AD_CITY, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANSD_AD_OAZTSU, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANSD_AD_OAZTSU, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANSD_AD_AZCHO, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANSD_AD_AZCHO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.JOKEN_MANSD_AD_BNCHIGO, paramBean[0].sendMessageString(
				KKW12501SFConst.BK_MANSD_AD_BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW12501SFConst.MANS_OWNR_LIST_INDEX, paramBean[0].sendMessageString(
				KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_GET_VALUE));

		// 選択値より、マンションオーナーIDを取得
		String sel = paramBean[0].sendMessageString(KKW12501SFConst.MANS_OWNR_LIST_INDEX, X31CWebConst.DATABEAN_GET_VALUE);
		X31SDataBeanAccessArray mansion_owner_list = paramBean[0].getDataBeanArray(KKW12501SFConst.MANS_OWNR_LIST);
		X31SDataBeanAccess mansion_owner_subbean = mansion_owner_list.getDataBean(Integer.parseInt(sel));
		String mansion_owner_id = mansion_owner_subbean.sendMessageString(KKW12501SFConst.SHOKAI_INF_MANS_OWNR_ID_02, X31CWebConst.DATABEAN_GET_VALUE);
		dataMap.put(KKW12501SFConst.HIKI_MANSION_ID, mansion_owner_id);

		return dataMap;
	}

	/**
	 * 再表示データの設定処理
	 * <br>
	 * @param paramBean DataBean項目の配列
	 */
	private void backupParam(X31SDataBeanAccess[] paramBean)
	{

		String str = null;
		
		// 退避情報の初期化
		clearBackupParam(paramBean);
		
		// 検索条件を退避
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_ID, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_ID, X31CWebConst.DATABEAN_SET_VALUE, str);
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_NM, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_NM, X31CWebConst.DATABEAN_SET_VALUE, str);
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANS_OWNR_KANA, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_KANA, X31CWebConst.DATABEAN_SET_VALUE, str);

		// 都道府県名プルダウンから選択値を取得
		X31SDataBeanAccessArray dihyshaRrksStateNmList = paramBean[0].getDataBeanArray(KKW12501SFConst.JOKEN_MANSD_AD_STATE_PDN);
		X31SDataBeanAccess dihyshaRrksStateNm = dihyshaRrksStateNmList.getDataBean(0);
		// 添え字の取得
		String dihyshaRrksStateNmIndex = dihyshaRrksStateNm.sendMessageString(KKW12501SFConst.INDEX_01, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_STATE, X31CWebConst.DATABEAN_SET_VALUE, dihyshaRrksStateNmIndex);

		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_CITY, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_CITY, X31CWebConst.DATABEAN_SET_VALUE, str);
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_OAZTSU, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_OAZTSU, X31CWebConst.DATABEAN_SET_VALUE, str);
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_AZCHO, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_AZCHO, X31CWebConst.DATABEAN_SET_VALUE, str);
		str = paramBean[0].sendMessageString(KKW12501SFConst.JOKEN_MANSD_AD_BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, str);

	}
	
	/**
	 * 退避領域を初期化します。
	 * <br>
	 */
	private void clearBackupParam(X31SDataBeanAccess[] paramBean)
	{

		// 退避項目の初期化
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_ID, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_NM, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANS_OWNR_KANA, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_STATE, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_CITY, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_OAZTSU, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_AZCHO, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);
		paramBean[0].sendMessageString(KKW12501SFConst.BK_MANSD_AD_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, ENPTY);

	}
	
	/**
	 * プルダウンを選択します。
	 * <br>
	 */
	private void selectPulldown(X31SDataBeanAccess[] paramBean, String pdnName, String index)
	{
		X31SDataBeanAccessArray pulldownInfList = paramBean[0].getDataBeanArray(pdnName);
		X31SDataBeanAccess pulldownInf = pulldownInfList.getDataBean(0);
		pulldownInf.sendMessageString(pdnName, X31CWebConst.DATABEAN_SET_VALUE,  index);
		pulldownInf.sendMessageString(KKW12501SFConst.INDEX_01,X31CWebConst.DATABEAN_SET_VALUE, index);
	}

// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO START
	/**
	 * 戻るボタン処理を行います。 <br>
	 * 
	 * @param		なし
	 * @return		boolean		true[正常]
	 * @exception	Exceptionがスローされます。
	 */
	public boolean actionBack() throws Exception
	{
		// 戻り先画面情報の設定
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getScreenId(this));

		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}
// ANK-1291-00-00 画面組み換え対応 ADD 2012.11.27 Y.MORIMOTO END
}
