/**
 * 
 */
package com.fujitsu.futurity.bp.custom.reqchk;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.fujitsu.futurity.bp.x21.bpm.common.AbstractCustomReqChk;
import com.fujitsu.futurity.bp.x21.bpm.common.IConditionValue;
import com.fujitsu.futurity.bp.x21.bpm.exception.RequestParameterException;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadOnly;
import com.fujitsu.futurity.bp.x21.bpm.reqchk.exception.ReqChkException;


/**
 * KKSV0171 トーキ登録<br>
 * KKSV017104SC サービス契約内訳<eo光電話>情報変更<br>
 *<br>
 * 申込明細番号の格納用
 * 
 * @author 富士通
 * @since 2011-10-18
 */
public class JKKSV017104ReqChk extends AbstractCustomReqChk {

	@SuppressWarnings("unchecked")
	@Override
	public boolean checkExecution(IRequestParameterReadOnly arg0, IConditionValue arg1) throws ReqChkException
	{
		HashMap<String, Object> parentMap;
		try 
		{
			// 作業項目の情報を取得
			parentMap = (HashMap<String, Object>)arg0.getControlMapData("MAPPING_WORK_AREA");
			if (null == parentMap)
			{
				return true;
			}
			//申込明細番号の取得と設定
//			String cust_stat = (String)parentMap.get("cust_stat");
			HashMap childMap = (HashMap)parentMap.get("WORK");
			List list = ((List)childMap.get("work_list"));
			String mskmDtlNo = (String) ((Map)list.get(0)).get("mskm_dtl_no");
			childMap.put("mskm_dtl_no", mskmDtlNo);
		}
		catch (RequestParameterException e) 
		{
			return false;
		}

		return true;
	}

}
