/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：FUSV0273_FUSV0273OPDBMapper
*	ソースファイル名：FUSV0273_FUSV0273OPDBMapper.java
*	作成者			：富士通
*	日付			：2013年10月02日
*＜機能概要＞
*	BP（サービス契約申込情報取得）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v5.00       2013/10/02  FJ)岡井     新規作成
*   v8.00.00    2014/04/13   FJ) 文元    【ANK-1997-00-00】【ＮＯ．１３８３】商品券CPの新設(カカクコム、関電CSフォーラム)対応
*
**********************************************************************/
package eo.web.webview.mapping;

import java.util.ArrayList;
import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;

import eo.common.constant.JFUStrConst;
import eo.web.webview.common.JFUWebCommon;

/**
 * DataBean-BPマッピングをする。
 *
 * @author user
 */
public class FUSV0273_FUSV0273OPDBMapper
{

	// ■SC・CC名
	/** FUSV027301CC */
	private static final String FUSV027301CC = "FUSV027301CC";

	// ■項目名
	/** 割引サービスコードリスト */
	private static final String IN_WRIB_SVC_CD_LIST = "wrib_svc_cd_list";
	/** 割引サービスコード */
	private static final String IN_WRIB_SVC_CD = "wrib_svc_cd";
	/** 取扱コード */
	private static final String IN_TRAT_CD = "trat_Cd";
	/** 料金グループコード */
	private static final String IN_PRC_GRP_CD = "prc_grp_cd";
	/** 料金コースコード */
	private static final String IN_PCRS_CD = "pcrs_cd";
	/** 料金プランコード */
	private static final String IN_PPLAN_CD = "pplan_cd";
	
	/**
	 * コンストラクタです。
	 */
	public FUSV0273_FUSV0273OPDBMapper()
	{
	}

	/**
	 * マンション割引適用可能チェックCCの上りマッピング処理です。
	 * <br>
	 * @param bean データBean配列
	 * @param outputMap アウトマップ
	 * @param func_code 機能コード
	 * @param wribSvcCd 割引サービスコード
	 * @param tratCd 取扱コード
	 * @return HashMap マップ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> setFUSV027301CC(X31SDataBeanAccess[] bean, HashMap outputMap, String wribSvcCd, String tratCd) throws Exception
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 情報格納変数
		ArrayList wribSvcList = new ArrayList();
		HashMap wribSvcMap = new HashMap();

		// 取扱コードに設定ありの場合
		if (!JFUWebCommon.isNull(tratCd))
		{
			// 取扱コード
			parentMap.put(IN_TRAT_CD, tratCd);
			
			// 料金グループコード
			parentMap.put(IN_PRC_GRP_CD, JFUStrConst.CD00133_04);

			// ※料金コースと料金グループの指定がないと表示用データ抽出項目コードを取得できない為
			// マンションいずれかの料金コースと料金プランを設定している
			// 料金コースコード 
			parentMap.put(IN_PCRS_CD, JFUStrConst.CD00134_A50);
			
			// 料金プランコード
			parentMap.put(IN_PPLAN_CD, JFUStrConst.CD00565_PA5001);
			
			outputMap.put(FUSV027301CC, parentMap);
		}
		else
		{
			// 割引サービスコード取得
			if(!JFUWebCommon.isNull(wribSvcCd))
			{
				wribSvcMap.put(IN_WRIB_SVC_CD, wribSvcCd);
			}
			else
			{
				wribSvcMap.put(IN_WRIB_SVC_CD, JFUStrConst.EMPTY);
			}

			// リストに追加
			wribSvcList.add(wribSvcMap);

			// INリストを設定
			parentMap.put(IN_WRIB_SVC_CD_LIST, wribSvcList);
			
			outputMap.put(FUSV027301CC, parentMap);
		}

		return outputMap;
	}
}