/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：KKW18701SFLogic
*   ソースファイル名：KKW18701SFLogic.java
*   作成者          ：FJ）馬場
*   日付            ：2013年05月22日
*＜機能概要＞
*   オプションチャンネル課金開始日変更画面のビューロジックです。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v5.00.00    2013/05/22   FJ）馬場    新規作成
*
**********************************************************************/
package eo.web.webview.KKW18701SF;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import com.fujitsu.futurity.web.x31.X31CMessageResult;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;
import com.fujitsu.futurity.web.x31.X31SRuntimeException;

import eo.common.constant.JPCOnlineMessageConstant;
import eo.common.util.JPCDateChecker;
import eo.common.util.JPCDateUtil;
import eo.common.util.JPCEditString;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKCommonConst;
import eo.web.webview.common.JKKScreenConst;
import eo.web.webview.mapping.KKSV0756_KKSV0756OPDBMapper;
import eo.web.webview.mapping.KKSV0757_KKSV0757OPDBMapper;

/**
 * KKW18701のビューロジックです。<p>
 * <BR>
 * @author 富士通
 */
public class KKW18701SFLogic  extends JCCWebBusinessLogic
{
	
	/** 顧客契約引継情報項目キー */
	private static final String[] CUST_KEI_HKTGI_KEYS = {
		JKKCommonConst.HKTGI_SYSID,
		JKKCommonConst.HKTGI_SVC_KEI_NO,
		JKKCommonConst.HKTGI_IDO_DIV,
		JKKCommonConst.HKTGI_IDO_RSN_CD,
		JKKCommonConst.HKTGI_IDO_RSN_MEMO,
		JKKCommonConst.HKTGI_OP_SVC_KEI_NO,
		JKKCommonConst.HKTGI_TRAN_DIV,
		JKKCommonConst.HKTGI_MSKM_NO,
		JKKCommonConst.HKTGI_MSKM_DTL_NO,
		JKKCommonConst.HKTGI_TOKUTEI_ID_KMK_NM,
		JKKCommonConst.HKTGI_TOKUTEI_ID_KMK_VALUE
	};
	
	/**
	 * 初期表示処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean init() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// オンライン運用日付取得
		// 基準日
		bean.sendMessageString(KKW18701SFConst.STDARDYMD, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDate(this, null));
		// 基準日時分秒
		bean.sendMessageString(KKW18701SFConst.STDARDYMD_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDateTimeStamp(this, null));
		
		// JCCWebCommon.setScreenInfoメソッドで設定されている画面情報を取得し、サービスフォームBeanに設定する
		JCCWebCommon.getScreenInfo(this);
		
		// 顧客契約引継リスト情報を取得
		X31SDataBeanAccessArray custKeiHktgiList =  bean.getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST);
		X31SDataBeanAccess custKeiHktgiInf = custKeiHktgiList.getDataBean(0);
		
		// SYSID
		String sysId = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SYSID, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW18701SFConst.SYSID, X31CWebConst.DATABEAN_SET_VALUE, sysId);
		// サービス契約番号
		String svcKeiNo = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW18701SFConst.SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, svcKeiNo);
		// 異動区分
		String idoDiv = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_DIV, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW18701SFConst.IDO_DIV, X31CWebConst.DATABEAN_SET_VALUE, idoDiv);
		// 異動理由コード
		bean.sendMessage(KKW18701SFConst.IDO_RSN_CD, X31CWebConst.DATABEAN_CLEAR);
		int idoRsnCount = (Integer)custKeiHktgiInf.sendMessage(JKKCommonConst.HKTGI_IDO_RSN_CD, X31CWebConst.DATABEAN_GET_COUNT);
		String idoRsnCd = null;
		for (int i = 0; i < idoRsnCount; i++)
		{
			idoRsnCd = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_RSN_CD, X31CWebConst.DATABEAN_GET_VALUE, i);
			bean.sendMessageString(KKW18701SFConst.IDO_RSN_CD, X31CWebConst.DATABEAN_ADD_VALUE, idoRsnCd);
		}
		// 異動理由メモ
		String idoRsnMemo = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_IDO_RSN_MEMO, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW18701SFConst.IDO_RSN_MEMO, X31CWebConst.DATABEAN_SET_VALUE, idoRsnMemo);
		// オプションサービス契約番号
		String opSvcKeiNo = custKeiHktgiInf.sendMessageString(JKKCommonConst.HKTGI_OP_SVC_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE, 0);
		bean.sendMessageString(KKW18701SFConst.OP_SVC_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, opSvcKeiNo);
		
		// ■ サービス呼び出し準備
		X31SDataBeanAccess[] paramBean = {bean};
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0756");
		
		HashMap<String, HashMap<String, Object>> inputMap = new HashMap<String, HashMap<String, Object>>();
		HashMap<String, HashMap<String, Object>> outputMap = new HashMap<String, HashMap<String, Object>>();
		
		KKSV0756_KKSV0756OPDBMapper mapper = new KKSV0756_KKSV0756OPDBMapper();
		mapper.setKKSV075601CC(paramBean, inputMap, JKKCommonConst.FUNC_CODE_1);// オプションチャンネル課金開始日変更初期表示情報取得CC
		mapper.setJKKGetWorkParamCC(paramBean, inputMap);// 業務パラメータ取得部品
		
		// ■ サービス呼び出し
		X31CMessageResult msgResult = invokeService(paramMap, inputMap, outputMap);
		
		// エラー処理 
		if (msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}
		
		// ■ サービス結果の転記
		mapper.getKKSV075601CC(paramBean, outputMap);
		mapper.getJKKGetWorkParamCC(paramBean, outputMap);
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18701);
		
		return true;
	}
	
	/**
	 * 更新確認ボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean forwardUpdCfm() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 課金開始年月日に課金開始日（年）、課金開始日（月）、課金開始日（日）を結合した値を設定
		String chrgStaYmd = JPCEditString.concatYmd(bean.sendMessageString(KKW18701SFConst.CHRG_STA_YEAR, X31CWebConst.DATABEAN_GET_VALUE), 
				bean.sendMessageString(KKW18701SFConst.CHRG_STA_MON, X31CWebConst.DATABEAN_GET_VALUE), 
				bean.sendMessageString(KKW18701SFConst.CHRG_STA_DAY, X31CWebConst.DATABEAN_GET_VALUE));
		bean.sendMessageString(KKW18701SFConst.CHRG_STA_YMD, X31CWebConst.DATABEAN_SET_VALUE, chrgStaYmd);
		
		// 未来日チェック（運用日＋365日以降の日付を指定されるとエラー）
		int day = JPCDateUtil.subtractDay(chrgStaYmd, JCCWebCommon.getOpeDate(this, null));
		int paramStaDays = Integer.parseInt(bean.sendMessageString(KKW18701SFConst.KK_OP_CNL_CHRG_STA_DAYS, X31CWebConst.DATABEAN_GET_VALUE));
		if (day > paramStaDays)
		{
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1950_TW, new String[]{"課金開始日"}, "year");
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1950_TW, new String[]{"課金開始日"}, "month");
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB1950_TW, new String[]{"課金開始日"}, "day");
			
			// 遷移先の画面IDを共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
					X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18701);
			
			// 遷移先の画面名を共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
					X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18701);
			
			return true;
		}
		
		// オンライン運用日付取得
		// 基準日
		bean.sendMessageString(KKW18701SFConst.STDARDYMD, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDate(this, null));
		// 基準日時分秒
		bean.sendMessageString(KKW18701SFConst.STDARDYMD_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDateTimeStamp(this, null));
		
		// ■ サービス呼び出し準備
		X31SDataBeanAccess[] paramBean = {bean};
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0757");
		
		HashMap<String, HashMap<String, Object>> inputMap = new HashMap<String, HashMap<String, Object>>();
		HashMap<String, HashMap<String, Object>> outputMap = new HashMap<String, HashMap<String, Object>>();
		
		KKSV0757_KKSV0757OPDBMapper mapper = new KKSV0757_KKSV0757OPDBMapper();
		mapper.setKKSV075701CC(paramBean, inputMap, JKKCommonConst.FUNC_CODE_2);// オプションチャンネル課金開始日変更更新CC
		
		// ■ サービス呼び出し
		X31CMessageResult msgResult = invokeService(paramMap, inputMap, outputMap);
		
		// エラー処理 
		if (msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}
		
		// ■ サービス結果の転記
		mapper.getKKSV075701CC(paramBean, outputMap);
		
		// 料金計算日チェック（課金開始日で取得した料金計算日が運用日より過去の場合、エラー）
		if (JPCDateChecker.isPastDate(bean.sendMessageString(KKW18701SFConst.EVENT_YMD, X31CWebConst.DATABEAN_GET_VALUE), 
				JCCWebCommon.getOpeDate(this, null), "0"))
		{
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD640_KW, new String[]{"課金開始日"}, "year");
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD640_KW, new String[]{"課金開始日"}, "month");
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBD640_KW, new String[]{"課金開始日"}, "day");
			
			// 遷移先の画面IDを共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
					X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18701);
			
			// 遷移先の画面名を共有フォームBeanの項目に設定する
			commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
					X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18701);
			
			return true;
		}
		
		// 確認画面に遷移するとき、登録・更新内容を確認するメッセージを通知する
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, new String[]{"eo光テレビオプションチャンネルの情報更新"});
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18702);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18702);
		
		return true;
	}
	
	/**
	 * クリアボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean clear() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 課金開始日（年）、課金開始日（月）、課金開始日（日）を初期表示時に取得した値に設定
		String bkChrgStaYmd = bean.sendMessageString(KKW18701SFConst.BK_CHRG_STA_YMD, X31CWebConst.DATABEAN_GET_VALUE);
		bean.sendMessageString(KKW18701SFConst.CHRG_STA_YEAR, X31CWebConst.DATABEAN_SET_VALUE, JPCEditString.toYearFromYmd(bkChrgStaYmd));
		bean.sendMessageString(KKW18701SFConst.CHRG_STA_MON, X31CWebConst.DATABEAN_SET_VALUE, JPCEditString.toMonthFromYmd(bkChrgStaYmd));
		bean.sendMessageString(KKW18701SFConst.CHRG_STA_DAY, X31CWebConst.DATABEAN_SET_VALUE, JPCEditString.toDayFromYmd(bkChrgStaYmd));
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18701);
		
		return true;
	}
	
	/**
	 * 戻るボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean back() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getScreenId(this));
		
		return true;
	}
	
	/**
	 * 確定ボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean forwardFix() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// オンライン運用日付取得
		// 基準日
		bean.sendMessageString(KKW18701SFConst.STDARDYMD, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDate(this, null));
		// 基準日時分秒
		bean.sendMessageString(KKW18701SFConst.STDARDYMD_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCCWebCommon.getOpeDateTimeStamp(this, null));
		
		// ■ サービス呼び出し準備
		X31SDataBeanAccess[] paramBean = {bean};
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, "KKSV0757");
		
		HashMap<String, HashMap<String, Object>> inputMap = new HashMap<String, HashMap<String, Object>>();
		HashMap<String, HashMap<String, Object>> outputMap = new HashMap<String, HashMap<String, Object>>();
		
		KKSV0757_KKSV0757OPDBMapper mapper = new KKSV0757_KKSV0757OPDBMapper();
		mapper.setKKSV075701CC(paramBean, inputMap, JKKCommonConst.FUNC_CODE_1);// オプションチャンネル課金開始日変更更新CC
		
		// ■ サービス呼び出し
		X31CMessageResult msgResult = invokeService(paramMap, inputMap, outputMap);
		
		// エラー処理 
		if (msgResult != null)
		{
			JCCWebCommon.setMessageInfo(this, msgResult);
			return true;
		}
		
		// 完了画面に遷移するとき、完了したことを通知する
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB4390__I, new String[]{"eo光テレビオプションチャンネルの情報更新"});
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18703);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18703);
		
		return true;
	}
	
	/**
	 * 修正ボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean forwardShusei() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW18701);
		
		// 遷移先の画面名を共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_NAME_KKW18701);
		
		return true;
	}
	
	/**
	 * 一覧照会へボタン押下処理です。
	 * <br>
	 * @return 処理の成否
	 * @throws Exception エラーが発生した場合
	 */
	public boolean forwardIchiranShokai() throws Exception
	{
		
		// 共有フォームBeanのアクセスクラスを取得
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();
		
		// サービスフォームBeanのデータBeanアクセスクラスを取得
		X31SDataBeanAccess bean = getServiceFormBean();
		
		// 顧客契約引継ぎリスト取得
		HashMap<String, Object> dataMap = getHktgiDataMap(bean, KKW18701SFConst.HKTGI_CUST_KEI_HKTGI_LIST, CUST_KEI_HKTGI_KEYS);
		
		// 次画面情報を設定
		JCCWebCommon.setScreenInfo(this, JKKScreenConst.SCREEN_ID_KKW02301, dataMap);
		
		// 遷移先の画面IDを共有フォームBeanの項目に設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID,
				X31CWebConst.DATABEAN_SET_VALUE, JKKScreenConst.SCREEN_ID_KKW02301);
		
		return true;
	}
	
	/**	
	 * <dd>メソッド名：引継情報データマップ取得
	 * <dd>メソッド説明：引数のサービスフォームBeanより引継情報データマップの生成を行う。
	 * <dd>備考：引継情報データタイプの可変項目はString[]のみ対応。
	 * @param bean サービスフォームBean
	 * @param hktgiKey 引継情報データタイプのキー
	 * @param hktgiPrmKeys 引継情報データタイプの項目キーリスト	
	 * @return HashMap<String, Object> 引継情報データマップ
	 */
	private HashMap<String, Object> getHktgiDataMap(X31SDataBeanAccess bean, String hktgiKey, String[] hktgiPrmKeys)
	{
		HashMap<String, Object> dataMap = new HashMap<String, Object>();
		List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();

		X31SDataBeanAccessArray infList =  bean.getDataBeanArray(hktgiKey);
		HashMap<String, Object> inMap = null;
		for (int i = 0; i < infList.getCount(); i++)
		{
			inMap = new HashMap<String, Object>();
			X31SDataBeanAccess inf = infList.getDataBean(i);
			for (int j = 0; j < hktgiPrmKeys.length; j++)
			{
				try
				{
					inMap.put(hktgiPrmKeys[j], inf.sendMessageObject(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE));
				}
				catch (X31SRuntimeException ex)
				{
					// 可変項目の場合(String[]のみ対応)	
					int length = (Integer)inf.sendMessage(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_COUNT);
					String[] obj = new String[length];
					for (int k = 0; k < length; k++)
					{
						obj[k] = inf.sendMessageString(hktgiPrmKeys[j], X31CWebConst.DATABEAN_GET_VALUE, k);
					}
					inMap.put(hktgiPrmKeys[j], obj);
				}
			}
			dataList.add(inMap);
		}
		dataMap.put(hktgiKey, dataList);
		return dataMap;	
	}
}
