/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JFUExecuteHmpinCC
*   ソースファイル名：JFUExecuteHmpinCC.java
*   作成者          ：富士通
*   日付            ：2012年10月19日
*＜機能概要＞
*   物流返品処理実行部品です。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v4.00       2012/10/19   FJ)文元     新規作成
*                                        
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.HashMap;

import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;

/**
 * 物流返品処理実行部品です。
 * 
 * <br>
 * @author 富士通
 */
@SuppressWarnings("unchecked")
public class JFUExecuteHmpinCC extends JFUBaseCC
{
	/** IN項目マップキー  */
	private static final String IN_PARAM_KEY = "in_param";
	/** IN項目:機器提供サービス契約番号(返品処理用) */
	private static final String IN_PARAM_HMPIN_KKTK_SVC_KEI_NO = "hmpin_kktk_svc_kei_no";
	/** IN項目:異動区分(返品処理用) */
	private static final String IN_PARAM_HMPIN_IDO_DIV = "hmpin_ido_div";
	/** IN項目:住所変更内異動区分(返品処理用) */
	private static final String IN_PARAM_HMPIN_ADCHG_IDO_DIV = "hmpin_adchg_ido_div";

	/**
	 *物流返品処理実行
	 * 
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ管理クラス
	 * @throws Throwable 
	 */
	public IRequestParameterReadWrite executeHmpim(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Throwable
	{
		JFUBPCommon.printBpDebugLog(this.getClass(), "★★★物流返品処理実行(JFUExecuteHmpinCC.executeHmpim)---Start---★★★");
		
		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(fixedText);
		HashMap paramMap = (HashMap)inMap.get(IN_PARAM_KEY);

		String kktk_svc_kei_no = (String)paramMap.get(IN_PARAM_HMPIN_KKTK_SVC_KEI_NO);
		String ido_div = (String)paramMap.get(IN_PARAM_HMPIN_IDO_DIV);
		String adchg_ido_div = (String)paramMap.get(IN_PARAM_HMPIN_ADCHG_IDO_DIV);

		// ●返品処理実行
		HashMap<String, Object> henpinOutMapStb = new HashMap<String, Object>();
		if (JFUBPCommon.isNull(adchg_ido_div))
		{
			JKKBpCommon.createHmpin(param, handle, kktk_svc_kei_no, ido_div, henpinOutMapStb, fixedText);
		}
		else
		{
			JKKBpCommon.createHmpin(param, handle, kktk_svc_kei_no, ido_div, adchg_ido_div, henpinOutMapStb, fixedText);
		}

		JFUBPCommon.printBpDebugLog(this.getClass(), "★★★物流返品処理実行(JFUExecuteHmpinCC.executeHmpim)---正常終了--End---★★★");
		
		return param;
	}

	/**
	 * チェック処理
	 * 
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ
	 * @throws Exception
	 */
	public HashMap<String, Object> getInvokeCBS(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		return null;
	}

}
