/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：KKW01604SFLogic
*   ソースファイル名：KKW01604SFLogic.java
*   作成者          ：富士通
*   日付            ：2011年11月11日
*＜機能概要＞
*   住所検索画面 Viewロジックです。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/11/11   FJ）□□    新規作成
*
**********************************************************************/

package eo.web.webview.KKW01604SF;

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.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKScreenConst;

public class KKW01604SFLogic extends JCCWebBusinessLogic
{
    
	/**
	 * 確認入力画面 初期表示処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean init() throws Exception
	{
		// 画面情報を取得する
		HashMap<String, Object> parameterMap = JCCWebCommon.getScreenInfo(this);
		
		// サービスフォームBeanのアクセスクラス取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess  commonBean = super.getCommonInfoBean();
		
		if(parameterMap != null)
		{
			String mode = (String)parameterMap.get("key_chk_input_mode");
			
			// 遷移元より画面表示モードを取得する
			serviceBean.sendMessageString(KKW01604SFConst.CHK_INPUT_MODE, X31CWebConst.DATABEAN_SET_VALUE, mode);
		
			// モードが口座振替の場合
			if("1".equals(mode))
			{
				// 遷移元より口座番号を取得する
				serviceBean.sendMessageString(KKW01604SFConst.YOKIN_KOZA_NO, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_yokin_koza_no"));
			}
			// モードが郵便振込の場合
			else if("2".equals(mode))
			{
				// 遷移元より通帳記号を取得する
				serviceBean.sendMessageString(KKW01604SFConst.POST_TSUCHO_SYMBOL, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_post_tsucho_symbol"));
				// 遷移元より通帳番号を取得する
				serviceBean.sendMessageString(KKW01604SFConst.POST_TSUCHO_NO, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_post_tsucho_no"));
			}
			// モードがクレジットの場合
			else if("3".equals(mode))
			{
				// 遷移元よりカード番号１を取得する
				serviceBean.sendMessageString(KKW01604SFConst.CRDT_CARD_NO1, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_crdt_card_no1"));
				// 遷移元よりカード番号２を取得する
				serviceBean.sendMessageString(KKW01604SFConst.CRDT_CARD_NO2, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_crdt_card_no2"));
				// 遷移元よりカード番号３を取得する
				serviceBean.sendMessageString(KKW01604SFConst.CRDT_CARD_NO3, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_crdt_card_no3"));
				// 遷移元よりカード番号４を取得する
				serviceBean.sendMessageString(KKW01604SFConst.CRDT_CARD_NO4, X31CWebConst.DATABEAN_SET_VALUE, (String)parameterMap.get("key_crdt_card_no4"));
			}
		
		}
		
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW01604);
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW01604);

		return true;
	}
	/**
	 * 確認ボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean forwardCfm() throws Exception
	{
		// サービスフォームBeanのアクセスクラス取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();

		// セッションへ詰め込むHashMap生成
		HashMap<String,Object> paramMap = new HashMap<String,Object>();
		
		paramMap.put("ret_cfm_flg", "2");
		
		// 呼出し元画面IDを取得
		String parentScreenId = JCCWebCommon.getScreenId(this);
		
		// 呼出し元画面に渡す情報のセット
		JCCWebCommon.setScreenInfo(this, parentScreenId, paramMap);
		
		// モーダル用反映画面へ画面遷移
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, "CCW00105");
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, "モーダル用反映画面");
		
		return true;
	}
	
	/**
	 * 戻るボタン押下処理。
     * <BR>
	 * @return boolean
	 * @throws Exception 
	 */
	public boolean back() throws Exception
	{
		// サービスフォームBeanのアクセスクラス取得
		X31SDataBeanAccess serviceBean = super.getServiceFormBean();
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commonBean = super.getCommonInfoBean();

		// セッションへ詰め込むHashMap生成
		HashMap<String,Object> paramMap = new HashMap<String,Object>();
		String retCfmFlg = serviceBean.sendMessageString(KKW01604SFConst.CFM_FLG, X31CWebConst.DATABEAN_GET_VALUE);
		if("".equals(retCfmFlg))
		{
			retCfmFlg = "0";
		}
		paramMap.put("ret_cfm_flg", retCfmFlg);
		
		// 呼出し元画面IDを取得
		String parentScreenId = JCCWebCommon.getScreenId(this);
		
		// 呼出し元画面に渡す情報のセット
		JCCWebCommon.setScreenInfo(this, parentScreenId, paramMap);
		
		// モーダル用反映画面へ画面遷移
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, "CCW00105");
		commonBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, "モーダル用反映画面");

		return true;
	}

}
