/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom, 2011
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：契約管理
 *   モジュール名    ：マンションオーナー情報照会
 *   ソースファイル名：KKW12502SFLogic.java
 *   作成者          ：富士通
 *   日付            ：2011年12月22日
 *＜機能概要＞
 *   マンションオーナー情報照会ビューロジックです。
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *   v1.00.00    2011/12/22   FJ）富士通  新規作成
 *
 **********************************************************************/
package eo.web.webview.KKW12502SF;

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 eo.common.constant.JPCModelConstant;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.mapping.KKSV0307_KKSV0307OPDBMapper;

public class KKW12502SFLogic extends JCCWebBusinessLogic {

	/**
	 * 照会画面初期表示処理
	 * @return 正常終了:true 異常修了:false
	 * @throws Exception 
	 */
	public boolean actionInit() throws Exception
	{
		
		//共有Bean アクセスクラスの取得
		X31SDataBeanAccess commonInfoBean = super.getCommonInfoBean();
		//サービスフォームBean アクセスクラスの取得
		X31SDataBeanAccess svcFormBean = super.getServiceFormBean();

		// マッピング用paramBeanセット
		X31SDataBeanAccess[] paramBean = {svcFormBean};
		
		// セッションから検索条件を取得
		HashMap sessionParam = JCCWebCommon.getScreenInfo(this);

		// 引継ぎ情報取得
		ArrayList dataArray = (ArrayList) sessionParam.get(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		HashMap<String, Object> hktgiMap = (HashMap<String, Object>) dataArray.get(0);

		// パラメータの取得
		setInitParamToBean(paramBean, hktgiMap);
		
		// 変数の定義
		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_KKSV0307);
		paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0307);

		KKSV0307_KKSV0307OPDBMapper mapper = new KKSV0307_KKSV0307OPDBMapper();
		mapper.setKKSV030701SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1);

		// マンションオーナー照会初期表示サービス実行
		invokeService(paramMap, inputMap, outputMap);	
		
		// 取得情報の下りマッピング
		mapper.getKKSV030701SC(paramBean, outputMap);

		//共有フォームBean設定
		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);
		
		// DataBeanログ出力
		JSYwebLog.println(JSYwebLog.DataBean_Dump, getClass(), dumpDatabean(), null, null, null);

		return true;
	}

	/**
	 * 画面パラメータの取得処理
	 * <br>
	 * @param paramBean DataBean項目の配列
	 */
	private void setInitParamToBean(X31SDataBeanAccess[] paramBean, HashMap hikiParam)
	{
		// 退避項目の初期化
		paramBean[0].sendMessageString(KKW12502SFConst.MANSION_OWNR_ID, X31CWebConst.DATABEAN_SET_VALUE, (String)hikiParam.get(KKW12502SFConst.HIKI_MANSION_ID));
	}

	/**
	 * 照会画面戻る処理
	 * @return 正常終了:true 異常修了:false
	 * @throws Exception 
	 */
	public boolean actionBack() throws Exception
	{
		
		// 遷移先情報の設定　マンションオーナー一覧(KKW12501)
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
		commoninfoBean.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;
	}
		
}
