/*********************************************************************
 *	All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *	システム名		：eo顧客基幹システム
 *	モジュール名	：JCRSendMailUtil
 *	ソースファイル名：JCRSendMailUtil.java
 *	作成者			：富士通
 *	日付			：2014年03月08日
 *＜機能概要＞
 *	顧客対応履歴管理 Webファイル共通処理部品
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	v7.00.00	2014/03/08	富士通		新規作成
 *
 **********************************************************************/

package eo.web.webview.common;

import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31BWebBusinessLogic;
import com.fujitsu.futurity.web.x31.X31CWebConst;

public class JCRSendMailUtil
{

	/** ユースケースＩＤ CRSV0279 */
	private static final String USECASE_ID_CRSV0279 = "CRSV0279";

	/** ユースケースＩＤ CRSV0280 */
	private static final String USECASE_ID_CRSV0280 = "CRSV0280";

	/** メール送信CC */
	public static final String SENDMAILCC = "SENDMAILCC";

	/** メール送信（ＮＧワード）CC */
	public static final String SENDMAILNGWORDCC = "SENDMAILNGWORDCC";

	/**
	 * メール送信CCを実行し、結果を返します。
	 * <BR>
	 * @param bl        VIEWロジックインスタンス
	 * @param parentMap 上りマッピングデータ
	 * @param funcCode  機能コード
	 * @return サービス実行結果
	 * @throws Exception
	 */
	public static HashMap<String, Object> callSendMailCC(X31BWebBusinessLogic bl, HashMap<String, Object> parentMap, String funcCode) throws Exception
	{
		// ユースケースID格納用マップ
		HashMap<Object, String> paramMap = new HashMap<Object, String>();
		// マッピング用Map
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		// サービス実行結果データ用Map
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID_CRSV0279);

		// マッピング処理
		parentMap.put("func_code", funcCode);
		dataMap.put(SENDMAILCC, parentMap);

		// サービス実行
		bl.invokeService(paramMap, dataMap, outputMap);

		return outputMap;
	}

	/**
	 * メール送信（ＮＧワード）CCを実行し、結果を返します。
	 * <BR>
	 * @param bl        VIEWロジックインスタンス
	 * @param parentMap 上りマッピングデータ
	 * @param funcCode  機能コード
	 * @return サービス実行結果
	 * @throws Exception
	 */
	public static HashMap<String, Object> callSendMailNgWordCC(X31BWebBusinessLogic bl, HashMap<String, Object> parentMap, String funcCode) throws Exception
	{
		// ユースケースID格納用マップ
		HashMap<Object, String> paramMap = new HashMap<Object, String>();
		// マッピング用Map
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		// サービス実行結果データ用Map
		HashMap<String, Object> outputMap = new HashMap<String, Object>();

		// ユースケースID格納
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID_CRSV0280);

		// マッピング処理
		parentMap.put("func_code", funcCode);
		dataMap.put(SENDMAILNGWORDCC, parentMap);

		// サービス実行
		bl.invokeService(paramMap, dataMap, outputMap);

		return outputMap;
	}

}
