/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JFUSbOpSvKeiShokaiCC
*   ソースファイル名：JFUSbOpSvKeiShokaiCC.java
*   作成者          ：富士通
*   日付            ：2011年08月23日
*＜機能概要＞
*   サブオプションサービス契約一意照会コモンコンポーネント部品
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/08/23   FJ）中谷    新規作成
*
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;

import eo.ejb.cbs.cbsmsg.EKK0401A010CBSMsg;

/**
 * サブオプションサービス契約一意照会コモンコンポーネント部品
 * 
 * <br>
 * @author 富士通
 */
public class JFUSbOpSvKeiShokaiCC extends JFUBaseCC
{
	/** テンプレートID */
	private static final String TEMPLATE_ID = "EKK0401A010";
	/** テンプレートID */
	private static final String TEMPLATE_ID_DETAIL = EKK0401A010CBSMsg.EKK0401A010CBSMSG1LIST;
	/** IN項目リスト */
	private static final List<String> IN_COLUMN_LIST;
	/** IN項目値 */
	static
	{
		IN_COLUMN_LIST = Arrays.asList(EKK0401A010CBSMsg.KEY_OP_SVC_KEI_NO, EKK0401A010CBSMsg.KEY_SBOP_SVC_KEI_NO,
				EKK0401A010CBSMsg.KEY_RSV_APLY_YMD
				, EKK0401A010CBSMsg.KEY_GENE_ADD_DTM);
	}
	/** 関連チェックエラー項目 */
	private static final String ERROR_COLUMN = EKK0401A010CBSMsg.KEY_SBOP_SVC_KEI_NO_ERR;

	/**
	 * 検索処理
	 * 
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ管理クラス
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite getResultData(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
			throws Exception
	{
		HashMap inMap = (HashMap)param.getData(fixedText);
		// ＫＥＹ＿予約適用年月日
		inMap.put(EKK0401A010CBSMsg.KEY_RSV_APLY_YMD, JFUBPCommon.getOpeDate(null));
		return executeSC(handle, param, fixedText, TEMPLATE_ID, TEMPLATE_ID_DETAIL, IN_COLUMN_LIST, ERROR_COLUMN);
	}

	/**
	 * チェック処理
	 * 
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return チェック処理用マップ
	 * @throws Exception 
	 */
	public HashMap<String, Object> getInvokeCBS(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
			throws Exception
	{
		return getInvokeCBS(handle, param, fixedText, TEMPLATE_ID, TEMPLATE_ID_DETAIL, IN_COLUMN_LIST);
	}
}
