/*******************************************************************************
*	 All Rights reserved,Copyright (c) K-Opticom 
********************************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CNW00701SFLogic
*	ソースファイル名：CNW00701SFLogic.java
*	作成者			：EK908988
*	日付			：2011年08月03日
*＜機能概要＞
*	チョイスチケット利用一覧照会のViewロジックです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00
*	ｖ4.00.00	2012/12/05	富士通)味岡	ST1-2012-0001018:SYSDATE使用箇所を運用日付使用に置き換え
*
********************************************************************************/

package eo.web.webview.CNW00701SF;

import java.util.ArrayList;
import java.util.EventObject;
import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31CID;
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 com.fujitsu.futurity.web.x33.X33SException;

import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CNW00101SF.CNW00101SFConst;
import eo.web.webview.CNW00501SF.CNW00501SFConst;
import eo.web.webview.CNW00601SF.CNW00601SFConst;
import eo.web.webview.CNW00701SF.CNW00701SFConst;
import eo.web.webview.CNW00801SF.CNW00801SFConst;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCNScreenConst;
import eo.web.webview.common.JCNWebCommon;
import eo.web.webview.common.JCNWebConst;
import eo.web.webview.mapping.CNSV0008_CNSV0008OPDBMapper;
import eo.web.webview.mapping.CNSV0009_CNSV0009OPDBMapper;
import eo.common.constant.JPCModelConstant;

/**
 * チョイスチケット利用一覧照会のViewロジック<p>
 * <BR>
 * @author 富士通
 */
@SuppressWarnings("serial")
public class CNW00701SFLogic extends JCCWebBusinessLogic
{

	/**
	 * 親クラスX31BWebBusinessLogicのreceiveMessageWebを
	 * オーバーライドして自動生成されたメソッドです。
	 * @param arg0 (I) イベント情報
	 * @param arg1 (I) WebFWでは使用しません
	 * @param arg2 (I) WebFWでは使用しません
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws X33SException X33SException
	 */
	@Override
	protected boolean receiveMessageWeb(X31CID arg0, Object arg1,
			EventObject arg2) throws X33SException
	{

		return false;
	}

	/**
	 * チョイスチケット利用一覧の初期表示を行います。<br>
	 * 
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	public boolean action_init() throws Exception
	{

		// 共通Bean取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 親画面のBean取得
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// サービスIFに渡すパラメータ情報取得
		HashMap param = JCCWebCommon.getScreenInfo(this);

		// コンテンツ契約番号
		bean.sendMessageString(CNW00701SFConst.CONT_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.CONT_KEI_NO));
		// 非継続フラグ
		String hikeizoku_flg = (String)param.get(CNW00701SFConst.HIKEIZOKU_FLG);
		bean.sendMessageString(CNW00701SFConst.HIKEIZOKU_FLG, X31CWebConst.DATABEAN_SET_VALUE, hikeizoku_flg);
		// 対象年月
		// ST1-2012-0001018 2012/12/05 n.ajioka START
//		String targetYm = JCCWebCommon.getSysDate().substring(0, 6);
		String targetYm = JCCWebCommon.getOpeDate(this, null).substring(0, 6);
		String targetYmd = JCCWebCommon.getOpeDate(this, null);
		// ST1-2012-0001018 2012/12/05 n.ajioka END
		
		if (hikeizoku_flg.equals(JCNWebConst.HIKEIZOKU_FLG_KEIZOKU))
		{
			// 自動継続であれば、対象年月に当月を設定
			bean.sendMessageString(CNW00701SFConst.TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, targetYm);
		}

		bean.sendMessageString(CNW00701SFConst.EOID, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.EOID));
		bean.sendMessageString(CNW00701SFConst.KANA_NM, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.KANA_NM));
		bean.sendMessageString(CNW00701SFConst.KANA_NM_DSP, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.KANA_NM));
		bean.sendMessageString(CNW00701SFConst.CHOICE_CONT_ID, X31CWebConst.DATABEAN_SET_VALUE,(String)param.get(CNW00701SFConst.CHOICE_CONT_ID));
		bean.sendMessageString(CNW00701SFConst.CHOICE_CINT_NM, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.CHOICE_CINT_NM));
		bean.sendMessageString(CNW00701SFConst.CHOICE_CONT_CNT, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.CHOICE_CONT_CNT));
		bean.sendMessageString(CNW00701SFConst.CONT_KEI_STAT_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.CONT_KEI_STAT_CD));
		bean.sendMessageString(CNW00701SFConst.CONT_KEI_END_DTM, X31CWebConst.DATABEAN_SET_VALUE, (String)param.get(CNW00701SFConst.CONT_KEI_END_DTM));
		
		// マッピングクラスに渡すため、配列に作り変える
		X31SDataBeanAccess[] paramBean = {bean};
		
		// ユースケースID格納用マップ生成
		HashMap paramMap = new HashMap();
		// ユースケースID設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CNSV0008");

		// マッピングクラスのインスタンス作成
		CNSV0008_CNSV0008OPDBMapper mapper = new CNSV0008_CNSV0008OPDBMapper();
		HashMap dataMap = new HashMap();
		mapper.setCNSV000801SC(paramBean, dataMap, "1");
		
		// ページング用マップ取得
		HashMap<String, Object> pagingMap = (HashMap)dataMap.get("CNSV000801SC");
		// 検索処理パターン設定
		pagingMap.put(JCNWebConst.PAGING_INFO_SEARCH_TYPE, JPCModelConstant.SAERCH_TYPE_BBN);
		// 最大検索件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_MAX_SEARCH_NUM, JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT"));
		// 表示件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_DISPLAY_NUM, JCCWebCommon.getSearchConst("CNW00701_ROW_PER_PAGE"));
		// ページング初期設定
		JCCWebCommon.upmapperPageLinkInfo(this, "CNSV000801SC", dataMap);

		// 検索結果格納用マップ生成
		HashMap outputMap = new HashMap();

		// SQL呼出し
		X31CMessageResult msgResult = invokeService(paramMap, dataMap, outputMap);

		// エラー処理 
		if(msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}
		
		// 検索結果の取り出し
		mapper.getCNSV000801SC(paramBean, outputMap, targetYmd);

		// 検索エラーフラグの取得
		String searchError = JCCWebCommon.getSearchErrFlg("CNSV000801SC", outputMap);
		if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchError))
		{
			// 検索結果０件
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_ZERO);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchError))
		{
			// 検索最大件数オーバー
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_MAXOVER, new String[] {JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT")});
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchError))
		{
			// 表示ページに該当するデータなし
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_NODATA);
		}
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this, "CNSV000801SC", outputMap);
		// 検索のコマンドIDを設定する。
		JCCWebCommon.setSearchCommand(this, "PAGING");

		if (hikeizoku_flg.equals(JCNWebConst.HIKEIZOKU_FLG_KEIZOKU))
		{
			// セレクトリストを取り出す
			X31SDataBeanAccessArray targetInfo = bean.getDataBeanArray(CNW00701SFConst.TAISYO_YM_LIST);
			X31SDataBeanAccess targetBean = targetInfo.getDataBean(0);
			for(int i = 0; i < JCNWebConst.CHOICE_TARGET_MONTH_NM; i++)
			{
				// 対象の年月と取得結果の年月を比較
				if (targetBean.sendMessageString(CNW00701SFConst.TRGT_YM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, i).equals(targetYm))
				{
					// 選択値にインデックスを設定
					targetBean.sendMessageString(CNW00701SFConst.SELECT_VALUE_01, X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(i));
					break;
				}
			}
		}

		// 遷移先の画面IDを共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_ID_CNW00701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_NAME_CNW00701);

		return true;
	}

	/**
	 * チョイスチケット利用一覧の検索ボタン押下時の処理を行います。<br>
	 * 
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws Exception
	 */
	public boolean action_search() throws Exception
	{

		// 共通Bean取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 親画面のBean取得
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 非継続フラグが0(継続コンテンツ)であれば、対象年月を取得する
		if (bean.sendMessageString(CNW00701SFConst.HIKEIZOKU_FLG, X31CWebConst.DATABEAN_GET_VALUE).equals(JCNWebConst.HIKEIZOKU_FLG_KEIZOKU))
		{
			X31SDataBeanAccessArray targetInfo = bean.getDataBeanArray(CNW00701SFConst.TAISYO_YM_LIST);
			X31SDataBeanAccess targetBean = targetInfo.getDataBean(0);
			String selectValue = targetBean.sendMessageString(CNW00701SFConst.SELECT_VALUE_01, X31CWebConst.DATABEAN_GET_VALUE);
			// 選択された値から対象年月を取得して、検索条件に追加
			String selectYm = targetBean.sendMessageString(CNW00701SFConst.RIYOU_YM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectValue));
			bean.sendMessageString(CNW00701SFConst.TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, selectYm);
		}
		
		// マッピングクラスに渡すため、配列に作り変える
		X31SDataBeanAccess[] paramBean = {bean};
		
		// ユースケースID格納用マップ生成
		HashMap<String, String> paramMap = new HashMap<String, String>();
		// ユースケースID設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CNSV0009");

		// マッピングクラスのインスタンス作成
		CNSV0009_CNSV0009OPDBMapper mapper = new CNSV0009_CNSV0009OPDBMapper();
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		mapper.setCNSV000901SC(paramBean, dataMap, "1");

		// ページング情報の初期化
		JCCWebCommon.clearPageLinkInfo(this, this.getGamenId());
		// ページング用マップ取得
		HashMap<String, Object> pagingMap = (HashMap)dataMap.get("CNSV000901SC");
		// 検索処理パターン設定
		pagingMap.put(JCNWebConst.PAGING_INFO_SEARCH_TYPE, JPCModelConstant.SAERCH_TYPE_BBN);
		// 最大検索件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_MAX_SEARCH_NUM, JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT"));
		// 表示件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_DISPLAY_NUM, JCCWebCommon.getSearchConst("CNW00701_ROW_PER_PAGE"));
		// ページング初期設定
		JCCWebCommon.upmapperPageLinkInfo(this, "CNSV000901SC", dataMap);

		// 検索結果格納用マップ生成
		HashMap outputMap = new HashMap();

		// SQL呼出し
		X31CMessageResult msgResult = invokeService(paramMap, dataMap, outputMap);

		// エラー処理 
		if(msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}

		// beanのクリア
		bean.getDataBeanArray(CNW00701SFConst.CHOICE_TICKET_LIST).clearArray();

		// 検索結果の取り出し
		mapper.getCNSV000901SC(paramBean, outputMap);

		// 検索エラーフラグの取得
		String searchError = JCCWebCommon.getSearchErrFlg("CNSV000901SC", outputMap);
		if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchError))
		{
			// 検索結果０件
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_ZERO);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchError))
		{
			// 検索最大件数オーバー
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_MAXOVER, new String[] {JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT")});
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchError))
		{
			// 表示ページに該当するデータなし
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_NODATA);
		}
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this, "CNSV000901SC", outputMap);
		// 検索のコマンドIDを設定する。
		JCCWebCommon.setSearchCommand(this, "PAGING");

		// 遷移先の画面IDを共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_ID_CNW00701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_NAME_CNW00701);

		return true;
	}
	
	/**
	 * ページングリンク押下時の処理を行います。<br>
	 * 
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws Exception
	 */
	public boolean action_paging() throws Exception
	{

		// 共通Bean取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 親画面のBean取得
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 非継続フラグが0(継続コンテンツ)であれば、対象年月を取得する
		if (bean.sendMessageString(CNW00701SFConst.HIKEIZOKU_FLG, X31CWebConst.DATABEAN_GET_VALUE).equals(JCNWebConst.HIKEIZOKU_FLG_KEIZOKU))
		{
			X31SDataBeanAccessArray targetInfo = bean.getDataBeanArray(CNW00701SFConst.TAISYO_YM_LIST);
			X31SDataBeanAccess targetBean = targetInfo.getDataBean(0);
			String selectValue = targetBean.sendMessageString(CNW00701SFConst.SELECT_VALUE_01, X31CWebConst.DATABEAN_GET_VALUE);
			// 選択された値から対象年月を取得して、検索条件に追加
			String selectYm = targetBean.sendMessageString(CNW00701SFConst.RIYOU_YM_LIST_01, X31CWebConst.DATABEAN_GET_VALUE, Integer.parseInt(selectValue));
			bean.sendMessageString(CNW00701SFConst.TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, selectYm);
		}

		// マッピングクラスに渡すため、配列に作り変える
		X31SDataBeanAccess[] paramBean = {bean};
		
		// ユースケースID格納用マップ生成
		HashMap<String, String> paramMap = new HashMap<String, String>();
		// ユースケースID設定
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "CNSV0009");

		// マッピングクラスのインスタンス作成
		CNSV0009_CNSV0009OPDBMapper mapper = new CNSV0009_CNSV0009OPDBMapper();
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		mapper.setCNSV000901SC(paramBean, dataMap, "1");

		// ページング用マップ取得
		HashMap<String, Object> pagingMap = (HashMap)dataMap.get("CNSV000901SC");
		// 検索処理パターン設定
		pagingMap.put(JCNWebConst.PAGING_INFO_SEARCH_TYPE, JPCModelConstant.SAERCH_TYPE_BBN);
		// 最大検索件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_MAX_SEARCH_NUM, JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT"));
		// 表示件数設定
		pagingMap.put(JCNWebConst.PAGING_INFO_DISPLAY_NUM, JCCWebCommon.getSearchConst("CNW00701_ROW_PER_PAGE"));
		// ページング初期設定
		JCCWebCommon.upmapperPageLinkInfo(this, "CNSV000901SC", dataMap);

		// 検索結果格納用マップ生成
		HashMap outputMap = new HashMap();

		// SQL呼出し
		X31CMessageResult msgResult = invokeService(paramMap, dataMap, outputMap);

		// エラー処理 
		if(msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}

		// beanのクリア
		bean.getDataBeanArray(CNW00701SFConst.CHOICE_TICKET_LIST).clearArray();

		// 検索結果の取り出し
		mapper.getCNSV000901SC(paramBean, outputMap);

		// 検索エラーフラグの取得
		String searchError = JCCWebCommon.getSearchErrFlg("CNSV000901SC", outputMap);
		if (JPCModelConstant.SEARCH_ERR_FLG_ZERO.equals(searchError))
		{
			// 検索結果０件
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_ZERO);
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_OVERMAX.equals(searchError))
		{
			// 検索最大件数オーバー
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_MAXOVER, new String[] {JCCWebCommon.getSearchConst("CNW00701_MAX_SHOW_CNT")});
		}
		else if (JPCModelConstant.SEARCH_ERR_FLG_NODATA.equals(searchError))
		{
			// 表示ページに該当するデータなし
			JCCWebCommon.setMessageInfo(this, JCNWebConst.SEARCH_ERR_MESSAGE_NODATA);
		}
		
		// ページング情報の設定
		JCCWebCommon.downmapperPageLinkInfo(this, "CNSV000901SC", outputMap);
		// 検索のコマンドIDを設定する。
		JCCWebCommon.setSearchCommand(this, "PAGING");
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_ID_CNW00701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_NAME_CNW00701);

		return true;
	}
	
	/**
	 * 取消ボタン押下時の処理を行います。<br>
	 * 
	 * @return 処理結果（true:正常終了、false:エラー）
	 * @throws Exception
	 */
	public boolean action_confirm() throws Exception
	{
		// 解約確認画面のメッセージエリアの背景色を黄色で設定
		JCNWebCommon.setMessageAreaBackColor(this, "1");

		// 共通Bean取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 親画面のBean取得
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 次画面移送用のマップ作成
		HashMap<String, Object> dataMap = new HashMap<String, Object>();

		// 移送データ設定
		dataMap.put(CNW00801SFConst.CONT_KEI_NO, bean.sendMessageString(CNW00701SFConst.CONT_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.TRGT_YM, bean.sendMessageString(CNW00701SFConst.TRGT_YM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.EOID, bean.sendMessageString(CNW00701SFConst.EOID, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.KANA_NM, bean.sendMessageString(CNW00701SFConst.KANA_NM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.CHOICE_CONT_ID, bean.sendMessageString(CNW00701SFConst.CHOICE_CONT_ID, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.CHOICE_CONT_CNT, bean.sendMessageString(CNW00701SFConst.CHOICE_CONT_CNT, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.CHOICE_CONT_NM, bean.sendMessageString(CNW00701SFConst.CHOICE_CINT_NM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.RIYOU_YM, bean.sendMessageString(CNW00701SFConst.TRGT_YM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.SELECT_VALUE, bean.sendMessageString(CNW00701SFConst.SELECT_VALUE, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.CONT_KEI_STAT_CD, bean.sendMessageString(CNW00701SFConst.CONT_KEI_STAT_CD, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.CONT_KEI_END_DTM, bean.sendMessageString(CNW00701SFConst.CONT_KEI_END_DTM, X31CWebConst.DATABEAN_GET_VALUE));
		dataMap.put(CNW00801SFConst.HIKEIZOKU_FLG, bean.sendMessageString(CNW00701SFConst.HIKEIZOKU_FLG, X31CWebConst.DATABEAN_GET_VALUE));

		// 明細行
		X31SDataBeanAccessArray detailArray = bean.getDataBeanArray(CNW00701SFConst.CHOICE_TICKET_LIST);
		ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
		for (int i = 0; i < detailArray.getCount(); i++)
		{
			X31SDataBeanAccess detail = detailArray.getDataBean(i);
			HashMap<String, String> childMap = new HashMap<String, String>();
			childMap.put(CNW00801SFConst.CONT_ID_01, detail.sendMessageString(CNW00701SFConst.CONT_ID_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.CONT_NM_01, detail.sendMessageString(CNW00701SFConst.CONT_NM_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.USE_STA_DTM_01, detail.sendMessageString(CNW00701SFConst.USE_STA_DTM_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.USE_END_DTM_01, detail.sendMessageString(CNW00701SFConst.USE_END_DTM_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.CHOICE_TICKET_USE_NO_01,
					detail.sendMessageString(CNW00701SFConst.CHOICE_TICKET_USE_NO_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.UPD_DTM_01, detail.sendMessageString(CNW00701SFConst.UPD_DTM_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.UPD_OPEACNT_01, detail.sendMessageString(CNW00701SFConst.UPD_OPEACNT_02, X31CWebConst.DATABEAN_GET_VALUE));
			childMap.put(CNW00801SFConst.CSS_CLASS_NM_01, detail.sendMessageString(CNW00701SFConst.CSS_CLASS_NM_02, X31CWebConst.DATABEAN_GET_VALUE));
			list.add(childMap);
		}
		dataMap.put("DETAIL_LIST", list);

		// 画面情報を設定
		JCCWebCommon.setScreenInfo(this, JCNScreenConst.SCREEN_ID_CNW00801, dataMap);
		JCCWebCommon.setScreenId(this, JCNScreenConst.SCREEN_ID_CNW00801, JCNScreenConst.SCREEN_ID_CNW00701);
		JCCWebCommon.setScreenId(this, JCNScreenConst.SCREEN_ID_CNW00802, JCNScreenConst.SCREEN_ID_CNW00701);

		// 遷移先の画面IDを共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_ID_CNW00801);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_NAME_CNW00801);

		return true;
	}

	/**
	 * 戻るボタン押下.<br>
	 * コンテンツ契約照会画面に遷移する。
	 * 
	 * @return boolean
	 * @throws Exception Exception
	 */
	public boolean action_back() throws Exception
	{
		// サービスフォームBeanの内容の取得
		X31SDataBeanAccess bean = getServiceFormBean();

		// 共通Bean取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();

		// 子画面に渡す情報用HashMap
		HashMap<String, Object> paramMap = new HashMap<String, Object>();

		// 遷移先画面に渡す情報をHashMapに設定する
		paramMap.put(CNW00501SFConst.CONT_KEI_NO, bean.sendMessageString(CNW00701SFConst.CONT_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		paramMap.put(CNW00501SFConst.EOID, bean.sendMessageString(CNW00701SFConst.EOID, X31CWebConst.DATABEAN_GET_VALUE));
		paramMap.put(CNW00501SFConst.CUST_KANA_NM, bean.sendMessageString(CNW00701SFConst.KANA_NM, X31CWebConst.DATABEAN_GET_VALUE));

		// 遷移先画面に渡す情報を設定
		JCCWebCommon.setScreenInfo(this, JCNScreenConst.SCREEN_ID_CNW00501, paramMap);
		JCCWebCommon.setScreenId(this, JCNScreenConst.SCREEN_ID_CNW00501, JCNScreenConst.SCREEN_ID_CNW00601);

		// 遷移先の画面IDを共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_ID_CNW00501);

		// 遷移先の画面名を共有フォームBeanの項目に設定する。
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JCNScreenConst.SCREEN_NAME_CNW00501);

		return true;
	}

}
