/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：eo顧客基幹システム
 *   モジュール名    ：JKKSvkeiUpdScreenUtil
 *   ソースファイル名：JKKSvkeiUpdScreenUtil.java
 *   作成者          ：富士通
 *   日付            ：2012年05月08日
 *＜機能概要＞
 *   サービス契約更新画面で共用する機能を実装するクラス
 *   　　１）CKSV9001会員情報更新依頼BPサービス呼出しを行うメソッド
 *   
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *   v1.00.00    2012/05/08   FJ          新規作成（巻@　指示書CC取込み対応）
 *
 **********************************************************************/
package eo.web.webview.common;

import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.common.JSYwebLog;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;

import eo.common.constant.JPCOnlineMessageConstant;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.mapping.KKSV0564_KKSV0564OPDBMapper;


/**
 * サービス契約更新画面 View ロジッククラス共用機能<br/>
 * 以下の画面で共用する機能を装備するクラスです。<br/>
 * <ol>
 * <li>KKW00128 サービス契約更新(eo光ネット)</li>
 * <li>KKW00130 サービス契約更新(eo光電話)</li>
 * <li>KKW00131 サービス契約更新(eoモバイル)</li>
 * <li>KKW00132 サービス契約更新(eoADSL)</li>
 * </ol>
 * 
 * @author FJ
 * @since 2012-05-08 巻取@　指示書CC取込み対応
 */
public class JKKSvkeiUpdScreenUtil
{

	/**
	 * 
	 * @param ido_div 異動区分
	 * @param sysid SYSID
	 * @param webLogic 画面の Web ロジッククラスのインスタンス
	 * @since 2012-05-08 巻取@　指示書CC取込み対応
	 */
	public static boolean executeAxMRnkSjisho(String ido_div, String sysid, JCCWebBusinessLogic webLogic)
	{
		boolean ret = true;

		// 異動区分：回復
		// 異動区分：解約
		// 異動区分：キャンセル
		// 異動区分：コース変更
		if (ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00004) ||
			ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00005) ||
			ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00008) ||
			ido_div.equals(JKKCommonConst.IDO_DIV_VALUE_00009))
		{
			// ユースケースID格納用のHashMap
			HashMap<String, Object> paramMap = new HashMap<String, Object>();
			// マッピングクラスの結果を格納するHashMap
			HashMap<String, Object> inputMap = new HashMap<String, Object>();
			// サービス呼出結果を格納するHashMap
			HashMap<String, Object> outputMap = new HashMap<String, Object>();
			
			//入力マッピング
			KKSV0564_KKSV0564OPDBMapper mapper = new KKSV0564_KKSV0564OPDBMapper();
			mapper.setCKSV900101CC(inputMap, JKKCommonConst.FUNC_CODE_1, sysid);

			//BPサービスパラメータのマッピング
			paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, JKKCommonConst.UCID_KKSV0564);
			paramMap.put(X31CWebConst.TELEGRAM_INFO_OPERATION_ID, JKKCommonConst.OPID_KKSV0564OP);
			
			//BPサービス呼出し
			webLogic.invokeService(paramMap, inputMap, outputMap);
			
			// DataBeanログ出力
			JSYwebLog.println(JSYwebLog.Message_Dump, webLogic.getClass(), outputMap, null, null, null);

			//下りマップを取得
			Map<?, ?> cksv900101cc = (Map<?, ?>)outputMap.get("CKSV900101CC");
			
			//エラーチェック
//			String err_flg = (String)cksv900101cc.get("err_flg");
//			if (!JKKCommonConst.UM_M.equals(err_flg))
//			{
//				// 2013/01/23 OT-2013-0000026 MOD START
//				String[] arg = {"会員情報更新依頼サービス", "障害発生", "AxM連携"};
//				//String[] arg = {"会員情報更新依頼サービスが", "障害発生", "AxM連携"};
//				// 2013/01/23 OT-2013-0000026 MOD END
//				JCCWebCommon.setMessageInfo(webLogic, JPCOnlineMessageConstant.EKB1040_JW, arg);
//
//				ret = false;
//			}
		}
		
		return ret;
	}

}
