package com.fujitsu.futurity.bp.custom.reqchk;

import java.util.ArrayList;
import java.util.HashMap;

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;

public class JKKSV024101ReqChk extends AbstractCustomReqChk {

	/**
	 * 住所変更共通ヘッダ情報取得判定処理を実装するメソッド
	 */
	@SuppressWarnings("unchecked")
	public boolean checkExecution(IRequestParameterReadOnly irp,
			IConditionValue conditionvalue) throws ReqChkException {

		String tkHoshikiKeiNo = null;
		HashMap<String,Object> parentMap = null;
		
		try {
			// SCマップから必要な情報を取り出す
			parentMap = (HashMap<String,Object>)irp.getData("KKSV024103SC");
			ArrayList childList = (ArrayList)parentMap.get("EKK0081A010CBSMsg1List");
			if(childList != null && childList.size() > 0)
			{
				HashMap childMap = (HashMap)childList.get(0);
				if(childMap != null)
				{
					// 提供方式契約番号を取得
					tkHoshikiKeiNo = (String)childMap.get("tk_hoshiki_kei_no");
				}
			}
			
		} catch (RequestParameterException e) {
			
		}
		// 提供方式契約番号がnullまたは空文字の場合
		if(tkHoshikiKeiNo == null || "".equals(tkHoshikiKeiNo))
		{
			return false;
		}
		else
		{
			return true;
		}
	}
}
