/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：KKW10101SFLogic
*   ソースファイル名：KKW10101SFLogic.java
*   作成者          ：富士通
*   日付            ：2011年06月08日
*＜機能概要＞
*   電波障害物件一覧照会画面 Viewロジックです。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/06/08   FJ）□□    新規作成
*   v4.00.00    2012/09/19   Fujitsu     ANK-0551-00-00対応
*   v7.00.00    2014/04/04   FJ）澁谷    TAI-2014-0000010対応
*
**********************************************************************/

package eo.web.webview.KKW10101SF;

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.JPCOnlineMessageConstant;
import eo.common.util.JPCEditString;
import eo.common.util.JPCUtilCommon;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCMessageCache;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.mapping.KKSV0205_KKSV0205OPDBMapper;

/**
 * 電波障害物件物件一覧画面のビューロジック処理を行います。
 * @author user
 *
 */
public class KKW10101SFLogic extends JCCWebBusinessLogic
{
	
	
	/**
	 * 電波障害物件一覧照会画面 初期表示処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean init() throws Exception
	{
		
		// 画面情報を取得し、サービスフォームBeanに設定する
		HashMap<String, Object> parameterMap = JCCWebCommon.getScreenInfo(this);
		
		// サービスフォームBeanのアクセスクラス取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess  commonBean = super.getCommonInfoBean();
		
		// 遷移先画面IDを取得 
		//String screenId = commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 遷移元画面ID取得
		String backScreenId = JCCWebCommon.getScreenId(this);
		
		// 画面IDが取得できない場合
		if(isNull(backScreenId))
		{
			commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10101);
			commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10101);
			
		}
		else
		{
			// 検索実行フラグ
			String searchFlg = parameterMap.get(KKW10101SFConst.EXECUTE_SEARCH_FLG).toString();
//			serviceBean.sendMessageBoolean(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.valueOf(searchFlg));
			
			// 検索された状態だった場合再検索を行う
			if(Boolean.valueOf(searchFlg))
			{
				// 共通領域の設定
				setReturnInput(serviceBean, parameterMap);
				
				// 入力された検索条件の退避
				//setBackInput(serviceBean);
				// マッピングクラスに渡すために配列にする
				X31SDataBeanAccess[] paramBean = {serviceBean};
				
				// サービス呼び出し処理
				if(!callService(paramBean, "init"))
				{
					// 検索結果有無フラグ
//					serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_GET_VALUE);
					return true;
					
					/****戻りで検索結果がなければ初期ページを表示しラジオボタンは一番上にする*******/
				}
				// 検索結果有無フラグ
//				serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
				
				// 検索実行フラグ
				serviceBean.sendMessageBoolean(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
				
				// 電波障害案件一覧表を設定する
				setList(paramBean[0], serviceBean);
				
				// 一覧の先頭行のラジオボタンを選択状態にする
				serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(getKeyMuchSelectNo(serviceBean)));
			}
			else
			{
				commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10101);
				commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10101);
			}
		}
		
		
		return true;
	}
	
	/**
	 * 検索ボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean search() throws Exception
	{
		
		// サービスフォームBeanのアクセスクラス取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		

//		// 入力チェック
//		if(inputCheck(serviceBean)){
//			return false;
//		}
		
		// 一覧表示件数をクリア
		serviceBean.sendMessageString(KKW10101SFConst.ZENKEN_CNT, X31CWebConst.DATABEAN_SET_VALUE, "0");
		// 一覧クリア
		serviceBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST).clearArray();
		// 検索結果有無フラグを初期化
		serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.FALSE);
		// 検索時に設定する各フラグをクリア
		serviceBean.sendMessage(KKW10101SFConst.PAGE_NO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.SEARCH_KEY, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_CLEAR);
		
		// ページング情報をクリア
		JCCWebCommon.clearPageLinkInfo(this, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 退避領域をクリア
		clearBack(serviceBean);
		
		
		// 入力された検索条件の退避
		setBackInput(serviceBean);
		
		// マッピングクラスに渡すために配列にする
		X31SDataBeanAccess[] paramBean = {serviceBean};
		
		// サービス呼び出し処理
		if(!callService(paramBean, "search"))
		{
			
			return true;
		}
		
		// 検索結果有無フラグ
//		serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
		
		// 検索実行フラグ
		serviceBean.sendMessageBoolean(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
		
		// 電波障害案件一覧表を設定する
		setList(paramBean[0], serviceBean);
		
		// 一覧の先頭行のラジオボタンを選択状態にする
		serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		return true;
	}
	
	/**
	 * ページリンク処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean changePage() throws Exception
	{
		
		//サービスフォームBean取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		//　共有フォームBeanのアクセスクラス取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		
		// 一覧クリア
		serviceBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST).clearArray();
		
		// マッピングクラスに渡す配列
		X31SDataBeanAccess[] paramBean = {serviceBean};
		
		
		// サービス呼び出し処理
		if(!callService(paramBean, "page"))
		{
			
			return true;
		}
		
		// 電波障害案件一覧表を設定する
		setList(paramBean[0], serviceBean);
	
		// 一覧の先頭行のラジオボタンを選択状態にする
		serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		return true;
	}
	
	/**
	 * 登録ボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean create() throws Exception
	{
		
		// サービスフォームBeanのアクセスクラスを取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラス取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		
		// 次画面引継ぎ用情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> nextDataMap = new HashMap<String, Object>();
		
		// ボタンイベント
		nextDataMap.put(KKW10101SFConst.BTN_EV, "create");
		
		// 次画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10201, nextDataMap);
		
		// 情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> dataMap = setScreenReturnInfo(serviceBean);
		
		
		// 登録画面より戻る際に必要な情報を自画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10101, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10101, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 登録画面と完了画面から戻る際の遷移先を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10201, JKKScreenConst.SCREEN_ID_KKW10101);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10203, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 遷移先画面IDを設定
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10201);
		// 遷移先画面名を設定
//		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10201);
		
		
		return true;
	}
	
	/**
	 * 更新ボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean update() throws Exception
	{
		
		// サービスフォームBeanのアクセスクラスを取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラス取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		
		
		/*************************************/
		// 次画面引継ぎ用情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> nextDataMap = setScreenNextInfo(serviceBean, "update");
		/***********************************/
		
		// 次画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10201, nextDataMap);
		
		// 自画面表示用情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> dataMap = setScreenReturnInfo(serviceBean);
		
		// 更新画面より戻る際に必要な情報を自画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10101, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10101, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 更新画面と完了画面から戻る際の遷移先を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10201, JKKScreenConst.SCREEN_ID_KKW10101);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10203, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 遷移先画面IDを設定
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10201);
		// 遷移先画面名を設定
//		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10201);
		
		
		return true;
	}
	
	/**
	 * 削除ボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean delete() throws Exception
	{
		
		// サービスフォームBeanのアクセスクラスを取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラス取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		
		
		
		// 次画面引継ぎ用情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> nextDataMap = setScreenNextInfo(serviceBean, "delete");
		
		// 次画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10202, nextDataMap);
		
		
		
		// 自画面表示用情報を格納するMAPを生成メソッドの呼出し
		HashMap<String, Object> dataMap = setScreenReturnInfo(serviceBean);
		
		// 更新画面より戻る際に必要な情報を自画面IDをキーに情報設定を行う
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW10101, dataMap);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10101, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 更新画面と完了画面から戻る際の遷移先を設定
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10202, JKKScreenConst.SCREEN_ID_KKW10101);
		JCCWebCommon.setScreenId(this, JKKScreenConst.SCREEN_ID_KKW10203, JKKScreenConst.SCREEN_ID_KKW10101);
		
		// 遷移先画面IDを設定
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10202);
		// 遷移先画面名を設定
//		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10202);
		
		
		return true;
	}
	
	/**
	 * サービス（xxxxxx）の呼び出しを行います。
	 * <br>
	 * @param paramBean パラメータとなるBean情報
	 * @param event ボタンイベント
	 * @return 成否
	 * @throws Exception データベースアクセスエラーが発生した場合
	 */
	private boolean callService(X31SDataBeanAccess[] paramBean, String event) throws Exception
	{
		
		//　共有フォームBeanのアクセスクラス取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();
		
		// 検索処理のユースケースID格納用マップを生成
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0205");
		
		
		// データBeanとBPをマッピングするインスタンスを生成
		KKSV0205_KKSV0205OPDBMapper mapper = new KKSV0205_KKSV0205OPDBMapper();
		
		// 共通情報の設定
		HashMap<String, HashMap<String, Object>> inputMap = new HashMap<String, HashMap<String, Object>>();
		HashMap<String, HashMap<String, Object>> outputMap = new HashMap<String, HashMap<String, Object>>();
		
		// 検索処理パターン(固定値で設定）
		mapper.setKKSV0205CC(paramBean, inputMap, "1");
		
		// 前画面より戻ってきた場合再検索を行う
		if("init".equals(event))
		{
			// 選択されていたキーを取り出す
			String sKey = paramBean[0].sendMessageString(KKW10101SFConst.SEARCH_KEY, X31CWebConst.DATABEAN_GET_VALUE);
			
			inputMap.get("KKSV0205CC").put("search_key", sKey);
		}
		else
		{
			inputMap.get("KKSV0205CC").put("search_key", "");
		}
		
		// ページング情報の設定
		JCCWebCommon.upmapperPageLinkInfo(this, "0", "KKSV0205CC", inputMap);
		
		// サービスの呼び出し
		X31CMessageResult msgResult = invokeService(paramMap, inputMap, outputMap);
		
		// エラー処理
		if(msgResult != null)
		{
			
			JCCWebCommon.setMessageInfo(this, msgResult);
			return false;
		}
		
		// メッセージ定義ファイルを読み込む
		JCCMessageCache.setMessageCache();
		
		// サービス結果の転記
		mapper.getKKSV0205CC(paramBean, outputMap);
		
		// 検索結果有無フラグ
		paramBean[0].sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.TRUE);
		
		// 検索エラーフラグの取得
		String searchErrFlg = JCCWebCommon.getSearchErrFlg("KKSV0205CC", outputMap);
		
		if("1".equals(searchErrFlg))
		{
			// 検索結果が0件の場合の処理
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0330__I);
			// 検索結果有無フラグ
			paramBean[0].sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.FALSE);
//			return false;
			
		}
		else if("2".equals(searchErrFlg))
		{
			// 検索結果が最大検索件数超えの場合の処理
			String[] msg = {JCCWebCommon.getSearchConst("KKW10101_MAX_SHOW_CNT")};
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0340__I, msg);
			// 検索結果有無フラグ
			paramBean[0].sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.FALSE);
//			return false;
			
		}
		else if("3".equals(searchErrFlg))
		{
			// 表示ページに該当するデータがない場合の処理
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0350__I);
			
		}
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this,  "0", "KKSV0205CC", outputMap);
		
		// 検索のコマンドIDを設定する（ページングのイベントIDを設定）
		JCCWebCommon.setSearchCommand(this, "B_CHANGE_PAGE");
		
//		String page = paramBean[0].sendMessageString(KKW10101SFConst.PAGE_NO, X31CWebConst.DATABEAN_GET_VALUE);
		
		
		
		// 遷移先画面IDを設定（自分自身へ）
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10101);
		// 遷移先画面名を設定
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW10101);
		
		return true;
	}
	
	
	/**
	 * 電波障害案件一覧表の表示設定を行います。
	 * <br>
	 * @param paramBean 設定する一覧のBean情報
	 * @param serviceFormBean 設定する画面のServiceFormBean
	 * @throws Exception
	 */
	private void setList(X31SDataBeanAccess paramBean, X31SDataBeanAccess serviceFormBean)	throws Exception
	{
		X31SDataBeanAccessArray ankenList = paramBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST);
		
		int count = ankenList.getCount();
		
		
		for (int i = 0; i < count; i++)	
		{
			
			X31SDataBeanAccess bean = ankenList.getDataBean(i);
			
			// 背景色設定
			if (i % 2 == 0)
			{
				bean.sendMessageString(KKW10101SFConst.L_COLOR_03, X31CWebConst.DATABEAN_SET_VALUE, "odd");
			}
			else
			{
				bean.sendMessageString(KKW10101SFConst.L_COLOR_03, X31CWebConst.DATABEAN_SET_VALUE, "even");
			}
			
			// 住所の編集（都道府県〜建物名までを連結する）
			String ad = addSpace(bean.sendMessageString(KKW10101SFConst.L_STATE_03, X31CWebConst.DATABEAN_GET_VALUE))
						+ addSpace(bean.sendMessageString(KKW10101SFConst.L_CITY_03, X31CWebConst.DATABEAN_GET_VALUE))
						+ addSpace(bean.sendMessageString(KKW10101SFConst.L_OAZTSU_03, X31CWebConst.DATABEAN_GET_VALUE))
						+ addSpace(bean.sendMessageString(KKW10101SFConst.L_AZCHO_03, X31CWebConst.DATABEAN_GET_VALUE))
						+ addSpace(bean.sendMessageString(KKW10101SFConst.L_BNCHIGO_03, X31CWebConst.DATABEAN_GET_VALUE))
						+ addSpace(bean.sendMessageString(KKW10101SFConst.L_ADRTTM_03, X31CWebConst.DATABEAN_GET_VALUE));
			
			bean.sendMessageString(KKW10101SFConst.L_ADD_03, X31CWebConst.DATABEAN_SET_VALUE, ad);
			
			
			// 金額の編集
			String kojihi = bean.sendMessageString(KKW10101SFConst.L_SHK_KOJIHI_03, X31CWebConst.DATABEAN_GET_VALUE);
			if(isNull(kojihi))
			{
				bean.sendMessageString(KKW10101SFConst.L_SHK_KOJIHI_03, X31CWebConst.DATABEAN_SET_VALUE, "0");
			}
			/* ++++++++++ v4.00.00 削除開始 ++++++++++ */
//			String yakumuhi = bean.sendMessageString(KKW10101SFConst.L_YAKUMU_KOJIHI_AMNT_03, X31CWebConst.DATABEAN_GET_VALUE);
//			if(isNull(yakumuhi))
//			{
//				bean.sendMessageString(KKW10101SFConst.L_YAKUMU_KOJIHI_AMNT_03, X31CWebConst.DATABEAN_SET_VALUE, "0");
//			}
			/* ++++++++++ v4.00.00 削除終了 ++++++++++ */
		}

		// 一覧表示件数をサービスより設定する
		serviceFormBean.sendMessageString(KKW10101SFConst.ZENKEN_CNT, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(count));
		
		// ページ番号をサービスより取得する
		
	}
	
	/**
	 * 自画面再表示用に情報をHashMapに詰め込む
     * <BR>
     * @param serviceBean アクセスクラス
     * @return HashMap セッションへセットする情報
	 * @throws Exception 
	 */
	private HashMap<String, Object> setScreenReturnInfo(X31SDataBeanAccess serviceBean) throws Exception
	{
		// 返却用 HashMap
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		
		// アクセスクラスを使用しサービスフォームBeanの項目名をキーとしてMapに転記する
		// 検索条件
		dataMap.put(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM,
				serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO,
				serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_DMPS_BKN_NM, serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG,
				serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_DMPS_BKN_KANA, serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG,
				serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		dataMap.put(KKW10101SFConst.BK_PCD, serviceBean.sendMessageString(KKW10101SFConst.BK_PCD, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_AD_CD, serviceBean.sendMessageString(KKW10101SFConst.BK_AD_CD, X31CWebConst.DATABEAN_GET_VALUE));
		
		dataMap.put(KKW10101SFConst.BK_STATE, serviceBean.sendMessageString(KKW10101SFConst.BK_STATE, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_CITY, serviceBean.sendMessageString(KKW10101SFConst.BK_CITY, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_CITY_BBN_FLG, serviceBean.sendMessageString(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_OAZTSU, serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_OAZTSU_BBN_FLG, serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_AZCHO, serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_AZCHO_BBN_FLG, serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_BNCHIGO, serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_ADRTTM, serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(KKW10101SFConst.BK_ADRTTM_BBN_FLG, serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 検索され一覧表示されている場合
		boolean syori = serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(syori)
		{
			// 選択案件番号
			String selAnken = getKeyAnkenNo(serviceBean);
			dataMap.put(KKW10101SFConst.L_DMPS_ANKEN_NO_03, selAnken);
			
			// 選択位置取得
			dataMap.put(KKW10101SFConst.SELECT_ROW, serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_GET_VALUE));
		}
		
		// ページ番号
//		dataMap.put(KKW10101SFConst.PAGE_NO, serviceBean.sendMessageString(KKW10101SFConst.PAGE_NO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 検索実行フラグ
		dataMap.put(KKW10101SFConst.EXECUTE_SEARCH_FLG, 
				serviceBean.sendMessageBoolean(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		
		return dataMap;
	}
	
	/**
	 * 次画面への引継ぎ情報をHashMapに詰め込む
     * <BR>
     * @param serviceBean アクセスクラス
     * @param event ボタンイベント
     * @return HashMap セッションへセットする情報
	 * @throws Exception 
	 */
	private HashMap<String, Object> setScreenNextInfo(X31SDataBeanAccess serviceBean, String event) throws Exception
	{
		// 返却用 HashMap
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		
		String selAnken = getKeyAnkenNo(serviceBean);
		
		// アクセスクラスを使用しサービスフォームBeanの項目名をキーとしてMapに転記する
		// 検索条件
		dataMap.put(KKW10101SFConst.L_DMPS_ANKEN_NO_03, selAnken);
		
		// ボタンイベント
		dataMap.put(KKW10101SFConst.BTN_EV, event);
		
		return dataMap;
	}
	
	/**
	 * 一覧から選択されている案件番号を取得する
     * <BR>
     * @param serviceBean アクセスクラス
     * @return String 案件番号
	 * @throws Exception 
	 */
	private String getKeyAnkenNo(X31SDataBeanAccess serviceBean)throws Exception
	{
		// 物件一覧取得
		X31SDataBeanAccessArray ankenList = serviceBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST);
		
		// 一覧より選択されたラジオボタンのValue
		String selectRadio = serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 次画面へ渡す案件情報の取得
		X31SDataBeanAccess ankenBean = ankenList.getDataBean(Integer.parseInt(selectRadio));
		
		String selAnken = ankenBean.sendMessageString(KKW10101SFConst.L_DMPS_ANKEN_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
		
		return selAnken;
	}
	
	/**
	 * 再検索時、選択されてた案件番号位置を選択する
     * <BR>
     * @param serviceBean アクセスクラス
     * @return String 案件番号
	 * @throws Exception 
	 */
	private int getKeyMuchSelectNo(X31SDataBeanAccess serviceBean)throws Exception
	{
		int selectNo = 0;
		String key = serviceBean.sendMessageString(KKW10101SFConst.SEARCH_KEY, X31CWebConst.DATABEAN_GET_VALUE);
		
		// 物件一覧取得
		X31SDataBeanAccessArray ankenList = serviceBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST);
		
		
		for(int i = 0; i < ankenList.getCount(); i++)
		{
			
			X31SDataBeanAccess ankenBean = ankenList.getDataBean(i);
			String ankenNo = ankenBean.sendMessageString(KKW10101SFConst.L_DMPS_ANKEN_NO_03, X31CWebConst.DATABEAN_GET_VALUE);
			
			if(key.equals(ankenNo))
			{
				selectNo = i;
				break;
			}
		}
		
		return selectNo;
	}
	
	/**
	 * 入力された検索条件の退避を行う。<BR>
	 * 
     * <BR>
     * @param serviceBean
	 * @throws Exception 
	 */
	private void setBackInput(X31SDataBeanAccess serviceBean) throws Exception
	{
		
		// 案件番号FROM
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 案件番号TO
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 物件名
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.DMPS_BKN_NM, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 物件名部分一致フラグ
		boolean bknFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(bknFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 物件カナ名
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.DMPS_BKN_KANA, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 物件カナ名部分一致フラグ
		boolean kanaFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(kanaFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 郵便番号
		X31SDataBeanAccessArray pcdList = serviceBean.getDataBeanArray(KKW10101SFConst.PCD);
		X31SDataBeanAccess pcdbean = pcdList.getDataBean(0);
		String pcd = pcdbean.sendMessageString(KKW10101SFConst.PCD_1_01, X31CWebConst.DATABEAN_GET_VALUE);
		pcdbean = pcdList.getDataBean(1);
		pcd = pcd + pcdbean.sendMessageString(KKW10101SFConst.PCD_2_01, X31CWebConst.DATABEAN_GET_VALUE);
		serviceBean.sendMessageString(KKW10101SFConst.BK_PCD, X31CWebConst.DATABEAN_SET_VALUE, pcd);
		
		// 住所コード
		X31SDataBeanAccessArray adList = serviceBean.getDataBeanArray(KKW10101SFConst.AD_CD);
		X31SDataBeanAccess adbean = adList.getDataBean(0);
		String adCd = adbean.sendMessageString(KKW10101SFConst.AD_CD_1_02, X31CWebConst.DATABEAN_GET_VALUE);
		adbean = adList.getDataBean(1);
		adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_2_02, X31CWebConst.DATABEAN_GET_VALUE);
		adbean = adList.getDataBean(2);
		adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_3_02, X31CWebConst.DATABEAN_GET_VALUE);
		adbean = adList.getDataBean(3);
		adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_4_02, X31CWebConst.DATABEAN_GET_VALUE);
		serviceBean.sendMessageString(KKW10101SFConst.BK_AD_CD, X31CWebConst.DATABEAN_SET_VALUE, adCd);
		
		// 都道府県
		serviceBean.sendMessageString(KKW10101SFConst.BK_STATE, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.STATE, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 市区町村
		serviceBean.sendMessageString(KKW10101SFConst.BK_CITY, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.CITY, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 市区町村部分一致フラグ
		boolean cityFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.CITY_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(cityFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.CITY_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 大字通称
		serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.OAZTSU, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 大字通称部分一致フラグ
		boolean oazFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(oazFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 字丁目
		serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.AZCHO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 字丁目部分一致フラグ
		boolean azchoFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.AZCHO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(azchoFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.AZCHO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 番地号
		serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.BNCHIGO, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 番地号部分一致フラグ
		boolean banchiFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(banchiFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 建物名
		serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE,
				serviceBean.sendMessageString(KKW10101SFConst.ADRTTM, X31CWebConst.DATABEAN_GET_VALUE));
		
		// 建物名部分一致フラグ
		boolean adrFlg = serviceBean.sendMessageBoolean(KKW10101SFConst.ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if(adrFlg)
		{
			serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		else
		{
			serviceBean.sendMessage(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
//		serviceBean.sendMessageBoolean(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE,
//				serviceBean.sendMessageBoolean(KKW10101SFConst.ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_GET_VALUE));
		
		
		
//		// 検索条件の編集
//		X31SDataBeanAccessArray pcdList = serviceBean.getDataBeanArray(KKW10101SFConst.PCD);
//		if(pcdList.getCount() == 2)
//		{
//			X31SDataBeanAccess pcdbean = pcdList.getDataBean(0);
//			String pcd1 = pcdbean.sendMessageString(KKW10101SFConst.PCD_1_01, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			pcdbean = pcdList.getDataBean(1);
//			String pcd2 = pcdbean.sendMessageString(KKW10101SFConst.PCD_2_01, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			serviceBean.sendMessageString(KKW10101SFConst.PCD, X31CWebConst.DATABEAN_SET_VALUE, JPCUtilCommon.concatPcd(pcd1, pcd2));
//			// 郵便番号を７桁にして退避領域へ
//			serviceBean.sendMessageString(KKW10101SFConst.BK_PCD, X31CWebConst.DATABEAN_SET_VALUE, JPCUtilCommon.concatPcd(pcd1, pcd2));
//		}
//		
//		String adCd = "";
//		X31SDataBeanAccessArray adList = serviceBean.getDataBeanArray(KKW10101SFConst.AD_CD);
//		if(adList.getCount() == 4)
//		{
//			X31SDataBeanAccess adbean = adList.getDataBean(0);
//			adCd = adbean.sendMessageString(KKW10101SFConst.AD_CD_1_02, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			adbean = adList.getDataBean(1);
//			adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_2_02, X31CWebConst.DATABEAN_GET_VALUE);
//			adbean = adList.getDataBean(2);
//			adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_3_02, X31CWebConst.DATABEAN_GET_VALUE);
//			adbean = adList.getDataBean(3);
//			adCd = adCd + adbean.sendMessageString(KKW10101SFConst.AD_CD_4_02, X31CWebConst.DATABEAN_GET_VALUE);
//			
//			
//			serviceBean.sendMessageString(KKW10101SFConst.AD_CD, X31CWebConst.DATABEAN_SET_VALUE, adCd);
//			serviceBean.sendMessageString(KKW10101SFConst.BK_AD_CD, X31CWebConst.DATABEAN_SET_VALUE, adCd);
//		}
		
		
	}
	
	/**
	 * 退避していた検索条件を画面に設定する。<BR>
	 * 退避していた検索条件を検索条件として設定する。<BR>
	 * 
     * <BR>
     * @param serviceBean
     * @param parameterMap 自画面表示用データ
     * 
	 * @throws Exception 
	 */
	private void setReturnInput(X31SDataBeanAccess serviceBean, HashMap<String, Object> parameterMap) throws Exception
	{
		// 一覧で選択されていた行
		String select = (String)parameterMap.get(KKW10101SFConst.SELECT_ROW);
		serviceBean.sendMessageString(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_SET_VALUE, select);
		
		
		// 一覧で選択されていた案件番号
		String strKey = (String)parameterMap.get(KKW10101SFConst.L_DMPS_ANKEN_NO_03);
		serviceBean.sendMessageString(KKW10101SFConst.SEARCH_KEY, X31CWebConst.DATABEAN_SET_VALUE, strKey);
		
		// 次画面遷移時、表示していたページ番号
		String pageNo = (String)parameterMap.get(KKW10101SFConst.PAGE_NO);
		serviceBean.sendMessageString(KKW10101SFConst.PAGE_NO, X31CWebConst.DATABEAN_SET_VALUE, pageNo);
		
//		// 検索実行フラグ
//		String searchFlg = (String)parameterMap.get(KKW10101SFConst.EXECUTE_SEARCH_FLG);
//		serviceBean.sendMessageBoolean(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.valueOf(searchFlg));
		
		// 案件番号From
		String ankenNoFrom = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM);
		serviceBean.sendMessageString(KKW10101SFConst.DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_SET_VALUE, ankenNoFrom);
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_SET_VALUE, ankenNoFrom);
		
		// 案件番号To
		String ankenNoTo = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO);
		serviceBean.sendMessageString(KKW10101SFConst.DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_SET_VALUE, ankenNoTo);
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_SET_VALUE, ankenNoTo);
		
		// 物件名
		String bknNm = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_BKN_NM);
		serviceBean.sendMessageString(KKW10101SFConst.DMPS_BKN_NM, X31CWebConst.DATABEAN_SET_VALUE, bknNm);
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM, X31CWebConst.DATABEAN_SET_VALUE, bknNm);
		
		// 物件名フラグ
		String bknNmBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG);
		if(isNull(bknNmBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 物件カナ名
		String bknKana = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_BKN_KANA);
		serviceBean.sendMessageString(KKW10101SFConst.DMPS_BKN_KANA, X31CWebConst.DATABEAN_SET_VALUE, bknKana);
		serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA, X31CWebConst.DATABEAN_SET_VALUE, bknKana);
		
		// 物件カナ名フラグ
		String bknKanaBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG);
		if(isNull(bknKanaBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 郵便番号
		String pcd = (String)parameterMap.get(KKW10101SFConst.BK_PCD);
		X31SDataBeanAccessArray pcdList = serviceBean.getDataBeanArray(KKW10101SFConst.PCD);
		X31SDataBeanAccess pcdbean = pcdList.getDataBean(0);
		pcdbean.sendMessageString(KKW10101SFConst.PCD_1_01, X31CWebConst.DATABEAN_SET_VALUE, JPCUtilCommon.toTopThreeDigitFromPcd(pcd));
		pcdbean = pcdList.getDataBean(1);
		pcdbean.sendMessageString(KKW10101SFConst.PCD_2_01, X31CWebConst.DATABEAN_SET_VALUE, JPCUtilCommon.toUnderFourDigitFromPcd(pcd));
		serviceBean.sendMessageString(KKW10101SFConst.BK_PCD, X31CWebConst.DATABEAN_SET_VALUE, pcd);
		
		// 住所コード
		String adCd = (String)parameterMap.get(KKW10101SFConst.BK_AD_CD);
		serviceBean.sendMessageString(KKW10101SFConst.BK_AD_CD, X31CWebConst.DATABEAN_SET_VALUE, adCd);
		if(!isNull(adCd) && adCd.length() > 10)
		{
			X31SDataBeanAccessArray adList = serviceBean.getDataBeanArray(KKW10101SFConst.AD_CD);
			X31SDataBeanAccess adbean = adList.getDataBean(0);
			adbean.sendMessageString(KKW10101SFConst.AD_CD_1_02, X31CWebConst.DATABEAN_SET_VALUE, adCd.substring(0, 2));
			adbean = adList.getDataBean(1);
			adbean.sendMessageString(KKW10101SFConst.AD_CD_2_02, X31CWebConst.DATABEAN_SET_VALUE, adCd.substring(2, 5));
			adbean = adList.getDataBean(2);
			adbean.sendMessageString(KKW10101SFConst.AD_CD_3_02, X31CWebConst.DATABEAN_SET_VALUE, adCd.substring(5, 8));
			adbean = adList.getDataBean(3);
			adbean.sendMessageString(KKW10101SFConst.AD_CD_4_02, X31CWebConst.DATABEAN_SET_VALUE, adCd.substring(8));
		}
		
		// 都道府県
		String state = (String)parameterMap.get(KKW10101SFConst.BK_STATE);
		serviceBean.sendMessageString(KKW10101SFConst.STATE, X31CWebConst.DATABEAN_SET_VALUE, state);
		serviceBean.sendMessageString(KKW10101SFConst.BK_STATE, X31CWebConst.DATABEAN_SET_VALUE, state);
		
		// 市区町村
		String city = (String)parameterMap.get(KKW10101SFConst.BK_CITY);
		serviceBean.sendMessageString(KKW10101SFConst.CITY, X31CWebConst.DATABEAN_SET_VALUE, city);
		serviceBean.sendMessageString(KKW10101SFConst.BK_CITY, X31CWebConst.DATABEAN_SET_VALUE, city);
		
		// 市区町村フラグ
		String cityBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_CITY_BBN_FLG);
		if(isNull(cityBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.CITY_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.CITY_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 大字通称
		String oaztsu = (String)parameterMap.get(KKW10101SFConst.BK_OAZTSU);
		serviceBean.sendMessageString(KKW10101SFConst.OAZTSU, X31CWebConst.DATABEAN_SET_VALUE, oaztsu);
		serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU, X31CWebConst.DATABEAN_SET_VALUE, oaztsu);
		
		// 大字通称フラグ
		String oaztsuBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_OAZTSU_BBN_FLG);
		if(isNull(oaztsuBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 字丁目
		String azcho = (String)parameterMap.get(KKW10101SFConst.BK_AZCHO);
		serviceBean.sendMessageString(KKW10101SFConst.AZCHO, X31CWebConst.DATABEAN_SET_VALUE, azcho);
		serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO, X31CWebConst.DATABEAN_SET_VALUE, azcho);
		
		// 字丁目フラグ
		String azchoBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_AZCHO_BBN_FLG);
		if(isNull(azchoBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.AZCHO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.AZCHO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 番地号
		String bnchigo = (String)parameterMap.get(KKW10101SFConst.BK_BNCHIGO);
		serviceBean.sendMessageString(KKW10101SFConst.BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, bnchigo);
		serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO, X31CWebConst.DATABEAN_SET_VALUE, bnchigo);
		
		// 番地号フラグ
		String bnchigoBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_BNCHIGO_BBN_FLG);
		if(isNull(bnchigoBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
		// 建物名
		String adrttm = (String)parameterMap.get(KKW10101SFConst.BK_ADRTTM);
		serviceBean.sendMessageString(KKW10101SFConst.ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adrttm);
		serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM, X31CWebConst.DATABEAN_SET_VALUE, adrttm);
		
		// 建物名フラグ
		String adrttmBbnFlg = (String)parameterMap.get(KKW10101SFConst.BK_ADRTTM_BBN_FLG);
		if(isNull(adrttmBbnFlg))
		{
			serviceBean.sendMessage(KKW10101SFConst.ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
			serviceBean.sendMessage(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		}
		else
		{
			serviceBean.sendMessageBoolean(KKW10101SFConst.ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			serviceBean.sendMessageString(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_SET_VALUE, "0");
		}
		
	}
	
	/**
	 * クリアボタン押下処理
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean clear() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();

		// サービスフォームBeanのアクセスクラスを取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();

		// 画面表示データをクリア
		serviceBean.sendMessage(KKW10101SFConst.DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_NM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_KANA, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		
		X31SDataBeanAccess bean = null;
		X31SDataBeanAccessArray pcdsList = serviceBean.getDataBeanArray(KKW10101SFConst.PCD);
		bean = pcdsList.getDataBean(0);
		bean.sendMessage(KKW10101SFConst.PCD_1_01, X31CWebConst.DATABEAN_CLEAR);
		bean = pcdsList.getDataBean(1);
		bean.sendMessage(KKW10101SFConst.PCD_2_01, X31CWebConst.DATABEAN_CLEAR);
		
		X31SDataBeanAccessArray adList = serviceBean.getDataBeanArray(KKW10101SFConst.AD_CD);
		bean = adList.getDataBean(0);
		bean.sendMessage(KKW10101SFConst.AD_CD_1_02, X31CWebConst.DATABEAN_CLEAR);
		bean = adList.getDataBean(1);
		bean.sendMessage(KKW10101SFConst.AD_CD_2_02, X31CWebConst.DATABEAN_CLEAR);
		bean = adList.getDataBean(2);
		bean.sendMessage(KKW10101SFConst.AD_CD_3_02, X31CWebConst.DATABEAN_CLEAR);
		bean = adList.getDataBean(3);
		bean.sendMessage(KKW10101SFConst.AD_CD_4_02, X31CWebConst.DATABEAN_CLEAR);
		
		serviceBean.sendMessage(KKW10101SFConst.STATE, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.CITY, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.CITY_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.OAZTSU, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.AZCHO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.AZCHO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BNCHIGO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.ADRTTM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		
		// 退避領域をクリア
		clearBack(serviceBean);
		
		// 一覧クリア
		serviceBean.getDataBeanArray(KKW10101SFConst.DMPS_ANKEN_LIST).clearArray();

		// 行番号をクリア
		serviceBean.sendMessage(KKW10101SFConst.SELECT_ROW, X31CWebConst.DATABEAN_CLEAR);

		// 一覧表示件数をクリア
		serviceBean.sendMessageString(KKW10101SFConst.ZENKEN_CNT, X31CWebConst.DATABEAN_SET_VALUE, "0");
		
		// 検索結果有無フラグを初期値に戻す
		//serviceBean.sendMessageBoolean(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_SET_VALUE, Boolean.FALSE);
		serviceBean.sendMessage(KKW10101SFConst.RESULT_UM_FLG, X31CWebConst.DATABEAN_CLEAR);
		// 検索実行フラグを初期値に戻す
		serviceBean.sendMessage(KKW10101SFConst.EXECUTE_SEARCH_FLG, X31CWebConst.DATABEAN_CLEAR);

		// 遷移先画面IDを設定する
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW10101);
		
		
		return true;
	}
	
	/**
	 * 退避項目のクリアを行う。<BR>
	 * 
     * <BR>
     * @param serviceBean
	 * @throws Exception 
	 */
	private void clearBack(X31SDataBeanAccess serviceBean) throws Exception
	{
		// 退避領域をクリア
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_ANKEN_NO_FROM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_ANKEN_NO_TO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_NM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_NM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_KANA, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_DMPS_BKN_KANA_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_PCD, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_AD_CD, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_STATE, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_CITY, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_CITY_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_OAZTSU, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_OAZTSU_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_AZCHO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_AZCHO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_BNCHIGO, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_BNCHIGO_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_ADRTTM, X31CWebConst.DATABEAN_CLEAR);
		serviceBean.sendMessage(KKW10101SFConst.BK_ADRTTM_BBN_FLG, X31CWebConst.DATABEAN_CLEAR);
	}
	
	/**
	 * 引数に全角空白を追加します。
	 * <br>
	 * @param str 編集対象引数
	 * @return 引数に値が設定されていない場合はそのまま返す
	 * @throws Exception 
	 */
	private String addSpace(String str) throws Exception
	{
		
		if(isNull(str))
		{
			return str;
		}
		else
		{
			return JPCEditString.fillSpace(str, str.length() + 1, true);
		}
	}
	
	/**
	 * 引数に値が設定されているか判定します。
	 * <br>
	 * @param arg0 判定する引数
	 * @return 引数に値が設定されていない場合はtrue
	 */
	private boolean isNull(String arg0) 
	{
		if (arg0 == null) 
		{
			return true;
		}

		return 0 == arg0.toString().length();
	}
	
}
