/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：TUW02201SFLogic
*	ソースファイル名：TUW02201SFLogic.java
*	作成者			：FJ
*	日付			：2011年06月14日
*＜機能概要＞
*	番ポ工事予約状況一覧照会のロジッククラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v3.00.00	2011/06/13	FJ)宮本		新規作成
*
**********************************************************************/
package eo.web.webview.TUW02201SF;

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 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.JTUScreenConst;
import eo.web.webview.common.JTUWebCommon;
import eo.web.webview.mapping.TUSV0061_TUSV0061OPDBMapper;


/**
 * TUW02201のビューロジック
 * @author FJ
 *
 */
public class TUW02201SFLogic extends JCCWebBusinessLogic
{
	/**
	 * サービスID
	 */
	private static final String USECASE_ID = "TUSV0061";

	/**
	 * 初期表示処理
	 * @return boolean
	 * @throws Exception
	 */
	public boolean action_init() throws Exception
	{
		return tuw02201_init();
	}
	
	/**
	 * 初期化処理
	 * @return boolean
	 */
	private boolean tuw02201_init()
	{
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME
								, X31CWebConst.DATABEAN_SET_VALUE, JTUScreenConst.SCREEN_NAME_TUW02201);
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得。
		X31SDataBeanAccess bean = super.getServiceFormBean();
		// パラメータ作成
		X31SDataBeanAccess[] paramBean = {bean};
		
		// 戻るボタンの表示要否判定
		bean.sendMessageString(TUW02201SFConst.BACK_BTN_DSP_FLG, X31CWebConst.DATABEAN_SET_VALUE
				, JTUWebCommon.getBackDispFlg(this, this.getGamenId()));
		
		/**
		 * サービス呼出処理
		 */
		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID);

		// マッピングクラスのインスタンスを生成
		TUSV0061_TUSV0061OPDBMapper mapper = new TUSV0061_TUSV0061OPDBMapper();
		// 上り格納マップ
		HashMap<String, Object> inputMap = new HashMap<String, Object>();
		// 下り格納マップ
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// 上りマッピング
		// マッピングクラスの呼び出し
		String opeDate = JCCWebCommon.getOpeDate(this, null);
		mapper.setTUSV006101SC(paramBean, inputMap, JPCModelConstant.FUNC_CD_1, opeDate);

		// サービス呼出 
		X31CMessageResult msgResult = invokeService(paramMap, inputMap, outputMap);

		// エラー処理 
		if(msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}

		// 下りマッピング
		// マッピングクラスの呼び出し
		mapper.getTUSV006101SC(paramBean, outputMap);
		
		//行スタイル設定
		JTUWebCommon.setRowStyle(bean, TUW02201SFConst.ETU0141B010CBSMSG1LIST, TUW02201SFConst.ROW_STYLE_01);
		
		return true;
	}
	
	
	/**
	 * 先頭画面 戻る遷移処理
	 * @return boolean
	 * @throws Exception
	 */
	public boolean action_top_back() throws Exception
	{
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess  commoninfoBean = super.getCommonInfoBean();
		/**
		 * DataBean設定処理
		 */
		// 遷移先の情報を共有フォームBeanの項目に設定する。
		JTUWebCommon.setNextScreenInfo(commoninfoBean, JTUWebCommon.getScreenId(this), "");
		
		return true;
	}
}

