/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JKKAddMskmServiceCC
*   ソースファイル名：JKKAddMskmServiceCC.java
*   作成者          ：富士通
*   日付            ：2011年06月03日
*＜機能概要＞
*   申込情報登録部品
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v1.00.00    2011/06/03   FJ）土屋    新規作成
*   v4.00.00	2012/12/18   FJ) 多田	【ST4-2012-0000132】申込情報検索レスポンス対応
*   v4.01.00	2013/01/15   FJ) 三浦	【IT1-2013-0000015】取扱コード重複チェック不審対応
*   v5.00.00	2013/01/25   FJ) 谷口	【ANK-1270-02-00】１G値下げに伴う200M申込受付停止及びファミパ・無線ルータ値下げ対応
*   v5.01.00    2013/09/19   FJ) 川島   【OM-2013-0002328】申込書明細番号の重複チェック対応
*   v7.00.00    2014/02/05   FJ) 北浦   【ANK-1974-00-00】紹介コード重複チェック対応
*	v25.00.00	2016/05/23	 FJ) 澤田	【ANK-2679-00-00】eoスタッフ対応
*	v31.00.00	2017/11/30	 FJ) 麻生	【ANK-3136-00-00】OPMSハードウエア保守切れ対応(STEP2-2)
*   v36.00.00   2018/03/02   FJ) 麻生   【ANK-3362-00-00】申込書による申込時の申込断面データ作成
*   v52.00.00   2021/01/31   FJ) 星野   【ANK-3910-00-00】定額サービスリース品追加対応
*   v54.00.00   2021/08/30   FJ) 平野　 【ANK-4096-00-00】宅調宅工同時実施のための聞取り強化対応
*   v57.00.00	2021/02/04	 FJ) 吉村	【ANK-4088-00-00】宅内調査の日程調整業務における省人化施策(Step2)
*   v63.00.00	2022/11/25	 FJ) 小竹	【ANK-4294-00-00】紹介CPの仕組み変更対応
*   v72.00.00	2024/08/14	 FJ)吉川	【ANK-4577-00-00】eo光ネット「シンプルプラン」追加対応(Step2)
*	v73.00.00	2024/10/17	 FJ)舘山	 【ANK-4427-00-00】NTT卸対応
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.bp.x21.bpm.ServiceComponentRequestInvoker;
import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.exception.RequestParameterException;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;
import com.fujitsu.futurity.bp.x21.cc.AbstractCommonComponent;
import com.fujitsu.futurity.bp.x21.cc.exception.CCException;
import com.fujitsu.futurity.common.JCMConstants;
import com.fujitsu.futurity.common.x01.sc.SCControlMapKeys;
import com.fujitsu.futurity.mapping.bp.common.TemplateErrorUtil;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.common.JCMAPLConstMgr;

import eo.common.constant.JKKStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.util.JKKCommonUtil;
import eo.common.util.JKKStringUtil;
import eo.ejb.cbs.cbsmsg.EKK0011C100CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0011D010CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0011D010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0011D020CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0011D020CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0021B011CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0081B532CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0081B532CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0021B506CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0021B506CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0021C013CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0021C014CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0071D010CBSMsg;

/**
 * 申込情報登録部品.<br>
 * 
 * @author 富士通
 *
 */
public class JKKAddMskmServiceCC extends AbstractCommonComponent
{
	/** リターンメッセージ */
	private static final String RETURN_MESSAGE_STRING = "RETURN_MESSAGE_";
	/** リターンメッセージ */
	private static final String RETURN_MESSAGE_FORMAT = "%1$04d";
	/** エラー用 */
	private static final String SC_ERROR_STRING = "サービスコンポーネントエラー";
	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME_KEISHA = "JKKAddKeishaServiceCCWork";
	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME_MSKM = "JKKAddMskmServiceCCWork";
	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME_MSKM_LIST = "JKKAddMskmServiceCCWorkList";
	/** 申請 */
	private static final String MODE_SHINSEI = "2";
	/** 自動採番 */
	private static final String MODE_AUTO = "1";
	/** 手入力採番 */
	private static final String MODE_MANUAL = "2";
	/** ArrayList名 */
	public static final String ADD_MSKM_LIST = "ADD_MSKM_LIST";	
	/** 申込書明細番号List */
	private static final String MSKMSHODTLNO_LIST = "MskmShoDtlNo_List";
	/** 受付番号重複フラグ（受付番号 重複なし） */
	private static final String UKNO_OVERLAP_FLG_NASHI = "0";
	/** 受付番号重複フラグ（受付番号 重複あり） */
	private static final String UKNO_OVERLAP_FLG_ARI = "1";
	/** サービス体系コード ホームタイプ eo光ネット eo光電話 */
	private static final String SVC_TIKEI_CD_HOME_NET_TEL = "W";
	/** サービス体系コード マンションタイプ eo光ネット eo光電話 */
	private static final String SVC_TIKEI_CD_MANSION_NET_TEL = "K";
	/** サービス体系コード メゾンタイプ eo光ネット eo光電話 */
	private static final String SVC_TIKEI_CD_MEZON_NET_TEL = "Y";
	/** 申込番号変更フラグ（申込番号 変更なし） */
	private static final String MSKM_DTL_NO_HENKO_FLG_NASHI = "0";
	/** 申込番号変更フラグ（申込番号 変更あり） */
	private static final String MSKM_DTL_NO_HENKO_FLG_ARI = "1";

	/** 申込書番号 */
	private String mskmShoNo = null;

	/**
	 * 申込情報登録処理チェック処理を行います。
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return サービスコンポーネント実行用CAANMsg
	 * @throws RequestParameterException RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public HashMap<String, Object> getInvokeCBS(SessionHandle handle, IRequestParameterReadWrite param, String fixedText)
			throws RequestParameterException
	{
		ArrayList<CAANMsg> msgList = new ArrayList<CAANMsg>();
		HashMap<String, String>saibanMap = new HashMap<String, String>();

		HashMap inMap = (HashMap<String, Object>)param.getData(fixedText);
		
		// 登録用のCCに値が設定されていない場合は処理を行わない。
		if (inMap == null)
		{
			return null;
		}

		// 申込のモードを取得
		String  mskmMode = (String)inMap.get("mskm_mode");
		
		// 申込が"申請"の場合、申込登録を行う。それ以外の場合、申込内容承認登録を行う。
		if (MODE_SHINSEI.equals(mskmMode))
		{
			msgList.add(editInEKK0021C013(param, fixedText)); // 申込書番号採番
// --> ANK-1199-00-00
			
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					msgList.add(editInEKK0021C014(param, fixedText, i)); // 申込番号採番
				}
			}
// <-- ANK-1199-00-00
			msgList.add(editInEKK0011D010(param, fixedText)); // 申込登録
			msgList.add(editInEKK0011C100(param, fixedText)); // 申込内容承認申請
		}
		else
		{
// --> ANK-1199-00-00
			msgList.add(editInEKK0021B011(param, fixedText, MODE_MANUAL)); // 受付番号重複チェック
			
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					msgList.add(editInEKK0021C014(param, fixedText, i)); // 申込番号採番
				}
				else
				{
					// 申込番号を採番マップにセット
					saibanMap.put((String)childMap.get("svc_kind_cd"), mskmshoDtlNo);
					
					// 申込番号重複チェック実行判定
					String mskmshoDtlNoHenkoFlg = MSKM_DTL_NO_HENKO_FLG_NASHI;
					mskmshoDtlNoHenkoFlg = (String)childMap.get("mskmsho_dtl_no_henko_flg");
					
					if(MSKM_DTL_NO_HENKO_FLG_ARI.equals(mskmshoDtlNoHenkoFlg))
					{
						msgList.add(editInEKK0021B506(param, fixedText, i, saibanMap)); // 申込番号重複チェック
					}
				}
			}
// <-- ANK-1199-00-00
			msgList.add(editInEKK0011D020(param, fixedText)); // 申込内容承認登録
		}

		ArrayList tokkiChgList = (ArrayList)inMap.get("tokki_chg_list");

		if (tokkiChgList != null)
		{
			for (int i = 0; i < tokkiChgList.size(); i++)
			{
				HashMap tokkiChgDetailMap = (HashMap)tokkiChgList.get(i);

				if (tokkiChgDetailMap != null)
				{
					msgList.add(editInEKK0071D010(param, fixedText, tokkiChgDetailMap)); // 申込＿代理店登録
				}
			}
		}
		
		// 紹介コード重複チェック
		// 紹介コードが入力されている場合
		String  intrCD = (String)inMap.get("key_intr_cd");
		if (!"".equals(intrCD) && intrCD != null)
		{
			// サービス契約一覧照会（紹介コード）
			msgList.add(editInEKK0081B532(param, fixedText)); 
		}

		int msgCnt = msgList.size();
		CAANMsg[] templates = new CAANMsg[msgCnt];
		for (int i = 0; i < msgCnt; i++)
		{
			templates[i] = msgList.get(i);
		}

		HashMap<String, Object> paramMap = setSCInputCommonData(param, new HashMap<String, Object>());
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;
	}

	/**
	 * 申込情報登録処理を行います。
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ
	 * @throws Exception Exception
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite addMskm(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();
		HashMap<String, Object> paramMap = setSCInputCommonData(param, new HashMap<String, Object>());
		Map<?, ?> result = null;
		CAANMsg template = null;
		HashMap<String, String>saibanMap = new HashMap<String, String>();

		HashMap inMap = (HashMap<String, Object>)param.getData(fixedText);

		mskmShoNo = null;
		
		// 登録用のCCに値が設定されていない場合は処理を行わない。
		if (inMap == null)
		{
			return param;
		}

		// 申込のモードを取得
		String  mskmMode = (String)inMap.get("mskm_mode");
		
		// 申込が"申請"の場合、申込登録を行う。それ以外の場合、申込内容承認登録を行う。
		if (MODE_SHINSEI.equals(mskmMode))
		{
			// 申込書番号採番
			template = editInEKK0021C013(param, fixedText); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0021C013(result, param, fixedText); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
			
// --> ANK-1199-00-00
			// 受付番号重複チェック
			template = editInEKK0021B011(param, fixedText, MODE_AUTO); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0021B011(result, param, fixedText, MODE_AUTO); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
			
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			boolean mskmshoDtlNoOverlapError = false;
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					// eo光ネット・eo光電話の同時申込チェック
					if(!checkNetTelMskmDtlNoDojiMskm(childMap, saibanMap))
					{
						// 申込番号採番
						template = editInEKK0021C014(param, fixedText, i); // 上りマッピング
						result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
						editRetEKK0021C014(result, param, fixedText, i, saibanMap); // 下りマッピング
						if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
						{ // ステータスが単項目エラー以上であれば例外をスロー
							throw new CCException(SC_ERROR_STRING, new Exception());
						}
						
						// 重複可能マップに存在する場合
						if(isDblePsb(inMap, childMap, saibanMap))
						{
							childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
							childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
						}
						else
						{
							// 申込番号重複チェック
							template = editInEKK0021B506(param, fixedText, i, saibanMap); // 上りマッピング
							result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
							editRetEKK0021B506(result, param, fixedText, i, MODE_AUTO); // 下りマッピング
							if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
							{ // ステータスが単項目エラー以上であれば例外をスロー
								throw new CCException(SC_ERROR_STRING, new Exception());
							}
							
							if(!JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals((String)childMap.get("mskmsho_dtl_no_overlap_auot_flg")))
							{
								mskmshoDtlNoOverlapError = true;
							}
						}
					}
				}
				else
				{
					// 申込番号を採番マップにセット
					saibanMap.put((String)childMap.get("svc_kind_cd"), mskmshoDtlNo);
				}
			}
			
			// 申込番号重複チェックエラーの場合、例外をスロー
			if(mskmshoDtlNoOverlapError)
			{
				for (int i = 0; i < inList.size(); i++)
				{
					editRetErrorInfoEKK0021B506(result, param, fixedText, i);
				}
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
			
			// 申込番号をパラメータに反映
			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				childMap.put("mskmsho_dtl_no", (String)saibanMap.get((String)childMap.get("svc_kind_cd")));
			}
// <-- ANK-1199-00-00

			// 申込登録
			template = editInEKK0011D010(param, fixedText); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0011D010(result, param, fixedText); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}

			// 申込内容承認申請
			template = editInEKK0011C100(param, fixedText); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editOutEKK0011C100Msg(result, param, fixedText); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}

		}
		else
		{
// --> ANK-1199-00-00
			// 受付番号重複チェック
			template = editInEKK0021B011(param, fixedText, MODE_MANUAL); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0021B011(result, param, fixedText, MODE_MANUAL); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
			
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			boolean mskmshoDtlNoOverlapError = false;
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					// eo光ネット・eo光電話の同時申込チェック
					if(!checkNetTelMskmDtlNoDojiMskm(childMap, saibanMap))
					{
						// 申込番号採番
						template = editInEKK0021C014(param, fixedText, i); // 上りマッピング
						result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
						editRetEKK0021C014(result, param, fixedText, i, saibanMap); // 下りマッピング
						if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
						{ // ステータスが単項目エラー以上であれば例外をスロー
							throw new CCException(SC_ERROR_STRING, new Exception());
						}
						
						// 重複可能マップに存在する場合
						if(isDblePsb(inMap, childMap, saibanMap))
						{
							childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
							childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
						}
						else
						{
							// 申込番号重複チェック
							template = editInEKK0021B506(param, fixedText, i, saibanMap); // 上りマッピング
							result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
							editRetEKK0021B506(result, param, fixedText, i, MODE_AUTO); // 下りマッピング
							if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
							{ // ステータスが単項目エラー以上であれば例外をスロー
								throw new CCException(SC_ERROR_STRING, new Exception());
							}
							
							// 申込番号重複フラグ(自動採番)が0:重複なし以外の場合
							if(!JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals((String)childMap.get("mskmsho_dtl_no_overlap_auot_flg")))
							{
								mskmshoDtlNoOverlapError = true;
							}
						}
					}
				}
				else
				{
					String svcKindCd = (String)childMap.get("svc_kind_cd");
					// 申込番号を採番マップにセット
					saibanMap.put(svcKindCd, mskmshoDtlNo);
					
					String mskmshoDtlNoHenkoFlg = (String)childMap.get("mskmsho_dtl_no_henko_flg");
					
					if(MSKM_DTL_NO_HENKO_FLG_ARI.equals(mskmshoDtlNoHenkoFlg))
					{
						// 申込番号重複チェック
						template = editInEKK0021B506(param, fixedText, i, saibanMap); // 上りマッピング
						result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
						editRetEKK0021B506(result, param, fixedText, i, MODE_MANUAL); // 下りマッピング
						if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
						{ // ステータスが単項目エラー以上であれば例外をスロー
							throw new CCException(SC_ERROR_STRING, new Exception());
						}
						
						// 申込番号重複フラグ(手入力採番)が0:重複なし以外の場合
						if(!JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals((String)childMap.get("mskmsho_dtl_no_overlap_manu_flg")))
						{
							mskmshoDtlNoOverlapError = true;
						}
					}
					else
					{
						childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
						childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
					}
				}
			}
			
			// 申込番号重複チェックエラーの場合、例外をスロー
			if(mskmshoDtlNoOverlapError)
			{
				for (int i = 0; i < inList.size(); i++)
				{
					editRetErrorInfoEKK0021B506(result, param, fixedText, i);
				}
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
			
			// 他の申込番号と同一かチェック
			checkMskmshoDtlNoOverlap(param, fixedText, saibanMap);
			
			// 申込番号重複チェックエラーの場合、例外をスロー
			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号重複フラグ(自動採番)または申込番号重複フラグ(手入力採番)が0:重複なし以外の場合、例外をスロー
				if(!JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals((String)childMap.get("mskmsho_dtl_no_overlap_auot_flg"))
						|| !JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals((String)childMap.get("mskmsho_dtl_no_overlap_manu_flg")))
				{
					editRetErrorInfoEKK0021B506(result, param, fixedText, i);
					throw new CCException(SC_ERROR_STRING, new Exception());
				}
			}
			
			// 申込番号をパラメータに反映
			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				childMap.put("mskmsho_dtl_no", (String)saibanMap.get((String)childMap.get("svc_kind_cd")));
			}
// <-- ANK-1199-00-00

			// 申込内容承認登録
			template = editInEKK0011D020(param, fixedText); // 上りマッピング
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0011D020(result, param, fixedText); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{ // ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}

		}

		ArrayList<Object> tokkiChgList = (ArrayList)inMap.get("tokki_chg_list");

		if (tokkiChgList != null)
		{
			// 順番だけを変更した場合を想定して、削除を行ってから登録を行う。
			for (int i = 0; i < tokkiChgList.size(); i++)
			{
				HashMap tokkiChgDetailMap = (HashMap)tokkiChgList.get(i);

				if (tokkiChgDetailMap != null)
				{
					// 申込＿代理店登録
					template = editInEKK0071D010(param, fixedText, tokkiChgDetailMap);
					result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
					editRetEKK0071D010(result, param, fixedText); // 下りマッピング
					if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
					{
						// ステータスが単項目エラー以上であれば例外をスロー
						throw new CCException(SC_ERROR_STRING, new Exception());
					}
				}
			}
		}
		
		// 紹介コード重複チェック
		// 紹介コードが入力されている場合
		String  intrCD = (String)inMap.get("key_intr_cd");
		if (!"".equals(intrCD) && intrCD != null)
		{
			// サービス契約一覧照会（紹介コード）
			template = editInEKK0081B532(param, fixedText);
			result = scCall.run(putParamMap(paramMap, template), handle); // SC呼び出し
			editRetEKK0081B532(result, param, fixedText); // 下りマッピング
			if (getReturnCode(param) >= JPCModelConstant.SINGLEDATA_ERR)
			{
				// ステータスが単項目エラー以上であれば例外をスロー
				throw new CCException(SC_ERROR_STRING, new Exception());
			}

			// 紹介コード重複チェックエラーの場合、例外をスロー
			if(JKKStrConst.INTR_CD_DBLE_FLG_ERR.equals((String)inMap.get("intr_cd_overlap_error")))
			{
				editRetErrorInfoEKK0081B532(result, param, fixedText);
				throw new CCException(SC_ERROR_STRING, new Exception());
			}
		}

		param.setData("mskmShoNo", mskmShoNo);

		return param;
	}

	/**
	 * 単一CAANMsgのマッピング処理を行います。
	 * <br>
	 * @param paramMap
	 * @param template
	 * @return パラメータマップ
	 * @throws RequestParameterException
	 */
	private HashMap<String, Object> putParamMap(HashMap<String, Object> paramMap, CAANMsg template) throws RequestParameterException
	{
		CAANMsg[] templates = new CAANMsg[1];
		templates[0] = template;
		paramMap.put(JCMConstants.TEMPLATE_LIST_KEY, templates);

		return paramMap;
	}

	/**
	 * SCの実行ステータスの取得処理を行います。
	 * <br>
	 * @param param
	 * @return SCの実行ステータス
	 * @throws Exception
	 */
	private int getReturnCode(IRequestParameterReadWrite param) throws Exception
	{
		return Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
	}

	/**
	 * SCインプット共通データ設定処理を行います。
	 * <br>
	 * @param param
	 * @param paramMap
	 * @return パラメータマップ
	 * @throws RequestParameterException
	 */
	private HashMap<String, Object> setSCInputCommonData(IRequestParameterReadWrite param, HashMap<String, Object> paramMap)
			throws RequestParameterException
	{
		/* SCインプット共通データ */
		// **********************************************
		// 【取得元：電文ヘッダ(ヘッダ)】
		// **********************************************
		// 電文ID
		paramMap.put(JCMConstants.TRANZACTION_ID_KEY, param.getTelegramID());
		// ユースケースID
		paramMap.put(JCMConstants.USECASE_ID_KEY, param.getUsecaseID());
		// オペレーションID
		paramMap.put(JCMConstants.OPERATION_ID_KEY, param.getOperationID());
		// サービス呼び出し区分
		paramMap.put(JCMConstants.CALL_TYPE_KEY, param.getCallType());

		// **********************************************
		// 【取得元：ユーザエリア(コントロールマップ)】
		// **********************************************
		// 依頼先ホスト名
		paramMap.put(JCMConstants.CLIENT_HOST_NAME_KEY, param.getControlMapData(SCControlMapKeys.REQ_HOSTNAME));
		// 依頼元IPアドレス
		paramMap.put(JCMConstants.CLIENT_IP_ADDRESS_KEY, param.getControlMapData(SCControlMapKeys.REQ_HOSTIP));
		// 依頼元画面ID
		paramMap.put(JCMConstants.INVOKE_GAMEN_ID_KEY, param.getControlMapData(SCControlMapKeys.REQ_VIEWID));
		// オペレータID
		paramMap.put(JCMConstants.OPERATOR_ID_KEY, param.getControlMapData(SCControlMapKeys.OPERATOR_ID));

		return paramMap;
	}

	/**
	 * 申込書番号採番の上りマッピング処理を行います。
	 * <br>
	 * @param param
	 * @param fixedText
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0021C013(IRequestParameterReadWrite param, String fixedText) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0021C013CBSMsg.class.getName());

		// テンプレートID
		template.set(EKK0021C013CBSMsg.TEMPLATEID, "EKK0021C013");

		// 機能コード（デフォルト：１）
		template.set(EKK0021C013CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);

		// 機能コード
		template.set(EKK0021C013CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		
		// 申込書番号採番マップ.申込区分 → 申込区分
		setTemplate(param, template, EKK0021C013CBSMsg.MSKM_KBN, inMap, "", "mskm_kbn");
		// 申込書番号採番マップ.申込形態コード → 申込形態コード
		setTemplate(param, template, EKK0021C013CBSMsg.MSKM_FORM_CD, inMap, "", "mskm_form_cd");
		// 申込書番号採番マップ.年月日 → 年月日
		setTemplate(param, template, EKK0021C013CBSMsg.YMD, inMap, "", "ymd");

		return template;
	}

	/**
	 * 申込書番号採番の下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0021C013(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		dataMap = (HashMap)dataMap.get("EKK0021C013CBSMsg");
		if (dataMap == null)
		{
			dataMap = new HashMap();
		}

		// 申込書番号採番マップ.申込書番号 ← 申込書番号
		if (template.isNull(EKK0021C013CBSMsg.MSKMSHO_NO))
		{
			dataMap.put("mskmsho_no", "");
			mskmShoNo = "";
		}
		else
		{
			dataMap.put("mskmsho_no", template.getString(EKK0021C013CBSMsg.MSKMSHO_NO));
			mskmShoNo = template.getString(EKK0021C013CBSMsg.MSKMSHO_NO);
			// 契約新規申込ワークエリアへ登録
			JKKBpCommon.setWkMskmshoNo(param, template.getString(EKK0021C013CBSMsg.MSKMSHO_NO));
		}

		// エラー情報の設定
		editErrInfoEKK0021C013(param, template, (Integer)returnCode, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0021C013(IRequestParameterReadWrite param, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		int templateStatus = template.getInt(EKK0021C013CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);

		// 申込書番号採番マップ.申込区分 → 申込区分 のエラー情報返却
		setErrInfo(inMap, "mskm_kbn_err", template, EKK0021C013CBSMsg.MSKM_KBN_ERR);
		// 申込書番号採番マップ.申込形態コード → 申込形態コード のエラー情報返却
		setErrInfo(inMap, "mskm_form_cd_err", template, EKK0021C013CBSMsg.MSKM_FORM_CD_ERR);
		// 申込書番号採番マップ.年月日 → 年月日 のエラー情報返却
		setErrInfo(inMap, "ymd_err", template, EKK0021C013CBSMsg.YMD_ERR);
		
		return param;
	}

	/**
	 * 申込登録の上りマッピング処理を行います。
	 * 
	 * <br>
	 * @param param
	 * @param fixedText
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0011D010(IRequestParameterReadWrite param, String fixedText) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0011D010CBSMsg.class.getName());
		ArrayList inList = null;
		CAANMsg[] templateArray = null;

		// テンプレートID
		template.set(EKK0011D010CBSMsg.TEMPLATEID, "EKK0011D010");

		// 機能コード（デフォルト：１）
		template.set(EKK0011D010CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		//		HashMap inMap = (HashMap)((HashMap)param.getData(fixedText)).get("EKK0011D010CBSMsg");
		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);

		// 機能コード
		template.set(EKK0011D010CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));

		// 作業領域のマップを取得
		HashMap workDataMap = null;
		Map workMap = param.getMappingWorkArea();
		if (workMap != null)
		{
			workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_KEISHA);
		}

		// 申込登録マップ.ＳＹＳＩＤ → ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			if (workDataMap == null || workDataMap.get("sysid") == null || "".equals(workDataMap.get("sysid")))
			{
				template.setNull(EKK0011D010CBSMsg.SYSID);
			}
			else
			{
				template.set(EKK0011D010CBSMsg.SYSID, (String)workDataMap.get("sysid"));
			}
		}
		else
		{
			template.set(EKK0011D010CBSMsg.SYSID, (String)inMap.get("sysid"));
		}

		// 申込登録マップ.申込種別コード → 申込種別コード
		if (inMap == null || inMap.get("mskm_sbt_cd") == null || "".equals(inMap.get("mskm_sbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_SBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_SBT_CD, (String)inMap.get("mskm_sbt_cd"));
		}

		// 申込登録マップ.申込書到着年月日 → 申込書到着年月日
		if (inMap == null || inMap.get("mskmsho_ariv_ymd") == null || "".equals(inMap.get("mskmsho_ariv_ymd")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKMSHO_ARIV_YMD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKMSHO_ARIV_YMD, (String)inMap.get("mskmsho_ariv_ymd"));
		}

		// 申込登録マップ.申込受付年月日時分秒 → 申込受付年月日時分秒
		if (inMap == null || inMap.get("mskm_uk_dtm") == null || "".equals(inMap.get("mskm_uk_dtm")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_UK_DTM);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_UK_DTM, (String)inMap.get("mskm_uk_dtm"));
		}

		// 申込登録マップ.申込受付担当ユーザーＩＤ → 申込受付担当ユーザーID
		if (inMap == null || inMap.get("mskm_uk_tnt_user_id") == null || "".equals(inMap.get("mskm_uk_tnt_user_id")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_UK_TNT_USER_ID);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_UK_TNT_USER_ID, (String)inMap.get("mskm_uk_tnt_user_id"));
		}

		// 申込登録マップ.申込年月日 → 申込年月日
		if (inMap == null || inMap.get("mskm_ymd") == null || "".equals(inMap.get("mskm_ymd")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_YMD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_YMD, (String)inMap.get("mskm_ymd"));
		}

		// 申込登録マップ.総合営業センター受付番号 → 総合営業センター受付番号
		if (inMap == null || inMap.get("ttl_business_center_uk_no") == null || "".equals(inMap.get("ttl_business_center_uk_no")))
		{
			template.setNull(EKK0011D010CBSMsg.TTL_BUSINESS_CENTER_UK_NO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TTL_BUSINESS_CENTER_UK_NO, (String)inMap.get("ttl_business_center_uk_no"));
		}

		// 申込登録マップ.総合営業申込契機コード → 総合営業申込契機コード
		if (inMap == null || inMap.get("ttl_business_mskm_opt_cd") == null || "".equals(inMap.get("ttl_business_mskm_opt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.TTL_BUSINESS_MSKM_OPT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TTL_BUSINESS_MSKM_OPT_CD, (String)inMap.get("ttl_business_mskm_opt_cd"));
		}

		// 申込登録マップ.申込連絡先電話番号 → 申込連絡先電話番号
		if (inMap == null || inMap.get("mskm_rrks_telno") == null || "".equals(inMap.get("mskm_rrks_telno")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_RRKS_TELNO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_RRKS_TELNO, (String)inMap.get("mskm_rrks_telno"));
		}

		// 申込登録マップ.申込実施者種別コード → 申込実施者種別コード
		if (inMap == null || inMap.get("mskm_jssis_sbt_cd") == null || "".equals(inMap.get("mskm_jssis_sbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_JSSIS_SBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_JSSIS_SBT_CD, (String)inMap.get("mskm_jssis_sbt_cd"));
		}

		// 申込登録マップ.お客様ご要望事項 → お客様ご要望事項
		if (inMap == null || inMap.get("cust_yobo_jiko") == null || "".equals(inMap.get("cust_yobo_jiko")))
		{
			template.setNull(EKK0011D010CBSMsg.CUST_YOBO_JIKO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.CUST_YOBO_JIKO, (String)inMap.get("cust_yobo_jiko"));
		}

		// 申込登録マップ.電話連絡希望時間帯コード → 電話連絡希望時間帯コード
		if (inMap == null || inMap.get("tel_rrk_kibo_time_cd") == null || "".equals(inMap.get("tel_rrk_kibo_time_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.TEL_RRK_KIBO_TIME_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TEL_RRK_KIBO_TIME_CD, (String)inMap.get("tel_rrk_kibo_time_cd"));
		}

		// 申込登録マップ.宅内調査希望時間帯コード → 宅内調査希望時間帯コード
		if (inMap == null || inMap.get("takcho_kibo_time_cd") == null || "".equals(inMap.get("takcho_kibo_time_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.TAKCHO_KIBO_TIME_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TAKCHO_KIBO_TIME_CD, (String)inMap.get("takcho_kibo_time_cd"));
		}

		// 申込登録マップ.仮申込フラグ → 仮申込フラグ
		if (inMap == null || inMap.get("kari_mskm_flg") == null || "".equals(inMap.get("kari_mskm_flg")))
		{
			template.setNull(EKK0011D010CBSMsg.KARI_MSKM_FLG);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.KARI_MSKM_FLG, (String)inMap.get("kari_mskm_flg"));
		}

		// 申込登録マップ.リファラー → リファラー
		if (inMap == null || inMap.get("referer") == null || "".equals(inMap.get("referer")))
		{
			template.setNull(EKK0011D010CBSMsg.REFERER);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.REFERER, (String)inMap.get("referer"));
		}

		// 申込登録マップ.関西電力お客様情報授受同意有無 → 関西電力お客様情報授受同意有無
		if (inMap == null || inMap.get("kepco_custinfo_juju_doi_um") == null || "".equals(inMap.get("kepco_custinfo_juju_doi_um")))
		{
			template.set(EKK0011D010CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM, JKKStrConst.CD_DIV_UM_NASHI);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM, (String)inMap.get("kepco_custinfo_juju_doi_um"));
		}

		// 申込登録マップ.コンシューマ営業用申込状態識別コード → コンシューマ営業用申込状態識別コード
		if (inMap == null || inMap.get("consmbsn_mskm_stat_skbt_cd") == null || "".equals(inMap.get("consmbsn_mskm_stat_skbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD, (String)inMap.get("consmbsn_mskm_stat_skbt_cd"));
		}

		// 申込登録マップ.受付担当者識別コード → 受付担当者識別コード
		if (inMap == null || inMap.get("uk_tntsha_skbt_cd") == null || "".equals(inMap.get("uk_tntsha_skbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.UK_TNTSHA_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.UK_TNTSHA_SKBT_CD, (String)inMap.get("uk_tntsha_skbt_cd"));
		}
		
		// ANK-2679-00-00 2016/05/23 ADD START
		
		// 申込登録マップ.代理店申込受付eoスタッフユーザーID → 代理店申込受付eoスタッフユーザーID
		if (inMap == null || inMap.get("agnt_mkm_uk_eostf_user_id") == null || "".equals(inMap.get("agnt_mkm_uk_eostf_user_id")))
		{
			template.setNull(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID, (String)inMap.get("agnt_mkm_uk_eostf_user_id"));
		}
		
		// 申込登録マップ.代理店申込受付量販店員カナ名(姓) → 代理店申込受付量販店員カナ名(姓)
		if (inMap == null || inMap.get("agnt_mkm_uk_rhstf_kana_sei") == null || "".equals(inMap.get("agnt_mkm_uk_rhstf_kana_sei")))
		{
			template.setNull(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI, (String)inMap.get("agnt_mkm_uk_rhstf_kana_sei"));
		}
		// ANK-2679-00-00 2016/05/23 ADD END

		// 申込登録マップ.工事依頼情報連絡事項 → 工事依頼情報連絡事項
		if (inMap == null || inMap.get("koji_req_info_rrk_jiko") == null || "".equals(inMap.get("koji_req_info_rrk_jiko")))
		{
			template.setNull(EKK0011D010CBSMsg.KOJI_REQ_INFO_RRK_JIKO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.KOJI_REQ_INFO_RRK_JIKO, (String)inMap.get("koji_req_info_rrk_jiko"));
		}

		// 申込登録マップ.申込経路識別コード → 申込経路識別コード
		if (inMap == null || inMap.get("mskm_route_skbt_cd") == null || "".equals(inMap.get("mskm_route_skbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.MSKM_ROUTE_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.MSKM_ROUTE_SKBT_CD, (String)inMap.get("mskm_route_skbt_cd"));
		}

		// 申込登録マップ.電話連絡希望日種別コード → 電話連絡希望日種別コード
		if (inMap == null || inMap.get("kk0011_tel_rrk_kibod_sbt_cd") == null || "".equals(inMap.get("kk0011_tel_rrk_kibod_sbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD, (String)inMap.get("kk0011_tel_rrk_kibod_sbt_cd"));
		}

		// 申込登録マップ.宅内調査希望日種別コード → 宅内調査希望日種別コード
		if (inMap == null || inMap.get("kk0011_takcho_kibod_sbt_cd") == null || "".equals(inMap.get("kk0011_takcho_kibod_sbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD, (String)inMap.get("kk0011_takcho_kibod_sbt_cd"));
		}

		// 申込登録マップ.利用サービス継続種別コード → 利用サービス継続種別コード
		if (inMap == null || inMap.get("kk0011_use_svc_keizk_sbt_cd") == null || "".equals(inMap.get("kk0011_use_svc_keizk_sbt_cd")))
		{
			template.setNull(EKK0011D010CBSMsg.USE_SVC_KEIZK_SBT_CD);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.USE_SVC_KEIZK_SBT_CD, (String)inMap.get("kk0011_use_svc_keizk_sbt_cd"));
		}

		// 申込登録マップ.照査前連絡事項要否 → 照査前連絡事項要否
		if (inMap == null || inMap.get("kk0011_shosa_bf_rrk_jiko_yh") == null || "".equals(inMap.get("kk0011_shosa_bf_rrk_jiko_yh")))
		{
			template.setNull(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_YH);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_YH, (String)inMap.get("kk0011_shosa_bf_rrk_jiko_yh"));
		}

		// 申込登録マップ.照査前連絡事項 → 照査前連絡事項
		if (inMap == null || inMap.get("kk0011_shosa_bf_rrk_jiko") == null || "".equals(inMap.get("kk0011_shosa_bf_rrk_jiko")))
		{
			template.setNull(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO, (String)inMap.get("kk0011_shosa_bf_rrk_jiko"));
		}

		// 申込登録マップ.代理店申込取次有無 → 代理店申込取次有無
		if (inMap == null || inMap.get("agnt_mskm_trtg_um") == null || "".equals(inMap.get("agnt_mskm_trtg_um")))
		{
			template.setNull(EKK0011D010CBSMsg.AGNT_MSKM_TRTG_UM);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.AGNT_MSKM_TRTG_UM, (String)inMap.get("agnt_mskm_trtg_um"));
		}

// ANK-3910-00-00対応 20210131 星野 ADD START
		// 申込登録マップ.定額サービス申込機器 → 定額サービス申込機器
		if (inMap == null || inMap.get("tegak_svc_mskm_kiki") == null || "".equals(inMap.get("tegak_svc_mskm_kiki")))
		{
			template.setNull(EKK0011D010CBSMsg.TEGAK_SVC_MSKM_KIKI);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.TEGAK_SVC_MSKM_KIKI, (String)inMap.get("tegak_svc_mskm_kiki"));
		}
// ANK-3910-00-00対応 20210131 星野 ADD END
// ▽▽▽ ANK-4427-00-00 ADD START
		
		// 申込登録マップ.移転元サービス契約番号 → 移転元サービス契約番号
		if (inMap == null || inMap.get("itenm_svc_kei_no") == null || "".equals(inMap.get("itenm_svc_kei_no")))
		{
			template.setNull(EKK0011D010CBSMsg.ITENM_SVC_KEI_NO);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.ITENM_SVC_KEI_NO, (String)inMap.get("itenm_svc_kei_no"));
		}
		
// △△△ ANK-4427-00-00 ADD END
		
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		templateArray = template.getCAANMsgList(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST);

		if (templateArray == null)
		{
			templateArray = new CAANMsg[inList.size()];
		}

		if (inList != null)
		{

			// テレビ用設定項目の条件を設定
			String mskm_svc_net = getMapValue(param, fixedText, "mskm_svc_net");
			String mskm_svc_tel = getMapValue(param, fixedText, "mskm_svc_tel");
			String mskm_svc_tv = getMapValue(param, fixedText, "mskm_svc_tv");
			boolean tvFlg = false;
			int tvMskmDtlNoCnt = 0;

			if ("1".equals(mskm_svc_net))
			{
				tvMskmDtlNoCnt++;
			}
			if ("1".equals(mskm_svc_tel))
			{
				tvMskmDtlNoCnt++;
			}
			if ("1".equals(mskm_svc_tv))
			{
				tvFlg = true;
			}
			
			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);

				CAANMsg childTemplate = templateArray[i];
				if (childTemplate == null)
				{
					childTemplate = new CAANMsg(EKK0011D010CBSMsg1List.class.getName());
				}
//				// 申込登録マップ.申込登録明細.申込書番号 → 申込登録明細.申込書番号
//				if (childMap == null || childMap.get("mskmsho_no") == null || "".equals(childMap.get("mskmsho_no")))
//				{
//					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKMSHO_NO);
//				}
//				else
//				{
//					childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_NO, (String)childMap.get("mskmsho_no"));
//				}

				// 申込書番号
				childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_NO, mskmShoNo);

				// 申込登録マップ.申込登録明細.復活案件フラグ → 申込登録明細.復活案件フラグ
				if (childMap == null || childMap.get("hukkat_anken_flg") == null || "".equals(childMap.get("hukkat_anken_flg")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.HUKKAT_ANKEN_FLG);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.HUKKAT_ANKEN_FLG, (String)childMap.get("hukkat_anken_flg"));
				}

				// 申込登録マップ.申込登録明細.ＷＥＢ受付番号 → 申込登録明細.WEB受付番号
				if (childMap == null || childMap.get("web_uk_no") == null || "".equals(childMap.get("web_uk_no")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.WEB_UK_NO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.WEB_UK_NO, (String)childMap.get("web_uk_no"));
				}

				// 申込登録マップ.申込登録明細.申込形態コード → 申込登録明細.申込形態コード
				if (childMap == null || childMap.get("mskm_form_cd") == null || "".equals(childMap.get("mskm_form_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKM_FORM_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKM_FORM_CD, (String)childMap.get("mskm_form_cd"));
				}

				// 申込登録マップ.申込登録明細.申込明細種別コード → 申込登録明細.申込明細種別コード
				if (childMap == null || childMap.get("mskm_dtl_sbt_cd") == null || "".equals(childMap.get("mskm_dtl_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKM_DTL_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKM_DTL_SBT_CD, (String)childMap.get("mskm_dtl_sbt_cd"));
				}

				// 申込登録マップ.申込登録明細.連絡先携帯電話番号 → 申込登録明細.連絡先携帯電話番号
				if (childMap == null || childMap.get("rrks_ktai_telno") == null || "".equals(childMap.get("rrks_ktai_telno")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RRKS_KTAI_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RRKS_KTAI_TELNO, (String)childMap.get("rrks_ktai_telno"));
				}

				// 申込登録マップ.申込登録明細.連絡先勤務先名 → 申込登録明細.連絡先勤務先名
				if (childMap == null || childMap.get("rrks_offc_nm") == null || "".equals(childMap.get("rrks_offc_nm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RRKS_OFFC_NM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RRKS_OFFC_NM, (String)childMap.get("rrks_offc_nm"));
				}

				// 申込登録マップ.申込登録明細.昼間連絡先電話番号 → 申込登録明細.昼間連絡先電話番号
				if (childMap == null || childMap.get("dt_rrks_telno") == null || "".equals(childMap.get("dt_rrks_telno")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.DT_RRKS_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.DT_RRKS_TELNO, (String)childMap.get("dt_rrks_telno"));
				}

				// 申込登録マップ.申込登録明細.新規申込種別コード → 申込登録明細.新規申込種別コード
				if (childMap == null || childMap.get("new_mskm_sbt_cd") == null || "".equals(childMap.get("new_mskm_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.NEW_MSKM_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.NEW_MSKM_SBT_CD, (String)childMap.get("new_mskm_sbt_cd"));
				}

				// 申込登録マップ.申込登録明細.申込契機コード → 申込登録明細.申込契機コード
				if (childMap == null || childMap.get("mskm_optnty_cd") == null || "".equals(childMap.get("mskm_optnty_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKM_OPTNTY_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKM_OPTNTY_CD, (String)childMap.get("mskm_optnty_cd"));
				}

				// 申込登録マップ.申込登録明細.宅内調査希望アポ期限年月日 → 申込登録明細.宅内調査希望アポ期限年月日
				if (childMap == null || childMap.get("takcho_kibo_apo_kigen_ymd") == null || "".equals(childMap.get("takcho_kibo_apo_kigen_ymd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD, (String)childMap.get("takcho_kibo_apo_kigen_ymd"));
				}

				// 申込登録マップ.申込登録明細.工事アポ連絡先指定コード → 申込登録明細.工事アポ連絡先指定コード
				if (childMap == null || childMap.get("koji_apo_rrks_shitei_cd") == null || "".equals(childMap.get("koji_apo_rrks_shitei_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD, (String)childMap.get("koji_apo_rrks_shitei_cd"));
				}

				// 申込登録マップ.申込登録明細.工事アポ連絡先電話番号 → 申込登録明細.工事アポ連絡先電話番号
				if (childMap == null || childMap.get("koji_apo_rrks_telno") == null || "".equals(childMap.get("koji_apo_rrks_telno")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_TELNO, (String)childMap.get("koji_apo_rrks_telno"));
				}

				// 申込登録マップ.申込登録明細.連絡事項登録年月日時分秒 → 申込登録明細.連絡事項登録年月日時分秒
				if (childMap == null || childMap.get("rrk_jiko_add_dtm") == null || "".equals(childMap.get("rrk_jiko_add_dtm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RRK_JIKO_ADD_DTM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RRK_JIKO_ADD_DTM, (String)childMap.get("rrk_jiko_add_dtm"));
				}

				// 申込登録マップ.申込登録明細.申込連絡先メールアドレス → 申込登録明細.申込連絡先メールアドレス
				if (childMap == null || childMap.get("mskm_rrks_mlad") == null || "".equals(childMap.get("mskm_rrks_mlad")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKM_RRKS_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKM_RRKS_MLAD, (String)childMap.get("mskm_rrks_mlad"));
				}

				// 申込登録マップ.申込登録明細.工事進捗通知メールアドレス → 申込登録明細.工事進捗通知メールアドレス
				if (childMap == null || childMap.get("koji_prg_tchi_mlad") == null || "".equals(childMap.get("koji_prg_tchi_mlad")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KOJI_PRG_TCHI_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KOJI_PRG_TCHI_MLAD, (String)childMap.get("koji_prg_tchi_mlad"));
				}

				// 申込登録マップ.申込登録明細.連絡事項 → 申込登録明細.連絡事項
				if (childMap == null || childMap.get("rrk_jiko") == null || "".equals(childMap.get("rrk_jiko")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RRK_JIKO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RRK_JIKO, (String)childMap.get("rrk_jiko"));
				}

				// 申込登録マップ.申込登録明細.工事進捗通知携帯メールアドレス → 申込登録明細.工事進捗通知携帯メールアドレス
				if (childMap == null || childMap.get("kjsc_tch_ktai_mlad") == null || "".equals(childMap.get("kjsc_tch_ktai_mlad")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KJSC_TCH_KTAI_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KJSC_TCH_KTAI_MLAD, (String)childMap.get("kjsc_tch_ktai_mlad"));
				}

				// 申込登録マップ.申込登録明細.メール送信除外フラグ → 申込登録明細.メール送信除外フラグ
				if (childMap == null || childMap.get("ml_send_jgi_flg") == null || "".equals(childMap.get("ml_send_jgi_flg")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.ML_SEND_JGI_FLG);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.ML_SEND_JGI_FLG, (String)childMap.get("ml_send_jgi_flg"));
				}

				// 申込登録マップ.申込登録明細.メール送信除外理由メモ → 申込登録明細.メール送信除外理由メモ
				if (childMap == null || childMap.get("ml_send_jgi_rsn_memo") == null || "".equals(childMap.get("ml_send_jgi_rsn_memo")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.ML_SEND_JGI_RSN_MEMO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.ML_SEND_JGI_RSN_MEMO, (String)childMap.get("ml_send_jgi_rsn_memo"));
				}

				// 申込登録マップ.申込登録明細.番ポ申込連絡先電話番号 → 申込登録明細.番ポ申込連絡先電話番号
				if (childMap == null || childMap.get("bmp_mskm_rrks_tln") == null || "".equals(childMap.get("bmp_mskm_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.BMP_MSKM_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.BMP_MSKM_RRKS_TLN, (String)childMap.get("bmp_mskm_rrks_tln"));
				}

				// 申込登録マップ.申込登録明細.連絡手段補記 → 申込登録明細.連絡手段補記
				if (childMap == null || childMap.get("rrk_way_hoki") == null || "".equals(childMap.get("rrk_way_hoki")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RRK_WAY_HOKI);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RRK_WAY_HOKI, (String)childMap.get("rrk_way_hoki"));
				}

				// 申込登録マップ.申込登録明細.新築物件コード → 申込登録明細.新築物件コード
				if (childMap == null || childMap.get("newconst_bukken_cd") == null || "".equals(childMap.get("newconst_bukken_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.NEWCONST_BUKKEN_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.NEWCONST_BUKKEN_CD, (String)childMap.get("newconst_bukken_cd"));
				}

				// 申込登録マップ.申込登録明細.同一設備再申込コード → 申込登録明細.同一設備再申込コード
				if (childMap == null || childMap.get("same_equip_re_mskm_cd") == null || "".equals(childMap.get("same_equip_re_mskm_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.SAME_EQUIP_RE_MSKM_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.SAME_EQUIP_RE_MSKM_CD, (String)childMap.get("same_equip_re_mskm_cd"));
				}

				// 申込登録マップ.申込登録明細.オプションサービス引継有無 → 申込登録明細.オプションサービス引継有無
				if (childMap == null || childMap.get("op_svc_hktgi_um") == null || "".equals(childMap.get("op_svc_hktgi_um")))
				{
					//**********↓障害対応(IT1-2012-0000024)**********/
//					childTemplate.setNull(EKK0011D010CBSMsg1List.OP_SVC_HKTGI_UM);
					childTemplate.set(EKK0011D010CBSMsg1List.OP_SVC_HKTGI_UM, JKKStrConst.CD_DIV_UM_NASHI);
					//**********↑障害対応(IT1-2012-0000024)**********/
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.OP_SVC_HKTGI_UM, (String)childMap.get("op_svc_hktgi_um"));
				}

				// 申込登録マップ.申込登録明細.解約書類送付希望有無 → 申込登録明細.解約書類送付希望有無
				if (childMap == null || childMap.get("dsl_aticle_sohu_kibo_um") == null || "".equals(childMap.get("dsl_aticle_sohu_kibo_um")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM, (String)childMap.get("dsl_aticle_sohu_kibo_um"));
				}

				// 申込登録マップ.申込登録明細.本人確認書類種別コード → 申込登録明細.本人確認書類種別コード
				if (childMap == null || childMap.get("hnin_cfm_aticle_sbt_cd") == null || "".equals(childMap.get("hnin_cfm_aticle_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD, (String)childMap.get("hnin_cfm_aticle_sbt_cd"));
				}

				// ANK-3136-00-00 ADD START
				// 申込登録マップ.申込登録明細.他システム連携_宅内調査要否 → 申込登録明細.他システム連携_宅内調査要否
				if (childMap == null || childMap.get("tsyrn_takcho_yh") == null || "".equals(childMap.get("tsyrn_takcho_yh")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_YH);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_YH, (String)childMap.get("tsyrn_takcho_yh"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_工事連絡先氏名 → 申込登録明細.他システム連携_工事連絡先氏名
				if (childMap == null || childMap.get("tsyrn_kj_rrks_nm") == null || "".equals(childMap.get("tsyrn_kj_rrks_nm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_KJ_RRKS_NM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_KJ_RRKS_NM, (String)childMap.get("tsyrn_kj_rrks_nm"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_工事連絡先電話番号 → 申込登録明細.他システム連携_工事連絡先電話番号
				if (childMap == null || childMap.get("tsyrn_kj_rrks_tln") == null || "".equals(childMap.get("tsyrn_kj_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_KJ_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_KJ_RRKS_TLN, (String)childMap.get("tsyrn_kj_rrks_tln"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_宅内調査時連絡先氏名 → 申込登録明細.他システム連携_宅内調査時連絡先氏名
				if (childMap == null || childMap.get("tsyrn_takcho_ji_rrks_nm") == null || "".equals(childMap.get("tsyrn_takcho_ji_rrks_nm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_NM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_NM, (String)childMap.get("tsyrn_takcho_ji_rrks_nm"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_宅内調査時連絡先電話番号 → 申込登録明細.他システム連携_宅内調査時連絡先電話番号
				if (childMap == null || childMap.get("tsyrn_takcho_ji_rrks_tln") == null || "".equals(childMap.get("tsyrn_takcho_ji_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_TLN, (String)childMap.get("tsyrn_takcho_ji_rrks_tln"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_連絡希望日時 → 申込登録明細.他システム連携_連絡希望日時
				if (childMap == null || childMap.get("tsyrn_rrk_kibo_date") == null || "".equals(childMap.get("tsyrn_rrk_kibo_date")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_RRK_KIBO_DATE);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_RRK_KIBO_DATE, (String)childMap.get("tsyrn_rrk_kibo_date"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_地図有無 → 申込登録明細.他システム連携_地図有無
				if (childMap == null || childMap.get("tsyrn_map_um") == null || "".equals(childMap.get("tsyrn_map_um")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_MAP_UM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_MAP_UM, (String)childMap.get("tsyrn_map_um"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_既存契約情報 → 申込登録明細.他システム連携_既存契約情報
				if (childMap == null || childMap.get("tsyrn_kzn_kei_inf") == null || "".equals(childMap.get("tsyrn_kzn_kei_inf")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_KZN_KEI_INF);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_KZN_KEI_INF, (String)childMap.get("tsyrn_kzn_kei_inf"));
				}

				// 申込登録マップ.申込登録明細.他システム連携_不備解消年月日 → 申込登録明細.他システム連携_不備解消年月日
				if (childMap == null || childMap.get("tsyrn_hbi_kaishou_ymd") == null || "".equals(childMap.get("tsyrn_hbi_kaishou_ymd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TSYRN_HBI_KAISHOU_YMD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TSYRN_HBI_KAISHOU_YMD, (String)childMap.get("tsyrn_hbi_kaishou_ymd"));
				}

				// 申込登録マップ.申込登録明細.設備流用有無 → 申込登録明細.設備流用有無
				if (childMap == null || childMap.get("equip_ryuyo_um") == null || "".equals(childMap.get("equip_ryuyo_um")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.EQUIP_RYUYO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.EQUIP_RYUYO_UM, (String)childMap.get("equip_ryuyo_um"));
				}

				// 申込登録マップ.申込登録明細.流用元工事案件番号 → 申込登録明細.流用元工事案件番号
				if (childMap == null || childMap.get("ryuyo_moto_kjak_no") == null || "".equals(childMap.get("ryuyo_moto_kjak_no")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.RYUYO_MOTO_KJAK_NO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.RYUYO_MOTO_KJAK_NO, (String)childMap.get("ryuyo_moto_kjak_no"));
				}

				// 申込登録マップ.申込登録明細.設備流用工事完了希望年月日 → 申込登録明細.設備流用工事完了希望年月日
				if (childMap == null || childMap.get("sbry_kj_fin_kiboymd") == null || "".equals(childMap.get("sbry_kj_fin_kiboymd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.SBRY_KJ_FIN_KIBOYMD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.SBRY_KJ_FIN_KIBOYMD, (String)childMap.get("sbry_kj_fin_kiboymd"));
				}
				// ANK-3136-00-00 ADD END

				// 申込登録マップ.申込登録明細.申込書種別コード → 申込登録明細.申込書種別コード
				if (childMap == null || childMap.get("mskmsho_sbt_cd") == null || "".equals(childMap.get("mskmsho_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKMSHO_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_SBT_CD, (String)childMap.get("mskmsho_sbt_cd"));
				}

				// 申込登録マップ.契約付加コード → 申込登録明細.契約付加コード
				if (childMap == null || JKKBpCommon.isNull(childMap.get("kei_huka_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KEI_HUKA_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KEI_HUKA_CD, (String)childMap.get("kei_huka_cd"));
				}

				// 申込登録マップ.申込登録明細.地図添付有無 → 申込登録明細.地図添付有無
				if (childMap == null || childMap.get("map_temp_um") == null || "".equals(childMap.get("map_temp_um")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MAP_TEMP_UM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MAP_TEMP_UM, (String)childMap.get("map_temp_um"));
				}

				// 申込登録マップ.申込登録明細.KCNSTB申込台数 → 申込登録明細.KCNSTB申込台数
				if ((tvFlg && tvMskmDtlNoCnt != i) || (childMap == null || JKKBpCommon.isNull(childMap.get("kcn_stb_mskm_cnt"))))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KCN_STB_MSKM_CNT);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KCN_STB_MSKM_CNT, (String)childMap.get("kcn_stb_mskm_cnt"));
				}

				// 申込登録マップ.申込登録明細.KCNSTB種類コード → 申込登録明細.KCNSTB種類コード
				if ((tvFlg && tvMskmDtlNoCnt != i) || (childMap == null || JKKBpCommon.isNull(childMap.get("kcn_stb_kind_cd"))))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KCN_STB_KIND_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KCN_STB_KIND_CD, (String)childMap.get("kcn_stb_kind_cd"));
				}

				// 申込登録マップ.申込登録明細.マンション設備システム連携用記事欄 → 申込登録明細.マンション設備システム連携用記事欄
				if (childMap == null || childMap.get("manssbsys_rnki_yo_kijiran") == null || "".equals(childMap.get("manssbsys_rnki_yo_kijiran")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN, (String)childMap.get("manssbsys_rnki_yo_kijiran"));
				}

				// 申込登録マップ.申込登録明細.マンションID → 申込登録明細.マンションID
				if (childMap == null || childMap.get("mansion_id") == null || "".equals(childMap.get("mansion_id")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MANSION_ID);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MANSION_ID, (String)childMap.get("mansion_id"));
				}

				// 申込登録マップ.申込登録明細.CAT-ID → 申込登録明細.CAT-ID
				if (childMap == null || childMap.get("catid") == null || "".equals(childMap.get("catid")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.CATID);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.CATID, (String)childMap.get("catid"));
				}

				// 申込登録マップ.申込登録明細.申込受付種別コード → 申込登録明細.申込受付種別コード
				if (childMap == null || childMap.get("mkm_uk_sbt_cd") == null || "".equals(childMap.get("mkm_uk_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MKM_UK_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MKM_UK_SBT_CD, (String)childMap.get("mkm_uk_sbt_cd"));
				}

				// 申込登録マップ.申込登録明細.申込書取扱情報担当者名 → 申込登録明細.申込書取扱情報担当者名
				if (childMap == null || childMap.get("mskmsho_trat_if_tntsha_nm") == null || "".equals(childMap.get("mskmsho_trat_if_tntsha_nm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM, (String)childMap.get("mskmsho_trat_if_tntsha_nm"));
				}

				// 申込登録マップ.申込登録明細.申込書取扱情報電話番号 → 申込登録明細.申込書取扱情報電話番号
				if (childMap == null || childMap.get("mskmsho_trat_if_telno") == null || "".equals(childMap.get("mskmsho_trat_if_telno")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TELNO, (String)childMap.get("mskmsho_trat_if_telno"));
				}

				// 申込登録マップ.申込登録明細.割引自動適用対象外フラグ → 申込登録明細.割引自動適用対象外フラグ
				if (childMap == null || childMap.get("wrib_auto_aply_tg_gai_flg") == null || "".equals(childMap.get("wrib_auto_aply_tg_gai_flg")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.WRIB_AUTO_APLY_TG_GAI_FLG);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.WRIB_AUTO_APLY_TG_GAI_FLG, (String)childMap.get("wrib_auto_aply_tg_gai_flg"));
				}
				
				// 採番マップ.申込書明細番号 → 申込登録明細.申込書明細番号
				if (childMap == null || childMap.get("mskmsho_dtl_no") == null || "".equals(childMap.get("mskmsho_dtl_no")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO, (String)childMap.get("mskmsho_dtl_no"));
				}
				// 申込登録マップ.本人確認書類名 → 申込登録明細.本人確認書類名
				if (childMap == null || childMap.get("hnin_cfm_aticle_nm") == null || "".equals(childMap.get("hnin_cfm_aticle_nm")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_NM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_NM, (String)childMap.get("hnin_cfm_aticle_nm"));
				}
				templateArray[i] = childTemplate;
				// ANK-4096-00-00 ADD START
				// 申込登録マップ.申込登録明細.現在利用先契約回線区分 → 申込登録明細.現在利用先契約回線区分
				if (childMap == null || childMap.get("now_use_sk_kei_kisn_div") == null || "".equals(childMap.get("now_use_sk_kei_kisn_div")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.NOW_USE_SK_KEI_KISN_DIV);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.NOW_USE_SK_KEI_KISN_DIV, (String)childMap.get("now_use_sk_kei_kisn_div"));
				}
				// 申込登録マップ.申込登録明細.機器設置場所変更有無 → 申込登録明細.機器設置場所変更有無
				if (childMap == null || childMap.get("kiki_setplc_chgum") == null || "".equals(childMap.get("kiki_setplc_chgum")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.KIKI_SETPLC_CHGUM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.KIKI_SETPLC_CHGUM, (String)childMap.get("kiki_setplc_chgum"));
				}
				// 申込登録マップ.申込登録明細.同日実施希望有無 → 申込登録明細.同日実施希望有無
				if (childMap == null || childMap.get("dojitu_jssi_kbum") == null || "".equals(childMap.get("dojitu_jssi_kbum")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.DOJITU_JSSI_KBUM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.DOJITU_JSSI_KBUM, (String)childMap.get("dojitu_jssi_kbum"));
				}
				// 申込登録マップ.申込登録明細.早期開通早期連絡希望有無 → 申込登録明細.早期開通早期連絡希望有無
				if (childMap == null || childMap.get("early_open_early_rrk_kbum") == null || "".equals(childMap.get("early_open_early_rrk_kbum")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.EARLY_OPEN_EARLY_RRK_KBUM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.EARLY_OPEN_EARLY_RRK_KBUM, (String)childMap.get("early_open_early_rrk_kbum"));
				}
				// ANK-4096-00-00 ADD END
				// ANK-4088-00-00 ADD START
				// 申込登録マップ.申込登録明細.宅内調査のアポ架電希望 → 申込登録明細.宅内調査のアポ架電希望
				if (childMap == null || childMap.get("takcho_apo_kaden_kibo_um") == null || "".equals(childMap.get("takcho_apo_kaden_kibo_um")))
				{
					childTemplate.setNull(EKK0011D010CBSMsg1List.TAKCHO_APO_KADEN_KIBO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D010CBSMsg1List.TAKCHO_APO_KADEN_KIBO_UM, (String)childMap.get("takcho_apo_kaden_kibo_um"));
				}
				// ANK-4088-00-00 ADD END
			}
		}
		template.set(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST, templateArray);

		return template;
	}

	/**
	 * 申込登録の下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0011D010(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];
		CAANMsg[] templateArray = null;

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;
		ArrayList workList = null;

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME_MSKM, workDataMap);
		}

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

//		dataMap = (HashMap)dataMap.get("EKK0011D010CBSMsg");
//		if (dataMap == null)
//		{
//			dataMap = new HashMap();
//		}

		// 申込登録マップ.申込番号 ← 申込番号
		if (template.isNull(EKK0011D010CBSMsg.MSKM_NO))
		{
			dataMap.put("kk0011_mskm_no", "");
		}
		else
		{
			dataMap.put("kk0011_mskm_no", template.getString(EKK0011D010CBSMsg.MSKM_NO));
			workDataMap.put("mskm_no", template.getString(EKK0011D010CBSMsg.MSKM_NO));
			// 契約新規申込ワークエリアへ登録
			JKKBpCommon.setWkMskmNo(param, template.getString(EKK0011D010CBSMsg.MSKM_NO));
		}

		// 申込登録マップ.世代登録年月日時分秒（申込）　 ← 世代登録年月日時分秒(申込)
		if (template.isNull(EKK0011D010CBSMsg.KK0011_GENE_ADD_DTM))
		{
			dataMap.put("kk0011_gene_add_dtm", "");
		}
		else
		{
			dataMap.put("kk0011_gene_add_dtm", template.getString(EKK0011D010CBSMsg.KK0011_GENE_ADD_DTM));
		}

		// 申込登録マップ.申込ステータス ← 申込ステータス
		if (template.isNull(EKK0011D010CBSMsg.MSKM_STAT))
		{
			dataMap.put("kk0011_mskm_stat", "");
		}
		else
		{
			dataMap.put("kk0011_mskm_stat", template.getString(EKK0011D010CBSMsg.MSKM_STAT));
		}

		// 申込登録マップ.登録年月日時分秒 ← 登録年月日時分秒
		if (template.isNull(EKK0011D010CBSMsg.ADD_DTM))
		{
			dataMap.put("kk0011_add_dtm", "");
		}
		else
		{
			dataMap.put("kk0011_add_dtm", template.getString(EKK0011D010CBSMsg.ADD_DTM));
		}

		// 申込登録マップ.登録オペレータアカウント ← 登録オペレータアカウント
		if (template.isNull(EKK0011D010CBSMsg.ADD_OPEACNT))
		{
			dataMap.put("kk0011_add_opeacnt", "");
		}
		else
		{
			dataMap.put("kk0011_add_opeacnt", template.getString(EKK0011D010CBSMsg.ADD_OPEACNT));
		}

		// 申込登録マップ.更新年月日時分秒 ← 更新年月日時分秒
		if (template.isNull(EKK0011D010CBSMsg.UPD_DTM))
		{
			dataMap.put("kk0011_upd_dtm", "");
		}
		else
		{
			JKKBpCommon.setLastDtmByMskm(param, (String)template.getString(EKK0011D010CBSMsg.UPD_DTM));
			dataMap.put("kk0011_upd_dtm", template.getString(EKK0011D010CBSMsg.UPD_DTM));
		}

		// 申込登録マップ.更新オペレータアカウント ← 更新オペレータアカウント
		if (template.isNull(EKK0011D010CBSMsg.UPD_OPEACNT))
		{
			dataMap.put("kk0011_upd_opeacnt", "");
		}
		else
		{
			dataMap.put("kk0011_upd_opeacnt", template.getString(EKK0011D010CBSMsg.UPD_OPEACNT));
		}

		// 申込登録マップ.無効フラグ ← 無効フラグ
		if (template.isNull(EKK0011D010CBSMsg.MK_FLG))
		{
			dataMap.put("kk0011_mk_flg", "");
		}
		else
		{
			dataMap.put("kk0011_mk_flg", template.getString(EKK0011D010CBSMsg.MK_FLG));
		}

		templateArray = template.getCAANMsgList(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);

		if (dataList == null)
		{
			dataList = new ArrayList();
		}

		workList = (ArrayList)dataMap.get(ADD_MSKM_LIST);
		if (workList == null)
		{
			workList = new ArrayList();
		}

		boolean mskmDtlNoSetFlg_Net = false;
		boolean mskmDtlNoSetFlg_Tel = false;
		boolean mskmDtlNoSetFlg_Tv = false;
		boolean mskmDtlNoSetFlg_Moba = false;
		boolean mskmDtlNoSetFlg_Adsl = false;

		String mskm_svc_net = getMapValue(param, fixedText, "mskm_svc_net");
		String mskm_svc_tel = getMapValue(param, fixedText, "mskm_svc_tel");
		String mskm_svc_tv = getMapValue(param, fixedText, "mskm_svc_tv");
		String mskm_svc_moba = getMapValue(param, fixedText, "mskm_svc_moba");
		String mskm_svc_adsl = getMapValue(param, fixedText, "mskm_svc_adsl");

		if (templateArray != null)
		{
			for (int i = 0; i < templateArray.length; i++)
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size())
				{
					dataList.add(new HashMap());
					workList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				HashMap childWorkMap = (HashMap)workList.get(i);

				// 申込登録マップ.申込登録明細.世代登録年月日時分秒（申込明細） ← 申込登録明細.世代登録年月日時分秒(申込明細)
				if (childTemplate.isNull(EKK0011D010CBSMsg1List.KK0021_GENE_ADD_DTM))
				{
					childMap.put("kk0021_gene_add_dtm", "");
				}
				else
				{
					childMap.put("kk0021_gene_add_dtm", childTemplate.getString(EKK0011D010CBSMsg1List.KK0021_GENE_ADD_DTM));
				}

				// 申込登録マップ.申込登録明細.申込明細ステータス ← 申込登録明細.申込明細ステータス
				if (childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_DTL_STAT))
				{
					childMap.put("kk0021_mskm_dtl_stat", "");
				}
				else
				{
					childMap.put("kk0021_mskm_dtl_stat", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_STAT));
				}

				// 申込登録マップ.申込登録明細.申込明細番号 ← 申込登録明細.申込明細番号
				if (childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_DTL_NO))
				{
					childMap.put("kk0021_mskm_dtl_no", "");
				}
				else
				{
					childMap.put("kk0021_mskm_dtl_no", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
					childWorkMap.put("mskm_dtl_no", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));

					// ネットの場合
					if (mskmDtlNoSetFlg_Net == false && "1".equals(mskm_svc_net))
					{
						// サービス単位の申込明細番号の設定
						childWorkMap.put("mskm_dtl_no_net", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoNet(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoNetTel(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO));

						mskmDtlNoSetFlg_Net = true;

						continue;
					}

					// 電話の場合
					if (mskmDtlNoSetFlg_Tel == false && "1".equals(mskm_svc_tel))
					{
						// サービス単位の申込明細番号の設定
						childWorkMap.put("mskm_dtl_no_tel", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoTel(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoNetTel(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO));

						mskmDtlNoSetFlg_Tel = true;

						continue;

					}

					// テレビの場合
					if (mskmDtlNoSetFlg_Tv == false && "1".equals(mskm_svc_tv))
					{
						// サービス単位の申込明細番号の設定
						childWorkMap.put("mskm_dtl_no_tv", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoTv(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoTv(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO));

						mskmDtlNoSetFlg_Tv = true;

						continue;

					}

					// モバイルの場合
					if (mskmDtlNoSetFlg_Moba == false && "1".equals(mskm_svc_moba))
					{
						// サービス単位の申込明細番号の設定
						childWorkMap.put("mskm_dtl_no_moba", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoMbl(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoMbl(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO));

						mskmDtlNoSetFlg_Moba = true;

						continue;

					}

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Adsl == false && "1".equals(mskm_svc_adsl))
					{
						// ＡＤＳＬの場合
						childWorkMap.put("mskm_dtl_no_adsl", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_NO));
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoAdsl(param, childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO));

						mskmDtlNoSetFlg_Adsl = true;

						continue;

					}
				}

			}
		}
		dataMap.put(MSKMSHODTLNO_LIST, dataList);
		workDataMap.put(CC_WORK_AREA_NAME_MSKM_LIST, workList);

		// エラー情報の設定
		editErrInfoEKK0011D010(param, template, (Integer)returnCode, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0011D010(IRequestParameterReadWrite param, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		CAANMsg[] templateArray = null;
		int templateStatus = template.getInt(EKK0011D010CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}

		HashMap inMap = null;
		ArrayList inList = null;

		// 作業項目領域
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
//		if (inMap == null)
//		{
//			inMap = new HashMap();
//			param.setData("EKK0011D010", inMap);
//		}

		// 申込登録マップ.ＳＹＳＩＤ → SYSID のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(EKK0011D010CBSMsg.SYSID_ERR));
			}
		}
		// 申込登録マップ.申込種別コード → 申込種別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_SBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_sbt_cd_err"))
			{
				inMap.put("mskm_sbt_cd_err", template.getString(EKK0011D010CBSMsg.MSKM_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.申込書到着年月日 → 申込書到着年月日 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKMSHO_ARIV_YMD_ERR))
		{
			if (!inMap.containsKey("mskmsho_ariv_ymd_err"))
			{
				inMap.put("mskmsho_ariv_ymd_err", template.getString(EKK0011D010CBSMsg.MSKMSHO_ARIV_YMD_ERR));
			}
		}
		// 申込登録マップ.申込受付年月日時分秒 → 申込受付年月日時分秒 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_UK_DTM_ERR))
		{
			if (!inMap.containsKey("mskm_uk_dtm_err"))
			{
				inMap.put("mskm_uk_dtm_err", template.getString(EKK0011D010CBSMsg.MSKM_UK_DTM_ERR));
			}
		}
		// 申込登録マップ.申込受付担当ユーザーＩＤ → 申込受付担当ユーザーID のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_UK_TNT_USER_ID_ERR))
		{
			if (!inMap.containsKey("mskm_uk_tnt_user_id_err"))
			{
				inMap.put("mskm_uk_tnt_user_id_err", template.getString(EKK0011D010CBSMsg.MSKM_UK_TNT_USER_ID_ERR));
			}
		}
		// 申込登録マップ.申込年月日 → 申込年月日 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_YMD_ERR))
		{
			if (!inMap.containsKey("mskm_ymd_err"))
			{
				inMap.put("mskm_ymd_err", template.getString(EKK0011D010CBSMsg.MSKM_YMD_ERR));
			}
		}
		// 申込登録マップ.総合営業センター受付番号 → 総合営業センター受付番号 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TTL_BUSINESS_CENTER_UK_NO_ERR))
		{
			if (!inMap.containsKey("ttl_business_center_uk_no_err"))
			{
				inMap.put("ttl_business_center_uk_no_err", template.getString(EKK0011D010CBSMsg.TTL_BUSINESS_CENTER_UK_NO_ERR));
			}
		}
		// 申込登録マップ.総合営業申込契機コード → 総合営業申込契機コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TTL_BUSINESS_MSKM_OPT_CD_ERR))
		{
			if (!inMap.containsKey("ttl_business_mskm_opt_cd_err"))
			{
				inMap.put("ttl_business_mskm_opt_cd_err", template.getString(EKK0011D010CBSMsg.TTL_BUSINESS_MSKM_OPT_CD_ERR));
			}
		}
		// 申込登録マップ.申込連絡先電話番号 → 申込連絡先電話番号 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_RRKS_TELNO_ERR))
		{
			if (!inMap.containsKey("mskm_rrks_telno_err"))
			{
				inMap.put("mskm_rrks_telno_err", template.getString(EKK0011D010CBSMsg.MSKM_RRKS_TELNO_ERR));
			}
		}
		// 申込登録マップ.申込実施者種別コード → 申込実施者種別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_JSSIS_SBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_jssis_sbt_cd_err"))
			{
				inMap.put("mskm_jssis_sbt_cd_err", template.getString(EKK0011D010CBSMsg.MSKM_JSSIS_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.お客様ご要望事項 → お客様ご要望事項 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.CUST_YOBO_JIKO_ERR))
		{
			if (!inMap.containsKey("cust_yobo_jiko_err"))
			{
				inMap.put("cust_yobo_jiko_err", template.getString(EKK0011D010CBSMsg.CUST_YOBO_JIKO_ERR));
			}
		}

		// 申込登録マップ.電話連絡希望年月日 → 電話連絡希望年月日 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibod_sbt_cd_err"))
			{
				inMap.put("tel_rrk_kibod_sbt_cd_err", template.getString(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.電話連絡希望時間帯コード → 電話連絡希望時間帯コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TEL_RRK_KIBO_TIME_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibo_time_cd_err"))
			{
				inMap.put("tel_rrk_kibo_time_cd_err", template.getString(EKK0011D010CBSMsg.TEL_RRK_KIBO_TIME_CD_ERR));
			}
		}
//		// 申込登録マップ.宅内調査希望年月日 → 宅内調査希望年月日 のエラー情報返却
//		if (!template.isNull(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR))
//		{
//			if (!inMap.containsKey("takcho_kibod_sbt_cd_err"))
//			{
//				inMap.put("takcho_kibod_sbt_cd_err", template.getString(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR));
//			}
//		}
		// 申込登録マップ.宅内調査希望時間帯コード → 宅内調査希望時間帯コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TAKCHO_KIBO_TIME_CD_ERR))
		{
			if (!inMap.containsKey("takcho_kibo_time_cd_err"))
			{
				inMap.put("takcho_kibo_time_cd_err", template.getString(EKK0011D010CBSMsg.TAKCHO_KIBO_TIME_CD_ERR));
			}
		}
		// 申込登録マップ.仮申込フラグ → 仮申込フラグ のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.KARI_MSKM_FLG_ERR))
		{
			if (!inMap.containsKey("kari_mskm_flg_err"))
			{
				inMap.put("kari_mskm_flg_err", template.getString(EKK0011D010CBSMsg.KARI_MSKM_FLG_ERR));
			}
		}
		// 申込登録マップ.リファラー → リファラー のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.REFERER_ERR))
		{
			if (!inMap.containsKey("referer_err"))
			{
				inMap.put("referer_err", template.getString(EKK0011D010CBSMsg.REFERER_ERR));
			}
		}
		// 申込登録マップ.関西電力お客様情報授受同意有無 → 関西電力お客様情報授受同意有無 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM_ERR))
		{
			if (!inMap.containsKey("kepco_custinfo_juju_doi_um_err"))
			{
				inMap.put("kepco_custinfo_juju_doi_um_err", template.getString(EKK0011D010CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM_ERR));
			}
		}
		// 申込登録マップ.コンシューマ営業用申込状態識別コード → コンシューマ営業用申込状態識別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("consmbsn_mskm_stat_skbt_cd_err"))
			{
				inMap.put("consmbsn_mskm_stat_skbt_cd_err", template.getString(EKK0011D010CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR));
			}
		}
		// 申込登録マップ.受付担当者識別コード → 受付担当者識別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.UK_TNTSHA_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("uk_tntsha_skbt_cd_err"))
			{
				inMap.put("uk_tntsha_skbt_cd_err", template.getString(EKK0011D010CBSMsg.UK_TNTSHA_SKBT_CD_ERR));
			}
		}
		
		// ANK-2679-00-00 2016/05/23 ADD START
		// 申込登録マップ.代理店申込受付eoスタッフユーザーID → 代理店申込受付eoスタッフユーザーID のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID_ERR))
		{
			if (!inMap.containsKey("agnt_mkm_uk_eostf_user_id_err"))
			{
				inMap.put("agnt_mkm_uk_eostf_user_id_err", template.getString(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID_ERR));
			}
		}
		
		// 申込登録マップ."代理店申込受付量販店員カナ名(姓)" → "代理店申込受付量販店員カナ名(姓)" のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI_ERR))
		{
			if (!inMap.containsKey("agnt_mkm_uk_rhstf_kana_sei_err"))
			{
				inMap.put("agnt_mkm_uk_rhstf_kana_sei_err", template.getString(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI_ERR));
			}
		}
		// ANK-2679-00-00 2016/05/23 ADD END
		
		// 申込登録マップ.工事依頼情報連絡事項 → 工事依頼情報連絡事項 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.KOJI_REQ_INFO_RRK_JIKO_ERR))
		{
			if (!inMap.containsKey("koji_req_info_rrk_jiko_err"))
			{
				inMap.put("koji_req_info_rrk_jiko_err", template.getString(EKK0011D010CBSMsg.KOJI_REQ_INFO_RRK_JIKO_ERR));
			}
		}
		// 申込登録マップ.申込経路識別コード → 申込経路識別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.MSKM_ROUTE_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_route_skbt_cd_err"))
			{
				inMap.put("mskm_route_skbt_cd_err", template.getString(EKK0011D010CBSMsg.MSKM_ROUTE_SKBT_CD_ERR));
			}
		}
		// 申込登録マップ.電話連絡希望日種別コード → 電話連絡希望日種別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibod_sbt_cd_err"))
			{
				inMap.put("tel_rrk_kibod_sbt_cd_err", template.getString(EKK0011D010CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.宅内調査希望日種別コード → 宅内調査希望日種別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("takcho_kibod_sbt_cd_err"))
			{
				inMap.put("takcho_kibod_sbt_cd_err", template.getString(EKK0011D010CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.利用サービス継続種別コード → 利用サービス継続種別コード のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.USE_SVC_KEIZK_SBT_CD_ERR))
		{
			if (!inMap.containsKey("use_svc_keizk_sbt_cd_err"))
			{
				inMap.put("use_svc_keizk_sbt_cd_err", template.getString(EKK0011D010CBSMsg.USE_SVC_KEIZK_SBT_CD_ERR));
			}
		}
		// 申込登録マップ.照査前連絡事項要否 → 照査前連絡事項要否 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_YH_ERR))
		{
			if (!inMap.containsKey("shosa_bf_rrk_jiko_yh_err"))
			{
				inMap.put("shosa_bf_rrk_jiko_yh_err", template.getString(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_YH_ERR));
			}
		}
		// 申込登録マップ.照査前連絡事項 → 照査前連絡事項 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_ERR))
		{
			if (!inMap.containsKey("shosa_bf_rrk_jiko_err"))
			{
				inMap.put("shosa_bf_rrk_jiko_err", template.getString(EKK0011D010CBSMsg.SHOSA_BF_RRK_JIKO_ERR));
			}
		}
		// 申込登録マップ.代理店申込取次有無 → 代理店申込取次有無 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.AGNT_MSKM_TRTG_UM_ERR))
		{
			if (!inMap.containsKey("agnt_mskm_trtg_um_err"))
			{
				inMap.put("agnt_mskm_trtg_um_err", template.getString(EKK0011D010CBSMsg.AGNT_MSKM_TRTG_UM_ERR));
			}
		}
// ANK-3910-00-00対応 20210131 星野 ADD START
		// 申込登録マップ.定額サービス申込機器 → 定額サービス申込機器 のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.TEGAK_SVC_MSKM_KIKI_ERR))
		{
			if (!inMap.containsKey("tegak_svc_mskm_kiki_err"))
			{
				inMap.put("tegak_svc_mskm_kiki_err", template.getString(EKK0011D010CBSMsg.TEGAK_SVC_MSKM_KIKI_ERR));
			}
		}
// ANK-3910-00-00対応 20210131 星野 ADD END

		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		if (inList == null)
		{
			inList = new ArrayList();
			inMap.put(ADD_MSKM_LIST, inList);
		}
		templateArray = template.getCAANMsgList(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST);

		if (templateArray != null)
		{
			for (int i = 0; i < templateArray.length; i++)
			{
				if (i >= inList.size())
				{
					inList.add(new HashMap());
				}

				HashMap childMap = (HashMap)inList.get(i);
				CAANMsg childTemplate = templateArray[i];

				// 申込登録マップ.申込登録明細.申込書番号 → 申込登録明細.申込書番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKMSHO_NO_ERR))
				{
					if (!childMap.containsKey("mskmsho_no_err"))
					{
						childMap.put("mskmsho_no_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_NO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.復活案件フラグ → 申込登録明細.復活案件フラグ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.HUKKAT_ANKEN_FLG_ERR))
				{
					if (!childMap.containsKey("hukkat_anken_flg_err"))
					{
						childMap.put("hukkat_anken_flg_err", childTemplate.getString(EKK0011D010CBSMsg1List.HUKKAT_ANKEN_FLG_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.ＷＥＢ受付番号 → 申込登録明細.WEB受付番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.WEB_UK_NO_ERR))
				{
					if (!childMap.containsKey("web_uk_no_err"))
					{
						childMap.put("web_uk_no_err", childTemplate.getString(EKK0011D010CBSMsg1List.WEB_UK_NO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.申込形態コード → 申込登録明細.申込形態コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_FORM_CD_ERR))
				{
					if (!childMap.containsKey("mskm_form_cd_err"))
					{
						childMap.put("mskm_form_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_FORM_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.申込明細種別コード → 申込登録明細.申込明細種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_DTL_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mskm_dtl_sbt_cd_err"))
					{
						childMap.put("mskm_dtl_sbt_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_DTL_SBT_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.連絡先携帯電話番号 → 申込登録明細.連絡先携帯電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.RRKS_KTAI_TELNO_ERR))
				{
					if (!childMap.containsKey("rrks_ktai_telno_err"))
					{
						childMap.put("rrks_ktai_telno_err", childTemplate.getString(EKK0011D010CBSMsg1List.RRKS_KTAI_TELNO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.連絡先勤務先名 → 申込登録明細.連絡先勤務先名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.RRKS_OFFC_NM_ERR))
				{
					if (!childMap.containsKey("rrks_offc_nm_err"))
					{
						childMap.put("rrks_offc_nm_err", childTemplate.getString(EKK0011D010CBSMsg1List.RRKS_OFFC_NM_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.昼間連絡先電話番号 → 申込登録明細.昼間連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.DT_RRKS_TELNO_ERR))
				{
					if (!childMap.containsKey("dt_rrks_telno_err"))
					{
						childMap.put("dt_rrks_telno_err", childTemplate.getString(EKK0011D010CBSMsg1List.DT_RRKS_TELNO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.新規申込種別コード → 申込登録明細.新規申込種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.NEW_MSKM_SBT_CD_ERR))
				{
					if (!childMap.containsKey("new_mskm_sbt_cd_err"))
					{
						childMap.put("new_mskm_sbt_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.NEW_MSKM_SBT_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.申込契機コード → 申込登録明細.申込契機コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_OPTNTY_CD_ERR))
				{
					if (!childMap.containsKey("mskm_optnty_cd_err"))
					{
						childMap.put("mskm_optnty_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_OPTNTY_CD_ERR));
					}
				}

				// 申込登録マップ.申込登録明細.宅内調査希望アポ期限年月日 → 申込登録明細.宅内調査希望アポ期限年月日 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD_ERR))
				{
					if (!childMap.containsKey("takcho_kibo_apo_kigen_ymd_err"))
					{
						childMap.put("takcho_kibo_apo_kigen_ymd_err", childTemplate.getString(EKK0011D010CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.工事アポ連絡先指定コード → 申込登録明細.工事アポ連絡先指定コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD_ERR))
				{
					if (!childMap.containsKey("koji_apo_rrks_shitei_cd_err"))
					{
						childMap.put("koji_apo_rrks_shitei_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.工事アポ連絡先電話番号 → 申込登録明細.工事アポ連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_TELNO_ERR))
				{
					if (!childMap.containsKey("koji_apo_rrks_telno_err"))
					{
						childMap.put("koji_apo_rrks_telno_err", childTemplate.getString(EKK0011D010CBSMsg1List.KOJI_APO_RRKS_TELNO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.連絡事項登録年月日時分秒 → 申込登録明細.連絡事項登録年月日時分秒 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.RRK_JIKO_ADD_DTM_ERR))
				{
					if (!childMap.containsKey("rrk_jiko_add_dtm_err"))
					{
						childMap.put("rrk_jiko_add_dtm_err", childTemplate.getString(EKK0011D010CBSMsg1List.RRK_JIKO_ADD_DTM_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.申込連絡先メールアドレス → 申込登録明細.申込連絡先メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKM_RRKS_MLAD_ERR))
				{
					if (!childMap.containsKey("mskm_rrks_mlad_err"))
					{
						childMap.put("mskm_rrks_mlad_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKM_RRKS_MLAD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.工事進捗通知メールアドレス → 申込登録明細.工事進捗通知メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KOJI_PRG_TCHI_MLAD_ERR))
				{
					if (!childMap.containsKey("koji_prg_tchi_mlad_err"))
					{
						childMap.put("koji_prg_tchi_mlad_err", childTemplate.getString(EKK0011D010CBSMsg1List.KOJI_PRG_TCHI_MLAD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.連絡事項 → 申込登録明細.連絡事項 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.RRK_JIKO_ERR))
				{
					if (!childMap.containsKey("rrk_jiko_err"))
					{
						childMap.put("rrk_jiko_err", childTemplate.getString(EKK0011D010CBSMsg1List.RRK_JIKO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.工事進捗通知携帯メールアドレス → 申込登録明細.工事進捗通知携帯メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KJSC_TCH_KTAI_MLAD_ERR))
				{
					if (!childMap.containsKey("kjsc_tch_ktai_mlad_err"))
					{
						childMap.put("kjsc_tch_ktai_mlad_err", childTemplate.getString(EKK0011D010CBSMsg1List.KJSC_TCH_KTAI_MLAD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.メール送信除外フラグ → 申込登録明細.メール送信除外フラグ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.ML_SEND_JGI_FLG_ERR))
				{
					if (!childMap.containsKey("ml_send_jgi_flg_err"))
					{
						childMap.put("ml_send_jgi_flg_err", childTemplate.getString(EKK0011D010CBSMsg1List.ML_SEND_JGI_FLG_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.メール送信除外理由メモ → 申込登録明細.メール送信除外理由メモ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.ML_SEND_JGI_RSN_MEMO_ERR))
				{
					if (!childMap.containsKey("ml_send_jgi_rsn_memo_err"))
					{
						childMap.put("ml_send_jgi_rsn_memo_err", childTemplate.getString(EKK0011D010CBSMsg1List.ML_SEND_JGI_RSN_MEMO_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.番ポ申込連絡先電話番号 → 申込登録明細.番ポ申込連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.BMP_MSKM_RRKS_TLN_ERR))
				{
					if (!childMap.containsKey("bmp_mskm_rrks_tln_err"))
					{
						childMap.put("bmp_mskm_rrks_tln_err", childTemplate.getString(EKK0011D010CBSMsg1List.BMP_MSKM_RRKS_TLN_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.連絡手段補記 → 申込登録明細.連絡手段補記 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.RRK_WAY_HOKI_ERR))
				{
					if (!childMap.containsKey("rrk_way_hoki_err"))
					{
						childMap.put("rrk_way_hoki_err", childTemplate.getString(EKK0011D010CBSMsg1List.RRK_WAY_HOKI_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.新築物件コード → 申込登録明細.新築物件コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.NEWCONST_BUKKEN_CD_ERR))
				{
					if (!childMap.containsKey("newconst_bukken_cd_err"))
					{
						childMap.put("newconst_bukken_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.NEWCONST_BUKKEN_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.同一設備再申込コード	 → 申込登録明細.同一設備再申込コード	 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.SAME_EQUIP_RE_MSKM_CD_ERR))
				{
					if (!childMap.containsKey("same_equip_re_mskm_cd_err"))
					{
						childMap.put("same_equip_re_mskm_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.SAME_EQUIP_RE_MSKM_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.オプションサービス引継有無 → 申込登録明細.オプションサービス引継有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.OP_SVC_HKTGI_UM_ERR))
				{
					if (!childMap.containsKey("op_svc_hktgi_um_err"))
					{
						childMap.put("op_svc_hktgi_um_err", childTemplate.getString(EKK0011D010CBSMsg1List.OP_SVC_HKTGI_UM_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.解約書類送付希望有無 → 申込登録明細.解約書類送付希望有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM_ERR))
				{
					if (!childMap.containsKey("dsl_aticle_sohu_kibo_um_err"))
					{
						childMap.put("dsl_aticle_sohu_kibo_um_err", childTemplate.getString(EKK0011D010CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.本人確認書類種別コード → 申込登録明細.本人確認書類種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD_ERR))
				{
					if (!childMap.containsKey("hnin_cfm_aticle_sbt_cd_err"))
					{
						childMap.put("hnin_cfm_aticle_sbt_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.申込書種別コード → 申込登録明細.申込書種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKMSHO_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mskmsho_sbt_cd_err"))
					{
						childMap.put("mskmsho_sbt_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_SBT_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.契約付加コード → 申込登録明細.契約付加コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KEI_HUKA_CD_ERR))
				{
					if (!childMap.containsKey("kei_huka_cd_err"))
					{
						childMap.put("kei_huka_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.KEI_HUKA_CD_ERR));
					}
				}
				// 申込登録マップ.申込登録明細.地図添付有無 → 申込登録明細.地図添付有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MAP_TEMP_UM_ERR))
				{
					if (!childMap.containsKey("map_temp_um_err"))
					{
						childMap.put("map_temp_um_err", childTemplate.getString(EKK0011D010CBSMsg1List.MAP_TEMP_UM_ERR));
					}
				}
				// 申込登録マップ.KCNSTB申込台数 → 申込登録明細.KCNSTB申込台数 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KCN_STB_MSKM_CNT_ERR))
				{
					if (!childMap.containsKey("kcn_stb_mskm_cnt_err"))
					{
						childMap.put("kcn_stb_mskm_cnt_err", childTemplate.getString(EKK0011D010CBSMsg1List.KCN_STB_MSKM_CNT_ERR));
					}
				}
				// 申込登録マップ.KCNSTB種類コード → 申込登録明細.KCNSTB種類コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.KCN_STB_KIND_CD_ERR))
				{
					if (!childMap.containsKey("kcn_stb_kind_cd_err"))
					{
						childMap.put("kcn_stb_kind_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.KCN_STB_KIND_CD_ERR));
					}
				}
				// 申込登録マップ.マンション設備システム連携用記事欄 → 申込登録明細.マンション設備システム連携用記事欄 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN_ERR))
				{
					if (!childMap.containsKey("manssbsys_rnki_yo_kijiran_err"))
					{
						childMap.put("manssbsys_rnki_yo_kijiran_err", childTemplate.getString(EKK0011D010CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN_ERR));
					}
				}
				// 申込登録マップ.マンションID → 申込登録明細.マンションID のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MANSION_ID_ERR))
				{
					if (!childMap.containsKey("mansion_id_err"))
					{
						childMap.put("mansion_id_err", childTemplate.getString(EKK0011D010CBSMsg1List.MANSION_ID_ERR));
					}
				}
				// 申込登録マップ.CAT-ID → 申込登録明細.CAT-ID のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.CATID_ERR))
				{
					if (!childMap.containsKey("catid_err"))
					{
						childMap.put("catid_err", childTemplate.getString(EKK0011D010CBSMsg1List.CATID_ERR));
					}
				}
				// 申込登録マップ.申込受付種別コード → 申込登録明細.申込受付種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MKM_UK_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mkm_uk_sbt_cd_err"))
					{
						childMap.put("mkm_uk_sbt_cd_err", childTemplate.getString(EKK0011D010CBSMsg1List.MKM_UK_SBT_CD_ERR));
					}
				}
				// 申込登録マップ.申込書取扱情報担当者名 → 申込登録明細.申込書取扱情報担当者名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM_ERR))
				{
					if (!childMap.containsKey("mskmsho_trat_if_tntsha_nm_err"))
					{
						childMap.put("mskmsho_trat_if_tntsha_nm_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM_ERR));
					}
				}
				// 申込登録マップ.申込書取扱情報電話番号 → 申込登録明細.申込書取扱情報電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TELNO_ERR))
				{
					if (!childMap.containsKey("mskmsho_trat_if_telno_err"))
					{
						childMap.put("mskmsho_trat_if_telno_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_TRAT_IF_TELNO_ERR));
					}
				}
				
				// 申込登録マップ.申込書明細番号 → 申込登録明細.申込書明細番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO_ERR))
				{
					if (!childMap.containsKey("mskmsho_dtl_no_err"))
					{
						childMap.put("mskmsho_dtl_no_err", childTemplate.getString(EKK0011D010CBSMsg1List.MSKMSHO_DTL_NO_ERR));
					}
				}

				// 申込登録マップ.本人確認書類名 → 申込登録明細.本人確認書類名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_NM_ERR))
				{
					if (!childMap.containsKey("hnin_cfm_aticle_nm_err"))
					{
						childMap.put("hnin_cfm_aticle_nm_err", childTemplate.getString(EKK0011D010CBSMsg1List.HNIN_CFM_ATICLE_NM_ERR));
					}
				}

			}
		}
		if (!template.isNull(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST_ERR))
		{
			if (!inMap.containsKey("EKK0011D010CBSMsg1List_err"))
			{
				inMap.put("EKK0011D010CBSMsg1List_err", template.getString(EKK0011D010CBSMsg.EKK0011D010CBSMSG1LIST_ERR));
			}
		}
		return param;
	}

	/**
	 * 申込内容承認申請の上りマッピング処理を行います。
	 * 
	 * <br>
	 * @param param
	 * @param fixedText
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0011C100(IRequestParameterReadWrite param, String fixedText) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0011C100CBSMsg.class.getName());

		// テンプレートID
		template.set(EKK0011C100CBSMsg.TEMPLATEID, "EKK0011C100");

		// 機能コード（デフォルト：１）
		template.set(EKK0011C100CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);

		// 機能コード
		template.set(EKK0011C100CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		// 作業領域のマップを取得
		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME_MSKM, workDataMap);
		}

		ArrayList<HashMap<String, Object>> workMskmList = ((ArrayList<HashMap<String, Object>>)workDataMap.get(CC_WORK_AREA_NAME_MSKM_LIST));

		if (workMskmList == null)
		{
			workMskmList = new ArrayList();
			workDataMap.put(CC_WORK_AREA_NAME_MSKM_LIST, workMskmList);
		}

		// 申込登録マップ.申込番号 → 申込番号
		if (workDataMap == null || workDataMap.get("mskm_no") == null || "".equals(workDataMap.get("mskm_no")))
		{
			if (inMap == null || inMap.get("kk001103_mskm_no") == null || "".equals(inMap.get("kk001103_mskm_no")))
			{
				template.setNull(EKK0011C100CBSMsg.MSKM_NO);
			}
			else
			{
				template.set(EKK0011C100CBSMsg.MSKM_NO, (String)workDataMap.get("kk001103_mskm_no"));
			}
		}
		else
		{
			template.set(EKK0011C100CBSMsg.MSKM_NO, (String)workDataMap.get("mskm_no"));
		}

		// 申込登録マップ.コンシューマ営業用申込状態識別コード → コンシューマ営業用申込状態識別コード
		if (inMap == null || inMap.get("consmbsn_mskm_stat_skbt_cd") == null || "".equals(inMap.get("consmbsn_mskm_stat_skbt_cd")))
		{
			template.setNull(EKK0011C100CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD);
		}
		else
		{
			template.set(EKK0011C100CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD, (String)inMap.get("consmbsn_mskm_stat_skbt_cd"));
		}

		// 更新年月日時分秒(更新前) → 更新年月日時分秒(更新前)
		if (JKKBpCommon.getLastDtmByMskm(param, "") == null 
				|| JKKBpCommon.getLastDtmByMskm(param, "") == null 
				|| "".equals(JKKBpCommon.getLastDtmByMskm(param, "")))
		{
			if (inMap == null || inMap.get("kk001103_upd_dtm_bf") == null || "".equals(inMap.get("kk001103_upd_dtm_bf")))
			{
				template.setNull(EKK0011C100CBSMsg.UPD_DTM_BF);
			}
			else
			{
				template.set(EKK0011C100CBSMsg.UPD_DTM_BF, (String)workDataMap.get("kk001103_upd_dtm_bf"));
			}
		}
		else
		{
			template.set(EKK0011C100CBSMsg.UPD_DTM_BF, JKKBpCommon.getLastDtmByMskm(param, ""));
		}

		return template;
	}

	/**
	 * 申込内容承認申請の下りマッピング処理
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editOutEKK0011C100Msg(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText)
			throws Exception
	{
		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		// リターンコード取得
		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		// 作業領域のマップを取得
		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME_MSKM, workDataMap);
		}

		/* 業務データ設定 */
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 世代登録年月日時分秒
		if (template.isNull(EKK0011C100CBSMsg.GENE_ADD_DTM))
		{
			dataMap.put("kk001103_gene_add_dtm", "");
		}
		else
		{
			dataMap.put("kk001103_gene_add_dtm", template.getString(EKK0011C100CBSMsg.GENE_ADD_DTM));
		}

		// 申込内容承認申請年月日
		if (template.isNull(EKK0011C100CBSMsg.MSKM_NYO_SHONIN_SHIN_YMD))
		{
			dataMap.put("kk001103_mskm_nyo_shonin_shin_ymd", "");
		}
		else
		{
			dataMap.put("kk001103_mskm_nyo_shonin_shin_ymd", template.getString(EKK0011C100CBSMsg.MSKM_NYO_SHONIN_SHIN_YMD));
		}

		// 登録年月日時分秒
		if (template.isNull(EKK0011C100CBSMsg.ADD_DTM))
		{
			dataMap.put("kk001103_add_dtm", "");
		}
		else
		{
			dataMap.put("kk001103_add_dtm", template.getString(EKK0011C100CBSMsg.ADD_DTM));
		}

		// 登録オペレータアカウント
		if (template.isNull(EKK0011C100CBSMsg.ADD_OPEACNT))
		{
			dataMap.put("kk001103_add_opeacnt", "");
		}
		else
		{
			dataMap.put("kk001103_add_opeacnt", template.getString(EKK0011C100CBSMsg.ADD_OPEACNT));
		}

		// 更新年月日時分秒
		if (template.isNull(EKK0011C100CBSMsg.UPD_DTM))
		{
			dataMap.put("kk001103_upd_dtm", "");
		}
		else
		{
			dataMap.put("kk001103_upd_dtm", template.getString(EKK0011C100CBSMsg.UPD_DTM));
		}

		// 更新オペレータアカウント
		if (template.isNull(EKK0011C100CBSMsg.UPD_OPEACNT))
		{
			dataMap.put("kk001103_upd_opeacnt", "");
		}
		else
		{
			dataMap.put("kk001103_upd_opeacnt", template.getString(EKK0011C100CBSMsg.UPD_OPEACNT));
		}

		// 無効フラグ
		if (template.isNull(EKK0011C100CBSMsg.MK_FLG))
		{
			dataMap.put("kk001103_mk_flg", "");
		}
		else
		{
			dataMap.put("kk001103_mk_flg", template.getString(EKK0011C100CBSMsg.MK_FLG));
		}

		// エラー情報の設定
		editErrInfoEKK0011C100Msg(param, template, (Integer)returnCode, fixedText);

		// エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}

		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 * 申込内容承認申請のエラー情報マッピング処理
	 * <br>
	 * @param iparam
	 * @param template
	 * @param returnCode
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @exception RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0011C100Msg(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0011C100CBSMsg.STATUS), returnCode);

		HashMap inMap = (HashMap)param.getData(fixedText);

		// 申込番号 のエラー情報返却
		if (!template.isNull(EKK0011C100CBSMsg.MSKM_NO_ERR))
		{
			if (!inMap.containsKey("kk001103_mskm_no_err"))
			{
				inMap.put("kk001103_mskm_no_err", template.getString(EKK0011C100CBSMsg.MSKM_NO_ERR));
			}
		}

		// コンシューマ営業用申込状態識別コード のエラー情報返却
		if (!template.isNull(EKK0011C100CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("kk001103_consmbsn_mskm_stat_skbt_cd_err"))
			{
				inMap.put("kk001103_consmbsn_mskm_stat_skbt_cd_err",
						template.getString(EKK0011C100CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR));
			}
		}

		// 更新年月日時分秒(更新前) のエラー情報返却
		if (!template.isNull(EKK0011C100CBSMsg.UPD_DTM_BF_ERR))
		{
			if (!inMap.containsKey("kk001103_upd_dtm_bf_err"))
			{
				inMap.put("kk001103_upd_dtm_bf_err",
						template.getString(EKK0011C100CBSMsg.UPD_DTM_BF_ERR));
			}
		}

		return param;
	}

	/**
	 * 申込内容承認登録の上りマッピング処理を行います。
	 * 
	 * <br>
	 * @param param
	 * @param fixedText
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0011D020(IRequestParameterReadWrite param, String fixedText) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0011D020CBSMsg.class.getName());
		ArrayList inList = null;
		CAANMsg[] templateArray = null;

		// テンプレートID
		template.set(EKK0011D020CBSMsg.TEMPLATEID, "EKK0011D020");

		// 機能コード（デフォルト：１）
		template.set(EKK0011D020CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		//		HashMap inMap = (HashMap)((HashMap)param.getData(fixedText)).get("EKK0011D020CBSMsg");
		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);

		// 機能コード
		template.set(EKK0011D020CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));

		// 作業領域のマップを取得
		HashMap workDataMap = null;
		Map workMap = param.getMappingWorkArea();
		if (workMap != null)
		{
			workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_KEISHA);
		}

		// 申込内容承認登録マップ.ＳＹＳＩＤ → ＳＹＳＩＤ
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			if (workDataMap == null || workDataMap.get("sysid") == null || "".equals(workDataMap.get("sysid")))
			{
				template.setNull(EKK0011D020CBSMsg.SYSID);
			}
			else
			{
				template.set(EKK0011D020CBSMsg.SYSID, (String)workDataMap.get("sysid"));
			}
		}
		else
		{
			template.set(EKK0011D020CBSMsg.SYSID, (String)inMap.get("sysid"));
		}

		// 申込内容承認登録マップ.申込種別コード → 申込種別コード
		if (inMap == null || inMap.get("mskm_sbt_cd") == null || "".equals(inMap.get("mskm_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_SBT_CD, (String)inMap.get("mskm_sbt_cd"));
		}

		// 申込内容承認登録マップ.申込書到着年月日 → 申込書到着年月日
		if (inMap == null || inMap.get("mskmsho_ariv_ymd") == null || "".equals(inMap.get("mskmsho_ariv_ymd")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKMSHO_ARIV_YMD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKMSHO_ARIV_YMD, (String)inMap.get("mskmsho_ariv_ymd"));
		}

		// 申込内容承認登録マップ.申込受付年月日時分秒 → 申込受付年月日時分秒
		if (inMap == null || inMap.get("mskm_uk_dtm") == null || "".equals(inMap.get("mskm_uk_dtm")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_UK_DTM);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_UK_DTM, (String)inMap.get("mskm_uk_dtm"));
		}

		// 申込内容承認登録マップ.申込受付担当ユーザーＩＤ → 申込受付担当ユーザーID
		if (inMap == null || inMap.get("mskm_uk_tnt_user_id") == null || "".equals(inMap.get("mskm_uk_tnt_user_id")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_UK_TNT_USER_ID);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_UK_TNT_USER_ID, (String)inMap.get("mskm_uk_tnt_user_id"));
		}

		// 申込内容承認登録マップ.申込年月日 → 申込年月日
		if (inMap == null || inMap.get("mskm_ymd") == null || "".equals(inMap.get("mskm_ymd")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_YMD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_YMD, (String)inMap.get("mskm_ymd"));
		}

		// 申込内容承認登録マップ.総合営業センター受付番号 → 総合営業センター受付番号
		if (inMap == null || inMap.get("ttl_business_center_uk_no") == null || "".equals(inMap.get("ttl_business_center_uk_no")))
		{
			template.setNull(EKK0011D020CBSMsg.TTL_BUSINESS_CENTER_UK_NO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TTL_BUSINESS_CENTER_UK_NO, (String)inMap.get("ttl_business_center_uk_no"));
		}

		// 申込内容承認登録マップ.総合営業申込契機コード → 総合営業申込契機コード
		if (inMap == null || inMap.get("ttl_business_mskm_opt_cd") == null || "".equals(inMap.get("ttl_business_mskm_opt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TTL_BUSINESS_MSKM_OPT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TTL_BUSINESS_MSKM_OPT_CD, (String)inMap.get("ttl_business_mskm_opt_cd"));
		}

		// 申込内容承認登録マップ.申込連絡先電話番号 → 申込連絡先電話番号
		if (inMap == null || inMap.get("mskm_rrks_telno") == null || "".equals(inMap.get("mskm_rrks_telno")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_RRKS_TELNO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_RRKS_TELNO, (String)inMap.get("mskm_rrks_telno"));
		}

		// 申込内容承認登録マップ.申込実施者種別コード → 申込実施者種別コード
		if (inMap == null || inMap.get("mskm_jssis_sbt_cd") == null || "".equals(inMap.get("mskm_jssis_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_JSSIS_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_JSSIS_SBT_CD, (String)inMap.get("mskm_jssis_sbt_cd"));
		}

		// 申込内容承認登録マップ.お客様ご要望事項 → お客様ご要望事項
		if (inMap == null || inMap.get("cust_yobo_jiko") == null || "".equals(inMap.get("cust_yobo_jiko")))
		{
			template.setNull(EKK0011D020CBSMsg.CUST_YOBO_JIKO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.CUST_YOBO_JIKO, (String)inMap.get("cust_yobo_jiko"));
		}

		// 申込内容承認登録マップ.電話連絡希望年月日 → 電話連絡希望年月日
		if (inMap == null || inMap.get("kk0011_tel_rrk_kibod_sbt_cd") == null || "".equals(inMap.get("kk0011_tel_rrk_kibod_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD, (String)inMap.get("kk0011_tel_rrk_kibod_sbt_cd"));
		}

		// 申込内容承認登録マップ.電話連絡希望時間帯コード → 電話連絡希望時間帯コード
		if (inMap == null || inMap.get("tel_rrk_kibo_time_cd") == null || "".equals(inMap.get("tel_rrk_kibo_time_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TEL_RRK_KIBO_TIME_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TEL_RRK_KIBO_TIME_CD, (String)inMap.get("tel_rrk_kibo_time_cd"));
		}

		// 申込内容承認登録マップ.宅内調査希望時間帯コード → 宅内調査希望時間帯コード
		if (inMap == null || inMap.get("takcho_kibo_time_cd") == null || "".equals(inMap.get("takcho_kibo_time_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TAKCHO_KIBO_TIME_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TAKCHO_KIBO_TIME_CD, (String)inMap.get("takcho_kibo_time_cd"));
		}

		// 申込内容承認登録マップ.仮申込フラグ → 仮申込フラグ
		if (inMap == null || inMap.get("kari_mskm_flg") == null || "".equals(inMap.get("kari_mskm_flg")))
		{
			template.setNull(EKK0011D020CBSMsg.KARI_MSKM_FLG);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.KARI_MSKM_FLG, (String)inMap.get("kari_mskm_flg"));
		}

		// 申込内容承認登録マップ.リファラー → リファラー
		if (inMap == null || inMap.get("referer") == null || "".equals(inMap.get("referer")))
		{
			template.setNull(EKK0011D020CBSMsg.REFERER);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.REFERER, (String)inMap.get("referer"));
		}

		// 申込内容承認登録マップ.関西電力お客様情報授受同意有無 → 関西電力お客様情報授受同意有無
		if (inMap == null || inMap.get("kepco_custinfo_juju_doi_um") == null || "".equals(inMap.get("kepco_custinfo_juju_doi_um")))
		{
			template.set(EKK0011D020CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM, JKKStrConst.CD_DIV_UM_NASHI);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM, (String)inMap.get("kepco_custinfo_juju_doi_um"));
		}

		// 申込内容承認登録マップ.コンシューマ営業用申込状態識別コード → コンシューマ営業用申込状態識別コード
		if (inMap == null || inMap.get("consmbsn_mskm_stat_skbt_cd") == null || "".equals(inMap.get("consmbsn_mskm_stat_skbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD, (String)inMap.get("consmbsn_mskm_stat_skbt_cd"));
		}

		// 申込内容承認登録マップ.受付担当者識別コード → 受付担当者識別コード
		if (inMap == null || inMap.get("uk_tntsha_skbt_cd") == null || "".equals(inMap.get("uk_tntsha_skbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.UK_TNTSHA_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.UK_TNTSHA_SKBT_CD, (String)inMap.get("uk_tntsha_skbt_cd"));
		}
		
		// ANK-2679-00-00 2016/05/23 ADD START
		
		// 申込登録マップ.代理店申込受付eoスタッフユーザーＩＤ → 代理店申込受付eoスタッフユーザーＩＤ
		if (inMap == null || inMap.get("agnt_mkm_uk_eostf_user_id") == null || "".equals(inMap.get("agnt_mkm_uk_eostf_user_id")))
		{
			template.setNull(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID, (String)inMap.get("agnt_mkm_uk_eostf_user_id"));
		}
		
		// 申込登録マップ.代理店申込受付量販店員カナ名(姓) → 代理店申込受付量販店員カナ名(姓)
		if (inMap == null || inMap.get("agnt_mkm_uk_rhstf_kana_sei") == null || "".equals(inMap.get("agnt_mkm_uk_rhstf_kana_sei")))
		{
			template.setNull(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI);
		}
		else
		{
			template.set(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI, (String)inMap.get("agnt_mkm_uk_rhstf_kana_sei"));
		}
		// ANK-2679-00-00 2016/05/23 ADD END

		// 申込内容承認登録マップ.申込経路識別コード → 申込経路識別コード
		if (inMap == null || inMap.get("mskm_route_skbt_cd") == null || "".equals(inMap.get("mskm_route_skbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.MSKM_ROUTE_SKBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.MSKM_ROUTE_SKBT_CD, (String)inMap.get("mskm_route_skbt_cd"));
		}

		// 申込内容承認登録マップ.工事依頼情報連絡事項 → 工事依頼情報連絡事項
		if (inMap == null || inMap.get("koji_req_info_rrk_jiko") == null || "".equals(inMap.get("koji_req_info_rrk_jiko")))
		{
			template.setNull(EKK0011D020CBSMsg.KOJI_REQ_INFO_RRK_JIKO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.KOJI_REQ_INFO_RRK_JIKO, (String)inMap.get("koji_req_info_rrk_jiko"));
		}

		// 申込内容承認登録マップ.電話連絡希望日種別コード → 電話連絡希望日種別コード
		if (inMap == null || inMap.get("kk0011_tel_rrk_kibod_sbt_cd") == null || "".equals(inMap.get("kk0011_tel_rrk_kibod_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD, (String)inMap.get("kk0011_tel_rrk_kibod_sbt_cd"));
		}

		// 申込内容承認登録マップ.宅内調査希望日種別コード → 宅内調査希望日種別コード
		if (inMap == null || inMap.get("kk0011_takcho_kibod_sbt_cd") == null || "".equals(inMap.get("kk0011_takcho_kibod_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD, (String)inMap.get("kk0011_takcho_kibod_sbt_cd"));
		}

		// 申込内容承認登録マップ.利用サービス継続種別コード → 利用サービス継続種別コード
		if (inMap == null || inMap.get("kk0011_use_svc_keizk_sbt_cd") == null || "".equals(inMap.get("kk0011_use_svc_keizk_sbt_cd")))
		{
			template.setNull(EKK0011D020CBSMsg.USE_SVC_KEIZK_SBT_CD);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.USE_SVC_KEIZK_SBT_CD, (String)inMap.get("kk0011_use_svc_keizk_sbt_cd"));
		}

		// 申込内容承認登録マップ.照査前連絡事項要否 → 照査前連絡事項要否
		if (inMap == null || inMap.get("kk0011_shosa_bf_rrk_jiko_yh") == null || "".equals(inMap.get("kk0011_shosa_bf_rrk_jiko_yh")))
		{
			template.setNull(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_YH);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_YH, (String)inMap.get("kk0011_shosa_bf_rrk_jiko_yh"));
		}

		// 申込内容承認登録マップ.照査前連絡事項 → 照査前連絡事項
		if (inMap == null || inMap.get("kk0011_shosa_bf_rrk_jiko") == null || "".equals(inMap.get("kk0011_shosa_bf_rrk_jiko")))
		{
			template.setNull(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO, (String)inMap.get("kk0011_shosa_bf_rrk_jiko"));
		}

		// 申込内容承認登録マップ.代理店申込取次有無 → 代理店申込取次有無
		if (inMap == null || inMap.get("agnt_mskm_trtg_um") == null || "".equals(inMap.get("agnt_mskm_trtg_um")))
		{
			template.setNull(EKK0011D020CBSMsg.AGNT_MSKM_TRTG_UM);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.AGNT_MSKM_TRTG_UM, (String)inMap.get("agnt_mskm_trtg_um"));
		}
		
// ANK-3910-00-00対応 20210131 星野 ADD START
		// 申込内容承認登録マップ.定額サービス申込機器 → 定額サービス申込機器
		if (inMap == null || inMap.get("tegak_svc_mskm_kiki") == null || "".equals(inMap.get("tegak_svc_mskm_kiki")))
		{
			template.setNull(EKK0011D020CBSMsg.TEGAK_SVC_MSKM_KIKI);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.TEGAK_SVC_MSKM_KIKI, (String)inMap.get("tegak_svc_mskm_kiki"));
		}
// ANK-3910-00-00対応 20210131 星野 ADD ENDT
// ▽▽▽ ANK-4427-00-00 ADD START
		
		// 申込登録マップ.移転元サービス契約番号 → 移転元サービス契約番号
		if (inMap == null || inMap.get("itenm_svc_kei_no") == null || "".equals(inMap.get("itenm_svc_kei_no")))
		{
			template.setNull(EKK0011D020CBSMsg.ITENM_SVC_KEI_NO);
		}
		else
		{
			template.set(EKK0011D020CBSMsg.ITENM_SVC_KEI_NO, (String)inMap.get("itenm_svc_kei_no"));
		}
		
// △△△ ANK-4427-00-00 ADD END

		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		templateArray = template.getCAANMsgList(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST);

		if (templateArray == null)
		{
			templateArray = new CAANMsg[inList.size()];
		}

		if (inList != null)
		{
			// テレビ用設定項目の条件を設定
			String mskm_svc_net = getMapValue(param, fixedText, "mskm_svc_net");
			String mskm_svc_tel = getMapValue(param, fixedText, "mskm_svc_tel");
			String mskm_svc_tv = getMapValue(param, fixedText, "mskm_svc_tv");
			boolean tvFlg = false;
			int tvMskmDtlNoCnt = 0;

			if ("1".equals(mskm_svc_net))
			{
				tvMskmDtlNoCnt++;
			}
			if ("1".equals(mskm_svc_tel))
			{
				tvMskmDtlNoCnt++;
			}
			if ("1".equals(mskm_svc_tv))
			{
				tvFlg = true;
			}

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);

				CAANMsg childTemplate = templateArray[i];
				if (childTemplate == null)
				{
					childTemplate = new CAANMsg(EKK0011D020CBSMsg1List.class.getName());
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.申込書番号 → 申込内容承認登録明細.申込書番号
				if (childMap == null || childMap.get("mskmsho_no") == null || "".equals(childMap.get("mskmsho_no")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKMSHO_NO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKMSHO_NO, (String)childMap.get("mskmsho_no"));
					// 契約新規申込ワークエリアへ登録
					JKKBpCommon.setWkMskmshoNo(param, (String)childMap.get("mskmsho_no"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.復活案件フラグ → 申込内容承認登録明細.復活案件フラグ
				if (childMap == null || childMap.get("hukkat_anken_flg") == null || "".equals(childMap.get("hukkat_anken_flg")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.HUKKAT_ANKEN_FLG);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.HUKKAT_ANKEN_FLG, (String)childMap.get("hukkat_anken_flg"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.ＷＥＢ受付番号 → 申込内容承認登録明細.WEB受付番号
				if (childMap == null || childMap.get("web_uk_no") == null || "".equals(childMap.get("web_uk_no")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.WEB_UK_NO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.WEB_UK_NO, (String)childMap.get("web_uk_no"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.申込形態コード → 申込内容承認登録明細.申込形態コード
				if (childMap == null || childMap.get("mskm_form_cd") == null || "".equals(childMap.get("mskm_form_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKM_FORM_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKM_FORM_CD, (String)childMap.get("mskm_form_cd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.申込明細種別コード → 申込内容承認登録明細.申込明細種別コード
				if (childMap == null || childMap.get("mskm_dtl_sbt_cd") == null || "".equals(childMap.get("mskm_dtl_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKM_DTL_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKM_DTL_SBT_CD, (String)childMap.get("mskm_dtl_sbt_cd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.連絡先携帯電話番号 → 申込内容承認登録明細.連絡先携帯電話番号
				if (childMap == null || childMap.get("rrks_ktai_telno") == null || "".equals(childMap.get("rrks_ktai_telno")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RRKS_KTAI_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RRKS_KTAI_TELNO, (String)childMap.get("rrks_ktai_telno"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.連絡先勤務先名 → 申込内容承認登録明細.連絡先勤務先名
				if (childMap == null || childMap.get("rrks_offc_nm") == null || "".equals(childMap.get("rrks_offc_nm")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RRKS_OFFC_NM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RRKS_OFFC_NM, (String)childMap.get("rrks_offc_nm"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.昼間連絡先電話番号 → 申込内容承認登録明細.昼間連絡先電話番号
				if (childMap == null || childMap.get("dt_rrks_telno") == null || "".equals(childMap.get("dt_rrks_telno")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.DT_RRKS_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.DT_RRKS_TELNO, (String)childMap.get("dt_rrks_telno"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.新規申込種別コード → 申込内容承認登録明細.新規申込種別コード
				if (childMap == null || childMap.get("new_mskm_sbt_cd") == null || "".equals(childMap.get("new_mskm_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.NEW_MSKM_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.NEW_MSKM_SBT_CD, (String)childMap.get("new_mskm_sbt_cd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.申込契機コード → 申込内容承認登録明細.申込契機コード
				if (childMap == null || childMap.get("mskm_optnty_cd") == null || "".equals(childMap.get("mskm_optnty_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKM_OPTNTY_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKM_OPTNTY_CD, (String)childMap.get("mskm_optnty_cd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.宅内調査希望アポ期限年月日 → 申込内容承認登録明細.宅内調査希望アポ期限年月日
				if (childMap == null || childMap.get("takcho_kibo_apo_kigen_ymd") == null || "".equals(childMap.get("takcho_kibo_apo_kigen_ymd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD, (String)childMap.get("takcho_kibo_apo_kigen_ymd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.工事アポ連絡先指定コード → 申込内容承認登録明細.工事アポ連絡先指定コード
				if (childMap == null || childMap.get("koji_apo_rrks_shitei_cd") == null || "".equals(childMap.get("koji_apo_rrks_shitei_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD, (String)childMap.get("koji_apo_rrks_shitei_cd"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.工事アポ連絡先電話番号 → 申込内容承認登録明細.工事アポ連絡先電話番号
				if (childMap == null || childMap.get("koji_apo_rrks_telno") == null || "".equals(childMap.get("koji_apo_rrks_telno")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_TELNO, (String)childMap.get("koji_apo_rrks_telno"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.連絡事項登録年月日時分秒 → 申込内容承認登録明細.連絡事項登録年月日時分秒
				if (childMap == null || childMap.get("rrk_jiko_add_dtm") == null || "".equals(childMap.get("rrk_jiko_add_dtm")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RRK_JIKO_ADD_DTM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RRK_JIKO_ADD_DTM, (String)childMap.get("rrk_jiko_add_dtm"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.申込連絡先メールアドレス → 申込内容承認登録明細.申込連絡先メールアドレス
				if (childMap == null || childMap.get("mskm_rrks_mlad") == null || "".equals(childMap.get("mskm_rrks_mlad")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKM_RRKS_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKM_RRKS_MLAD, (String)childMap.get("mskm_rrks_mlad"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.工事進捗通知メールアドレス → 申込内容承認登録明細.工事進捗通知メールアドレス
				if (childMap == null || childMap.get("koji_prg_tchi_mlad") == null || "".equals(childMap.get("koji_prg_tchi_mlad")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KOJI_PRG_TCHI_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KOJI_PRG_TCHI_MLAD, (String)childMap.get("koji_prg_tchi_mlad"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.連絡事項 → 申込内容承認登録明細.連絡事項
				if (childMap == null || childMap.get("rrk_jiko") == null || "".equals(childMap.get("rrk_jiko")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RRK_JIKO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RRK_JIKO, (String)childMap.get("rrk_jiko"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.工事進捗通知携帯メールアドレス → 申込内容承認登録明細.工事進捗通知携帯メールアドレス
				if (childMap == null || childMap.get("kjsc_tch_ktai_mlad") == null || "".equals(childMap.get("kjsc_tch_ktai_mlad")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KJSC_TCH_KTAI_MLAD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KJSC_TCH_KTAI_MLAD, (String)childMap.get("kjsc_tch_ktai_mlad"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.メール送信除外フラグ → 申込内容承認登録明細.メール送信除外フラグ
				if (childMap == null || childMap.get("ml_send_jgi_flg") == null || "".equals(childMap.get("ml_send_jgi_flg")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.ML_SEND_JGI_FLG);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.ML_SEND_JGI_FLG, (String)childMap.get("ml_send_jgi_flg"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.メール送信除外理由メモ → 申込内容承認登録明細.メール送信除外理由メモ
				if (childMap == null || childMap.get("ml_send_jgi_rsn_memo") == null || "".equals(childMap.get("ml_send_jgi_rsn_memo")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.ML_SEND_JGI_RSN_MEMO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.ML_SEND_JGI_RSN_MEMO, (String)childMap.get("ml_send_jgi_rsn_memo"));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.番ポ申込連絡先電話番号 → 申込内容承認登録明細.番ポ申込連絡先電話番号
				if (childMap == null || childMap.get("bmp_mskm_rrks_tln") == null || "".equals(childMap.get("bmp_mskm_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.BMP_MSKM_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.BMP_MSKM_RRKS_TLN, (String)childMap.get("bmp_mskm_rrks_tln"));
				}

				// 申込内容承認登録マップ.申込登録明細.連絡手段補記 → 申込登録明細.連絡手段補記
				if (childMap == null || childMap.get("rrk_way_hoki") == null || "".equals(childMap.get("rrk_way_hoki")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RRK_WAY_HOKI);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RRK_WAY_HOKI, (String)childMap.get("rrk_way_hoki"));
				}

				// 申込内容承認登録マップ.申込登録明細.新築物件コード → 申込登録明細.新築物件コード
				if (childMap == null || childMap.get("newconst_bukken_cd") == null || "".equals(childMap.get("newconst_bukken_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.NEWCONST_BUKKEN_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.NEWCONST_BUKKEN_CD, (String)childMap.get("newconst_bukken_cd"));
				}

				// 申込内容承認登録マップ.申込登録明細.同一設備再申込コード → 申込登録明細.同一設備再申込コード
				if (childMap == null || childMap.get("same_equip_re_mskm_cd") == null || "".equals(childMap.get("same_equip_re_mskm_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.SAME_EQUIP_RE_MSKM_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.SAME_EQUIP_RE_MSKM_CD, (String)childMap.get("same_equip_re_mskm_cd"));
				}

				// 申込内容承認登録マップ.申込登録明細.オプションサービス引継有無 → 申込登録明細.オプションサービス引継有無
				if (childMap == null || childMap.get("op_svc_hktgi_um") == null || "".equals(childMap.get("op_svc_hktgi_um")))
				{
					//**********↓障害対応(IT1-2012-0000024)**********/
//					childTemplate.setNull(EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM);
					childTemplate.set(EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM, JKKStrConst.CD_DIV_UM_NASHI);
					//**********↑障害対応(IT1-2012-0000024)**********/
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM, (String)childMap.get("op_svc_hktgi_um"));
				}

				// 申込内容承認登録マップ.解約書類送付希望有無 → 申込登録明細.解約書類送付希望有無
				if (childMap == null || childMap.get("dsl_aticle_sohu_kibo_um") == null || "".equals(childMap.get("dsl_aticle_sohu_kibo_um")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM, (String)childMap.get("dsl_aticle_sohu_kibo_um"));
				}

				// 申込内容承認登録マップ.本人確認書類種別コード → 申込登録明細.本人確認書類種別コード
				if (childMap == null || childMap.get("hnin_cfm_aticle_sbt_cd") == null || "".equals(childMap.get("hnin_cfm_aticle_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD, (String)childMap.get("hnin_cfm_aticle_sbt_cd"));
				}

				// 申込内容承認登録マップ.申込書種別コード → 申込登録明細.申込書種別コード
				if (childMap == null || childMap.get("mskmsho_sbt_cd") == null || "".equals(childMap.get("mskmsho_sbt_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKMSHO_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKMSHO_SBT_CD, (String)childMap.get("mskmsho_sbt_cd"));
				}

				// 申込内容承認登録マップ.契約付加コード → 申込登録明細.契約付加コード
				if (childMap == null || childMap.get("kei_huka_cd") == null || "".equals(childMap.get("kei_huka_cd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KEI_HUKA_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KEI_HUKA_CD, (String)childMap.get("kei_huka_cd"));
				}

				// 申込内容承認登録マップ.地図添付有無 → 申込登録明細.地図添付有無
				if (childMap == null || childMap.get("map_temp_um") == null || "".equals(childMap.get("map_temp_um")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MAP_TEMP_UM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MAP_TEMP_UM, (String)childMap.get("map_temp_um"));
				}

				// 申込内容承認登録マップ.KCNSTB申込台数 → 申込登録明細.KCNSTB申込台数
				if ((tvFlg && tvMskmDtlNoCnt != i) || (childMap == null || JKKBpCommon.isNull(childMap.get("kcn_stb_mskm_cnt"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KCN_STB_MSKM_CNT);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KCN_STB_MSKM_CNT, (String)childMap.get("kcn_stb_mskm_cnt"));
				}

				// 申込内容承認登録マップ.KCNSTB種類コード → 申込登録明細.KCNSTB種類コード
				if ((tvFlg && tvMskmDtlNoCnt != i) || (childMap == null || JKKBpCommon.isNull(childMap.get("kcn_stb_kind_cd"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KCN_STB_KIND_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KCN_STB_KIND_CD, (String)childMap.get("kcn_stb_kind_cd"));
				}

				// 申込内容承認登録マップ.マンション設備システム連携用記事欄 → 申込登録明細.マンション設備システム連携用記事欄
				if ((childMap == null || childMap.get("manssbsys_rnki_yo_kijiran") == null || "".equals(childMap.get("manssbsys_rnki_yo_kijiran"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN, (String)childMap.get("manssbsys_rnki_yo_kijiran"));
				}

				// 申込内容承認登録マップ.マンションID → 申込登録明細.マンションID
				if ((childMap == null || childMap.get("mansion_id") == null || "".equals(childMap.get("mansion_id"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MANSION_ID);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MANSION_ID, (String)childMap.get("mansion_id"));
				}

				// 申込内容承認登録マップ.CAT-ID → 申込登録明細.CAT-ID
				if ((childMap == null || childMap.get("catid") == null || "".equals(childMap.get("catid"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.CATID);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.CATID, (String)childMap.get("catid"));
				}

				// 申込内容承認登録マップ.申込受付種別コード → 申込登録明細.申込受付種別コード
				if ((childMap == null || childMap.get("mkm_uk_sbt_cd") == null || "".equals(childMap.get("mkm_uk_sbt_cd"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MKM_UK_SBT_CD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MKM_UK_SBT_CD, (String)childMap.get("mkm_uk_sbt_cd"));
				}

				// 申込内容承認登録マップ.申込書取扱情報担当者名 → 申込登録明細.申込書取扱情報担当者名
				if ((childMap.get("mskmsho_trat_if_tntsha_nm") == null || "".equals(childMap.get("mskmsho_trat_if_tntsha_nm"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM, (String)childMap.get("mskmsho_trat_if_tntsha_nm"));
				}

				// 申込内容承認登録マップ.申込書取扱情報電話番号 → 申込登録明細.申込書取扱情報電話番号
				if ((childMap == null || childMap.get("mskmsho_trat_if_telno") == null || "".equals(childMap.get("mskmsho_trat_if_telno"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TELNO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TELNO, (String)childMap.get("mskmsho_trat_if_telno"));
				}
				
				// 採番マップ.申込書明細番号 → 申込登録明細.申込書明細番号
				if ((childMap == null || childMap.get("mskmsho_dtl_no") == null || "".equals(childMap.get("mskmsho_dtl_no"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO, (String)childMap.get("mskmsho_dtl_no"));
				}

				// 申込内容承認登録マップ.本人確認書類名 → 申込登録明細.本人確認書類名
				if ((childMap == null || childMap.get("hnin_cfm_aticle_nm") == null || "".equals(childMap.get("hnin_cfm_aticle_nm"))))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_NM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_NM, (String)childMap.get("hnin_cfm_aticle_nm"));
				}

				// ANK-3136-00-00 ADD START
				// 申込内容承認登録マップ.申込登録明細.他システム連携_宅内調査要否 → 申込登録明細.他システム連携_宅内調査要否
				if (childMap == null || childMap.get("tsyrn_takcho_yh") == null || "".equals(childMap.get("tsyrn_takcho_yh")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_YH);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_YH, (String)childMap.get("tsyrn_takcho_yh"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_工事連絡先氏名 → 申込登録明細.他システム連携_工事連絡先氏名
				if (childMap == null || childMap.get("tsyrn_kj_rrks_nm") == null || "".equals(childMap.get("tsyrn_kj_rrks_nm")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_KJ_RRKS_NM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_KJ_RRKS_NM, (String)childMap.get("tsyrn_kj_rrks_nm"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_工事連絡先電話番号 → 申込登録明細.他システム連携_工事連絡先電話番号
				if (childMap == null || childMap.get("tsyrn_kj_rrks_tln") == null || "".equals(childMap.get("tsyrn_kj_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_KJ_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_KJ_RRKS_TLN, (String)childMap.get("tsyrn_kj_rrks_tln"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_宅内調査時連絡先氏名 → 申込登録明細.他システム連携_宅内調査時連絡先氏名
				if (childMap == null || childMap.get("tsyrn_takcho_ji_rrks_nm") == null || "".equals(childMap.get("tsyrn_takcho_ji_rrks_nm")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_NM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_NM, (String)childMap.get("tsyrn_takcho_ji_rrks_nm"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_宅内調査時連絡先電話番号 → 申込登録明細.他システム連携_宅内調査時連絡先電話番号
				if (childMap == null || childMap.get("tsyrn_takcho_ji_rrks_tln") == null || "".equals(childMap.get("tsyrn_takcho_ji_rrks_tln")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_TLN);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_TAKCHO_JI_RRKS_TLN, (String)childMap.get("tsyrn_takcho_ji_rrks_tln"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_連絡希望日時 → 申込登録明細.他システム連携_連絡希望日時
				if (childMap == null || childMap.get("tsyrn_rrk_kibo_date") == null || "".equals(childMap.get("tsyrn_rrk_kibo_date")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_RRK_KIBO_DATE);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_RRK_KIBO_DATE, (String)childMap.get("tsyrn_rrk_kibo_date"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_地図有無 → 申込登録明細.他システム連携_地図有無
				if (childMap == null || childMap.get("tsyrn_map_um") == null || "".equals(childMap.get("tsyrn_map_um")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_MAP_UM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_MAP_UM, (String)childMap.get("tsyrn_map_um"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_既存契約情報 → 申込登録明細.他システム連携_既存契約情報
				if (childMap == null || childMap.get("tsyrn_kzn_kei_inf") == null || "".equals(childMap.get("tsyrn_kzn_kei_inf")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_KZN_KEI_INF);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_KZN_KEI_INF, (String)childMap.get("tsyrn_kzn_kei_inf"));
				}
				// 申込内容承認登録マップ.申込登録明細.他システム連携_不備解消年月日 → 申込登録明細.他システム連携_不備解消年月日
				if (childMap == null || childMap.get("tsyrn_hbi_kaishou_ymd") == null || "".equals(childMap.get("tsyrn_hbi_kaishou_ymd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TSYRN_HBI_KAISHOU_YMD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TSYRN_HBI_KAISHOU_YMD, (String)childMap.get("tsyrn_hbi_kaishou_ymd"));
				}
				// 申込内容承認登録マップ.申込登録明細.設備流用有無 → 申込登録明細.設備流用有無
				if (childMap == null || childMap.get("equip_ryuyo_um") == null || "".equals(childMap.get("equip_ryuyo_um")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.EQUIP_RYUYO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.EQUIP_RYUYO_UM, (String)childMap.get("equip_ryuyo_um"));
				}
				// 申込内容承認登録マップ.申込登録明細.流用元工事案件番号 → 申込登録明細.流用元工事案件番号
				if (childMap == null || childMap.get("ryuyo_moto_kjak_no") == null || "".equals(childMap.get("ryuyo_moto_kjak_no")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.RYUYO_MOTO_KJAK_NO);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.RYUYO_MOTO_KJAK_NO, (String)childMap.get("ryuyo_moto_kjak_no"));
				}
				// 申込内容承認登録マップ.申込登録明細.設備流用工事完了希望年月日 → 申込登録明細.設備流用工事完了希望年月日
				if (childMap == null || childMap.get("sbry_kj_fin_kiboymd") == null || "".equals(childMap.get("sbry_kj_fin_kiboymd")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.SBRY_KJ_FIN_KIBOYMD);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.SBRY_KJ_FIN_KIBOYMD, (String)childMap.get("sbry_kj_fin_kiboymd"));
				}
				// ANK-3136-00-00 ADD END
				// ANK-4096-00-00 ADD START
				// 申込内容承認登録マップ.申込登録明細.現在利用先契約回線区分 → 申込登録明細.現在利用先契約回線区分
				if (childMap == null || childMap.get("now_use_sk_kei_kisn_div") == null || "".equals(childMap.get("now_use_sk_kei_kisn_div")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.NOW_USE_SK_KEI_KISN_DIV);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.NOW_USE_SK_KEI_KISN_DIV, (String)childMap.get("now_use_sk_kei_kisn_div"));
				}
				// 申込内容承認登録マップ.申込登録明細.機器設置場所変更有無 → 申込登録明細.機器設置場所変更有無
				if (childMap == null || childMap.get("kiki_setplc_chgum") == null || "".equals(childMap.get("kiki_setplc_chgum")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.KIKI_SETPLC_CHGUM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.KIKI_SETPLC_CHGUM, (String)childMap.get("kiki_setplc_chgum"));
				}
				// 申込内容承認登録マップ.申込登録明細.同日実施希望有無 → 申込登録明細.同日実施希望有無
				if (childMap == null || childMap.get("dojitu_jssi_kbum") == null || "".equals(childMap.get("dojitu_jssi_kbum")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.DOJITU_JSSI_KBUM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.DOJITU_JSSI_KBUM, (String)childMap.get("dojitu_jssi_kbum"));
				}
				// 申込内容承認登録マップ.申込登録明細.早期開通早期連絡希望有無 → 申込登録明細.早期開通早期連絡希望有無
				if (childMap == null || childMap.get("early_open_early_rrk_kbum") == null || "".equals(childMap.get("early_open_early_rrk_kbum")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.EARLY_OPEN_EARLY_RRK_KBUM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.EARLY_OPEN_EARLY_RRK_KBUM, (String)childMap.get("early_open_early_rrk_kbum"));
				}
				// ANK-4096-00-00 ADD END
				// ANK-4088-00-00 ADD START
				// 申込内容承認登録マップ.申込登録明細.宅内調査アポ架電希望有無 → 申込登録明細.宅内調査アポ架電希望有無
				if (childMap == null || childMap.get("takcho_apo_kaden_kibo_um") == null || "".equals(childMap.get("takcho_apo_kaden_kibo_um")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.TAKCHO_APO_KADEN_KIBO_UM);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.TAKCHO_APO_KADEN_KIBO_UM, (String)childMap.get("takcho_apo_kaden_kibo_um"));
				}
				// ANK-4088-00-00 ADD END
				// ANK-4577-00-00 ADD START
				// 申込登録マップ.申込登録明細.引継オプションサービス契約リスト → 申込登録明細.引継オプションサービス契約リスト
				if (childMap == null || childMap.get("hktgi_opsvkei_list") == null || "".equals(childMap.get("hktgi_opsvkei_list")))
				{
					childTemplate.setNull(EKK0011D020CBSMsg1List.HKTGI_OPSVKEI_LIST);
				}
				else
				{
					childTemplate.set(EKK0011D020CBSMsg1List.HKTGI_OPSVKEI_LIST, (String)childMap.get("hktgi_opsvkei_list"));
				}
				// ANK-4577-00-00 ADD END
				templateArray[i] = childTemplate;
			}
		}
		template.set(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST, templateArray);

		return template;
	}

	/**
	 * 申込内容承認登録の下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0011D020(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];
		CAANMsg[] templateArray = null;

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;
		ArrayList workList = null;

		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);
		if (workDataMap == null)
		{
			workDataMap = new HashMap();
			workMap.put(CC_WORK_AREA_NAME_MSKM, workDataMap);
		}

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

//		dataMap = (HashMap)dataMap.get("EKK0011D020CBSMsg");
//		if (dataMap == null)
//		{
//			dataMap = new HashMap();
//		}

		// 申込内容承認登録マップ.申込番号 ← 申込番号
		if (template.isNull(EKK0011D020CBSMsg.MSKM_NO))
		{
			dataMap.put("kk0011_mskm_no", "");
		}
		else
		{
			dataMap.put("kk0011_mskm_no", template.getString(EKK0011D020CBSMsg.MSKM_NO));
			workDataMap.put("mskm_no", template.getString(EKK0011D020CBSMsg.MSKM_NO));
			// 契約新規申込ワークエリアへ登録
			JKKBpCommon.setWkMskmNo(param, template.getString(EKK0011D020CBSMsg.MSKM_NO));
		}

		// 申込内容承認登録マップ.世代登録年月日時分秒（申込）　 ← 世代登録年月日時分秒(申込)
		if (template.isNull(EKK0011D020CBSMsg.KK0011_GENE_ADD_DTM))
		{
			dataMap.put("kk0011_gene_add_dtm", "");
		}
		else
		{
			dataMap.put("kk0011_gene_add_dtm", template.getString(EKK0011D020CBSMsg.KK0011_GENE_ADD_DTM));
		}

		// 申込内容承認登録マップ.申込ステータス ← 申込ステータス
		if (template.isNull(EKK0011D020CBSMsg.MSKM_STAT))
		{
			dataMap.put("kk0011_mskm_stat", "");
		}
		else
		{
			dataMap.put("kk0011_mskm_stat", template.getString(EKK0011D020CBSMsg.MSKM_STAT));
		}

		// 申込内容承認登録マップ.登録年月日時分秒 ← 登録年月日時分秒
		if (template.isNull(EKK0011D020CBSMsg.ADD_DTM))
		{
			dataMap.put("kk0011_add_dtm", "");
		}
		else
		{
			dataMap.put("kk0011_add_dtm", template.getString(EKK0011D020CBSMsg.ADD_DTM));
		}

		// 申込内容承認登録マップ.登録オペレータアカウント ← 登録オペレータアカウント
		if (template.isNull(EKK0011D020CBSMsg.ADD_OPEACNT))
		{
			dataMap.put("kk0011_add_opeacnt", "");
		}
		else
		{
			dataMap.put("kk0011_add_opeacnt", template.getString(EKK0011D020CBSMsg.ADD_OPEACNT));
		}

		// 申込内容承認登録マップ.更新年月日時分秒 ← 更新年月日時分秒
		if (template.isNull(EKK0011D020CBSMsg.UPD_DTM))
		{
			dataMap.put("kk0011_upd_dtm", "");
		}
		else
		{
			JKKBpCommon.setLastDtmByMskm(param, (String)template.getString(EKK0011D020CBSMsg.UPD_DTM));
			dataMap.put("kk0011_upd_dtm", template.getString(EKK0011D020CBSMsg.UPD_DTM));
		}

		// 申込内容承認登録マップ.更新オペレータアカウント ← 更新オペレータアカウント
		if (template.isNull(EKK0011D020CBSMsg.UPD_OPEACNT))
		{
			dataMap.put("kk0011_upd_opeacnt", "");
		}
		else
		{
			dataMap.put("kk0011_upd_opeacnt", template.getString(EKK0011D020CBSMsg.UPD_OPEACNT));
		}

		// 申込内容承認登録マップ.無効フラグ ← 無効フラグ
		if (template.isNull(EKK0011D020CBSMsg.MK_FLG))
		{
			dataMap.put("kk0011_mk_flg", "");
		}
		else
		{
			dataMap.put("kk0011_mk_flg", template.getString(EKK0011D020CBSMsg.MK_FLG));
		}

		templateArray = template.getCAANMsgList(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST);
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);

		if (dataList == null)
		{
			dataList = new ArrayList();
		}

		workList = (ArrayList)dataMap.get(ADD_MSKM_LIST);
		if (workList == null)
		{
			workList = new ArrayList();
		}

		boolean mskmDtlNoSetFlg_Net = false;
		boolean mskmDtlNoSetFlg_Tel = false;
		boolean mskmDtlNoSetFlg_Tv = false;
		boolean mskmDtlNoSetFlg_Moba = false;
		boolean mskmDtlNoSetFlg_Adsl = false;

		String mskm_svc_net = getMapValue(param, fixedText, "mskm_svc_net");
		String mskm_svc_tel = getMapValue(param, fixedText, "mskm_svc_tel");
		String mskm_svc_tv = getMapValue(param, fixedText, "mskm_svc_tv");
		String mskm_svc_moba = getMapValue(param, fixedText, "mskm_svc_moba");
		String mskm_svc_adsl = getMapValue(param, fixedText, "mskm_svc_adsl");

		if (templateArray != null)
		{
			for (int i = 0; i < templateArray.length; i++)
			{
				CAANMsg childTemplate = templateArray[i];
				if (i >= dataList.size())
				{
					dataList.add(new HashMap());
					workList.add(new HashMap());
				}
				HashMap childMap = (HashMap)dataList.get(i);
				HashMap childWorkMap = (HashMap)workList.get(i);

				// 申込内容承認登録マップ.申込内容承認登録明細.世代登録年月日時分秒（申込明細） ← 申込内容承認登録明細.世代登録年月日時分秒(申込明細)
				if (childTemplate.isNull(EKK0011D020CBSMsg1List.KK0021_GENE_ADD_DTM))
				{
					childMap.put("kk0021_gene_add_dtm", "");
				}
				else
				{
					childMap.put("kk0021_gene_add_dtm", childTemplate.getString(EKK0011D020CBSMsg1List.KK0021_GENE_ADD_DTM));
				}

				// 申込内容承認登録マップ.申込内容承認登録明細.申込明細ステータス ← 申込内容承認登録明細.申込明細ステータス
				if (childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_DTL_STAT))
				{
					childMap.put("kk0021_mskm_dtl_stat", "");
				}
				else
				{
					childMap.put("kk0021_mskm_dtl_stat", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_STAT));
				}
				
				// 申込登録マップ.申込登録明細.申込明細番号 ← 申込登録明細.申込明細番号
				if (childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_DTL_NO))
				{
					childMap.put("kk0021_mskm_dtl_no", "");
				}
				else
				{
					childMap.put("kk0021_mskm_dtl_no", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
					childWorkMap.put("mskm_dtl_no", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Net == false && "1".equals(mskm_svc_net))
					{
						// ネットの場合
						childWorkMap.put("mskm_dtl_no_net", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoNet(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// ANK-3362-00-00 ADD START
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoNetTel(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO));
						// ANK-3362-00-00 ADD END
						mskmDtlNoSetFlg_Net = true;

						continue;
					}

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Tel == false && "1".equals(mskm_svc_tel))
					{
						// 電話の場合
						childWorkMap.put("mskm_dtl_no_tel", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoTel(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// ANK-3362-00-00 ADD START
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoNetTel(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO));
						// ANK-3362-00-00 ADD END
						mskmDtlNoSetFlg_Tel = true;

						continue;

					}

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Tv == false && "1".equals(mskm_svc_tv))
					{
						// テレビの場合
						childWorkMap.put("mskm_dtl_no_tv", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoTv(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// ANK-3362-00-00 ADD START
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoTv(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO));
						// ANK-3362-00-00 ADD END
						mskmDtlNoSetFlg_Tv = true;

						continue;

					}

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Moba == false && "1".equals(mskm_svc_moba))
					{
						// モバイルの場合
						childWorkMap.put("mskm_dtl_no_moba", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoMbl(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// ANK-3362-00-00 ADD START
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoMbl(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO));
						// ANK-3362-00-00 ADD END
						mskmDtlNoSetFlg_Moba = true;

						continue;

					}

					// サービス単位の申込明細番号の設定
					if (mskmDtlNoSetFlg_Adsl == false && "1".equals(mskm_svc_adsl))
					{
						// ＡＤＳＬの場合
						childWorkMap.put("mskm_dtl_no_adsl", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						JKKBpCommon.setMskmDtlNo(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// 契約新規申込ワークエリアへ登録
						JKKBpCommon.setWkMskmDtlNoAdsl(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_NO));
						// ANK-3362-00-00 ADD START
						// 申込書明細番号の設定
						JKKBpCommon.setWkMskmshoDtlNoAdsl(param, childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO));
						// ANK-3362-00-00 ADD END
						mskmDtlNoSetFlg_Adsl = true;

						continue;

					}
				}

			}
		}
		dataMap.put(MSKMSHODTLNO_LIST, dataList);
		workDataMap.put(CC_WORK_AREA_NAME_MSKM_LIST, workList);

		// エラー情報の設定
		editErrInfoEKK0011D020(param, template, (Integer)returnCode, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0011D020(IRequestParameterReadWrite param, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		CAANMsg[] templateArray = null;
		int templateStatus = template.getInt(EKK0011D020CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}

		HashMap inMap = null;
		ArrayList inList = null;

		// 作業項目領域
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		/* ユーザデータ情報 */
		inMap = (HashMap)param.getData(fixedText);
//		if (inMap == null)
//		{
//			inMap = new HashMap();
//			param.setData("EKK0011D020", inMap);
//		}

		// 申込内容承認登録マップ.ＳＹＳＩＤ → SYSID のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.SYSID_ERR))
		{
			if (!inMap.containsKey("sysid_err"))
			{
				inMap.put("sysid_err", template.getString(EKK0011D020CBSMsg.SYSID_ERR));
			}
		}
		// 申込内容承認登録マップ.申込種別コード → 申込種別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_SBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_sbt_cd_err"))
			{
				inMap.put("mskm_sbt_cd_err", template.getString(EKK0011D020CBSMsg.MSKM_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.申込書到着年月日 → 申込書到着年月日 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKMSHO_ARIV_YMD_ERR))
		{
			if (!inMap.containsKey("mskmsho_ariv_ymd_err"))
			{
				inMap.put("mskmsho_ariv_ymd_err", template.getString(EKK0011D020CBSMsg.MSKMSHO_ARIV_YMD_ERR));
			}
		}
		// 申込内容承認登録マップ.申込受付年月日時分秒 → 申込受付年月日時分秒 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_UK_DTM_ERR))
		{
			if (!inMap.containsKey("mskm_uk_dtm_err"))
			{
				inMap.put("mskm_uk_dtm_err", template.getString(EKK0011D020CBSMsg.MSKM_UK_DTM_ERR));
			}
		}
		// 申込内容承認登録マップ.申込受付担当ユーザーＩＤ → 申込受付担当ユーザーID のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_UK_TNT_USER_ID_ERR))
		{
			if (!inMap.containsKey("mskm_uk_tnt_user_id_err"))
			{
				inMap.put("mskm_uk_tnt_user_id_err", template.getString(EKK0011D020CBSMsg.MSKM_UK_TNT_USER_ID_ERR));
			}
		}
		// 申込内容承認登録マップ.申込年月日 → 申込年月日 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_YMD_ERR))
		{
			if (!inMap.containsKey("mskm_ymd_err"))
			{
				inMap.put("mskm_ymd_err", template.getString(EKK0011D020CBSMsg.MSKM_YMD_ERR));
			}
		}
		// 申込内容承認登録マップ.総合営業センター受付番号 → 総合営業センター受付番号 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TTL_BUSINESS_CENTER_UK_NO_ERR))
		{
			if (!inMap.containsKey("ttl_business_center_uk_no_err"))
			{
				inMap.put("ttl_business_center_uk_no_err", template.getString(EKK0011D020CBSMsg.TTL_BUSINESS_CENTER_UK_NO_ERR));
			}
		}
		// 申込内容承認登録マップ.総合営業申込契機コード → 総合営業申込契機コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TTL_BUSINESS_MSKM_OPT_CD_ERR))
		{
			if (!inMap.containsKey("ttl_business_mskm_opt_cd_err"))
			{
				inMap.put("ttl_business_mskm_opt_cd_err", template.getString(EKK0011D020CBSMsg.TTL_BUSINESS_MSKM_OPT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.申込連絡先電話番号 → 申込連絡先電話番号 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_RRKS_TELNO_ERR))
		{
			if (!inMap.containsKey("mskm_rrks_telno_err"))
			{
				inMap.put("mskm_rrks_telno_err", template.getString(EKK0011D020CBSMsg.MSKM_RRKS_TELNO_ERR));
			}
		}
		// 申込内容承認登録マップ.申込実施者種別コード → 申込実施者種別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_JSSIS_SBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_jssis_sbt_cd_err"))
			{
				inMap.put("mskm_jssis_sbt_cd_err", template.getString(EKK0011D020CBSMsg.MSKM_JSSIS_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.お客様ご要望事項 → お客様ご要望事項 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.CUST_YOBO_JIKO_ERR))
		{
			if (!inMap.containsKey("cust_yobo_jiko_err"))
			{
				inMap.put("cust_yobo_jiko_err", template.getString(EKK0011D020CBSMsg.CUST_YOBO_JIKO_ERR));
			}
		}
		// 申込内容承認登録マップ.電話連絡希望年月日 → 電話連絡希望年月日 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibod_sbt_cd_err"))
			{
				inMap.put("tel_rrk_kibod_sbt_cd_err", template.getString(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.電話連絡希望時間帯コード → 電話連絡希望時間帯コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TEL_RRK_KIBO_TIME_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibo_time_cd_err"))
			{
				inMap.put("tel_rrk_kibo_time_cd_err", template.getString(EKK0011D020CBSMsg.TEL_RRK_KIBO_TIME_CD_ERR));
			}
		}
//		// 申込内容承認登録マップ.宅内調査希望年月日 → 宅内調査希望年月日 のエラー情報返却
//		if (!template.isNull(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR))
//		{
//			if (!inMap.containsKey("takcho_kibod_sbt_cd_err"))
//			{
//				inMap.put("takcho_kibod_sbt_cd_err", template.getString(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR));
//			}
//		}
		// 申込内容承認登録マップ.宅内調査希望時間帯コード → 宅内調査希望時間帯コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TAKCHO_KIBO_TIME_CD_ERR))
		{
			if (!inMap.containsKey("takcho_kibo_time_cd_err"))
			{
				inMap.put("takcho_kibo_time_cd_err", template.getString(EKK0011D020CBSMsg.TAKCHO_KIBO_TIME_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.仮申込フラグ → 仮申込フラグ のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.KARI_MSKM_FLG_ERR))
		{
			if (!inMap.containsKey("kari_mskm_flg_err"))
			{
				inMap.put("kari_mskm_flg_err", template.getString(EKK0011D020CBSMsg.KARI_MSKM_FLG_ERR));
			}
		}
		// 申込内容承認登録マップ.リファラー → リファラー のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.REFERER_ERR))
		{
			if (!inMap.containsKey("referer_err"))
			{
				inMap.put("referer_err", template.getString(EKK0011D020CBSMsg.REFERER_ERR));
			}
		}
		// 申込内容承認登録マップ.関西電力お客様情報授受同意有無 → 関西電力お客様情報授受同意有無 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM_ERR))
		{
			if (!inMap.containsKey("kepco_custinfo_juju_doi_um_err"))
			{
				inMap.put("kepco_custinfo_juju_doi_um_err", template.getString(EKK0011D020CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM_ERR));
			}
		}
		// 申込内容承認登録マップ.コンシューマ営業用申込状態識別コード → コンシューマ営業用申込状態識別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("consmbsn_mskm_stat_skbt_cd_err"))
			{
				inMap.put("consmbsn_mskm_stat_skbt_cd_err", template.getString(EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD_ERR));
			}
		}

		// 申込内容承認登録マップ.受付担当者識別コード → 受付担当者識別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.UK_TNTSHA_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("uk_tntsha_skbt_cd_err"))
			{
				inMap.put("uk_tntsha_skbt_cd_err", template.getString(EKK0011D020CBSMsg.UK_TNTSHA_SKBT_CD_ERR));
			}
		}
		
		// ANK-2679-00-00 2016/05/23 ADD START
		// 申込登録マップ.代理店申込受付eoスタッフユーザーID → 代理店申込受付eoスタッフユーザーID のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID_ERR))
		{
			if (!inMap.containsKey("agnt_mkm_uk_eostf_user_id_err"))
			{
				inMap.put("agnt_mkm_uk_eostf_user_id_err", template.getString(EKK0011D010CBSMsg.AGNT_MKM_UK_EOSTF_USER_ID_ERR));
			}
		}
		
		// 申込登録マップ.取次ぎ者苗字（カナ） → 取次ぎ者苗字（カナ） のエラー情報返却
		if (!template.isNull(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI_ERR))
		{
			if (!inMap.containsKey("agnt_mkm_uk_rhstf_kana_sei_err"))
			{
				inMap.put("agnt_mkm_uk_rhstf_kana_sei_err", template.getString(EKK0011D010CBSMsg.AGNT_MKM_UK_RHSTF_KANA_SEI_ERR));
			}
		}
		// ANK-2679-00-00 2016/05/23 ADD END

		// 申込内容承認登録マップ.工事依頼情報連絡事項 → 工事依頼情報連絡事項 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.KOJI_REQ_INFO_RRK_JIKO_ERR))
		{
			if (!inMap.containsKey("koji_req_info_rrk_jiko_err"))
			{
				inMap.put("koji_req_info_rrk_jiko_err", template.getString(EKK0011D020CBSMsg.KOJI_REQ_INFO_RRK_JIKO_ERR));
			}
		}

		// 申込内容承認登録マップ.申込経路識別コード → 申込経路識別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.MSKM_ROUTE_SKBT_CD_ERR))
		{
			if (!inMap.containsKey("mskm_route_skbt_cd_err"))
			{
				inMap.put("mskm_route_skbt_cd_err", template.getString(EKK0011D020CBSMsg.MSKM_ROUTE_SKBT_CD_ERR));
			}
		}

		// 申込内容承認登録マップ.電話連絡希望日種別コード → 電話連絡希望日種別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("tel_rrk_kibod_sbt_cd_err"))
			{
				inMap.put("tel_rrk_kibod_sbt_cd_err", template.getString(EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.宅内調査希望日種別コード → 宅内調査希望日種別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR))
		{
			if (!inMap.containsKey("takcho_kibod_sbt_cd_err"))
			{
				inMap.put("takcho_kibod_sbt_cd_err", template.getString(EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.利用サービス継続種別コード → 利用サービス継続種別コード のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.USE_SVC_KEIZK_SBT_CD_ERR))
		{
			if (!inMap.containsKey("use_svc_keizk_sbt_cd_err"))
			{
				inMap.put("use_svc_keizk_sbt_cd_err", template.getString(EKK0011D020CBSMsg.USE_SVC_KEIZK_SBT_CD_ERR));
			}
		}
		// 申込内容承認登録マップ.照査前連絡事項要否 → 照査前連絡事項要否 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_YH_ERR))
		{
			if (!inMap.containsKey("shosa_bf_rrk_jiko_yh_err"))
			{
				inMap.put("shosa_bf_rrk_jiko_yh_err", template.getString(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_YH_ERR));
			}
		}
		// 申込内容承認登録マップ.照査前連絡事項 → 照査前連絡事項 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_ERR))
		{
			if (!inMap.containsKey("shosa_bf_rrk_jiko_err"))
			{
				inMap.put("shosa_bf_rrk_jiko_err", template.getString(EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_ERR));
			}
		}
		// 申込内容承認登録マップ.代理店申込取次有無 → 代理店申込取次有無 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.AGNT_MSKM_TRTG_UM_ERR))
		{
			if (!inMap.containsKey("agnt_mskm_trtg_um_err"))
			{
				inMap.put("agnt_mskm_trtg_um_err", template.getString(EKK0011D020CBSMsg.AGNT_MSKM_TRTG_UM_ERR));
			}
		}
// ANK-3910-00-00対応 20210131 星野 ADD START
		// 申込内容承認登録マップ.定額サービス申込機器 → 定額サービス申込機器 のエラー情報返却
		if (!template.isNull(EKK0011D020CBSMsg.TEGAK_SVC_MSKM_KIKI_ERR))
		{
			if (!inMap.containsKey("tegak_svc_mskm_kiki_err"))
			{
				inMap.put("tegak_svc_mskm_kiki_err", template.getString(EKK0011D020CBSMsg.TEGAK_SVC_MSKM_KIKI_ERR));
			}
		}
// ANK-3910-00-00対応 20210131 星野 ADD END
// ANK-4427-00-00 ADD START
		
		// 申込登録マップ.移転元サービス契約番号 → 移転元サービス契約番号
		if (!template.isNull(EKK0011D020CBSMsg.ITENM_SVC_KEI_NO_ERR))
		{
			if (!inMap.containsKey("itenm_svc_kei_no_err"))
			{
				inMap.put("itenm_svc_kei_no_err", template.getString(EKK0011D020CBSMsg.ITENM_SVC_KEI_NO_ERR));
			}
		}
		
// ANK-4427-00-00 ADD END
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		if (inList == null)
		{
			inList = new ArrayList();
			inMap.put(ADD_MSKM_LIST, inList);
		}

		templateArray = template.getCAANMsgList(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST);

		if (templateArray != null)
		{
			for (int i = 0; i < templateArray.length; i++)
			{
				if (i >= inList.size())
				{
					inList.add(new HashMap());
				}

				HashMap childMap = (HashMap)inList.get(i);
				CAANMsg childTemplate = templateArray[i];

				// 申込内容承認登録マップ.申込内容承認登録明細.申込書番号 → 申込内容承認登録明細.申込書番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKMSHO_NO_ERR))
				{
					if (!childMap.containsKey("mskmsho_no_err"))
					{
						childMap.put("mskmsho_no_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_NO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.復活案件フラグ → 申込内容承認登録明細.復活案件フラグ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.HUKKAT_ANKEN_FLG_ERR))
				{
					if (!childMap.containsKey("hukkat_anken_flg_err"))
					{
						childMap.put("hukkat_anken_flg_err", childTemplate.getString(EKK0011D020CBSMsg1List.HUKKAT_ANKEN_FLG_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.ＷＥＢ受付番号 → 申込内容承認登録明細.WEB受付番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.WEB_UK_NO_ERR))
				{
					if (!childMap.containsKey("web_uk_no_err"))
					{
						childMap.put("web_uk_no_err", childTemplate.getString(EKK0011D020CBSMsg1List.WEB_UK_NO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.申込形態コード → 申込内容承認登録明細.申込形態コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_FORM_CD_ERR))
				{
					if (!childMap.containsKey("mskm_form_cd_err"))
					{
						childMap.put("mskm_form_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_FORM_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.申込明細種別コード → 申込内容承認登録明細.申込明細種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_DTL_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mskm_dtl_sbt_cd_err"))
					{
						childMap.put("mskm_dtl_sbt_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_DTL_SBT_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.連絡先携帯電話番号 → 申込内容承認登録明細.連絡先携帯電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.RRKS_KTAI_TELNO_ERR))
				{
					if (!childMap.containsKey("rrks_ktai_telno_err"))
					{
						childMap.put("rrks_ktai_telno_err", childTemplate.getString(EKK0011D020CBSMsg1List.RRKS_KTAI_TELNO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.連絡先勤務先名 → 申込内容承認登録明細.連絡先勤務先名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.RRKS_OFFC_NM_ERR))
				{
					if (!childMap.containsKey("rrks_offc_nm_err"))
					{
						childMap.put("rrks_offc_nm_err", childTemplate.getString(EKK0011D020CBSMsg1List.RRKS_OFFC_NM_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.昼間連絡先電話番号 → 申込内容承認登録明細.昼間連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.DT_RRKS_TELNO_ERR))
				{
					if (!childMap.containsKey("dt_rrks_telno_err"))
					{
						childMap.put("dt_rrks_telno_err", childTemplate.getString(EKK0011D020CBSMsg1List.DT_RRKS_TELNO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.新規申込種別コード → 申込内容承認登録明細.新規申込種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.NEW_MSKM_SBT_CD_ERR))
				{
					if (!childMap.containsKey("new_mskm_sbt_cd_err"))
					{
						childMap.put("new_mskm_sbt_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.NEW_MSKM_SBT_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.申込契機コード → 申込内容承認登録明細.申込契機コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_OPTNTY_CD_ERR))
				{
					if (!childMap.containsKey("mskm_optnty_cd_err"))
					{
						childMap.put("mskm_optnty_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_OPTNTY_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.宅内調査希望アポ期限年月日 → 申込内容承認登録明細.宅内調査希望アポ期限年月日 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD_ERR))
				{
					if (!childMap.containsKey("takcho_kibo_apo_kigen_ymd_err"))
					{
						childMap.put("takcho_kibo_apo_kigen_ymd_err", childTemplate.getString(EKK0011D020CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.工事アポ連絡先指定コード → 申込内容承認登録明細.工事アポ連絡先指定コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD_ERR))
				{
					if (!childMap.containsKey("koji_apo_rrks_shitei_cd_err"))
					{
						childMap.put("koji_apo_rrks_shitei_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.工事アポ連絡先電話番号 → 申込内容承認登録明細.工事アポ連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_TELNO_ERR))
				{
					if (!childMap.containsKey("koji_apo_rrks_telno_err"))
					{
						childMap.put("koji_apo_rrks_telno_err", childTemplate.getString(EKK0011D020CBSMsg1List.KOJI_APO_RRKS_TELNO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.連絡事項登録年月日時分秒 → 申込内容承認登録明細.連絡事項登録年月日時分秒 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.RRK_JIKO_ADD_DTM_ERR))
				{
					if (!childMap.containsKey("rrk_jiko_add_dtm_err"))
					{
						childMap.put("rrk_jiko_add_dtm_err", childTemplate.getString(EKK0011D020CBSMsg1List.RRK_JIKO_ADD_DTM_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.申込連絡先メールアドレス → 申込内容承認登録明細.申込連絡先メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKM_RRKS_MLAD_ERR))
				{
					if (!childMap.containsKey("mskm_rrks_mlad_err"))
					{
						childMap.put("mskm_rrks_mlad_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKM_RRKS_MLAD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.工事進捗通知メールアドレス → 申込内容承認登録明細.工事進捗通知メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KOJI_PRG_TCHI_MLAD_ERR))
				{
					if (!childMap.containsKey("koji_prg_tchi_mlad_err"))
					{
						childMap.put("koji_prg_tchi_mlad_err", childTemplate.getString(EKK0011D020CBSMsg1List.KOJI_PRG_TCHI_MLAD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.連絡事項 → 申込内容承認登録明細.連絡事項 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.RRK_JIKO_ERR))
				{
					if (!childMap.containsKey("rrk_jiko_err"))
					{
						childMap.put("rrk_jiko_err", childTemplate.getString(EKK0011D020CBSMsg1List.RRK_JIKO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.工事進捗通知携帯メールアドレス
				//     → 申込内容承認登録明細.工事進捗通知携帯メールアドレス のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KJSC_TCH_KTAI_MLAD_ERR))
				{
					if (!childMap.containsKey("kjsc_tch_ktai_mlad_err"))
					{
						childMap.put("kjsc_tch_ktai_mlad_err", childTemplate.getString(EKK0011D020CBSMsg1List.KJSC_TCH_KTAI_MLAD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.メール送信除外フラグ → 申込内容承認登録明細.メール送信除外フラグ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.ML_SEND_JGI_FLG_ERR))
				{
					if (!childMap.containsKey("ml_send_jgi_flg_err"))
					{
						childMap.put("ml_send_jgi_flg_err", childTemplate.getString(EKK0011D020CBSMsg1List.ML_SEND_JGI_FLG_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.メール送信除外理由メモ → 申込内容承認登録明細.メール送信除外理由メモ のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.ML_SEND_JGI_RSN_MEMO_ERR))
				{
					if (!childMap.containsKey("ml_send_jgi_rsn_memo_err"))
					{
						childMap.put("ml_send_jgi_rsn_memo_err", childTemplate.getString(EKK0011D020CBSMsg1List.ML_SEND_JGI_RSN_MEMO_ERR));
					}
				}
				// 申込内容承認登録マップ.申込内容承認登録明細.番ポ申込連絡先電話番号 → 申込内容承認登録明細.番ポ申込連絡先電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.BMP_MSKM_RRKS_TLN_ERR))
				{
					if (!childMap.containsKey("bmp_mskm_rrks_tln_err"))
					{
						childMap.put("bmp_mskm_rrks_tln_err", childTemplate.getString(EKK0011D020CBSMsg1List.BMP_MSKM_RRKS_TLN_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.連絡手段補記 → 申込登録明細.連絡手段補記 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.RRK_WAY_HOKI_ERR))
				{
					if (!childMap.containsKey("rrk_way_hoki_err"))
					{
						childMap.put("rrk_way_hoki_err", childTemplate.getString(EKK0011D020CBSMsg1List.RRK_WAY_HOKI_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.新築物件コード → 申込登録明細.新築物件コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.NEWCONST_BUKKEN_CD_ERR))
				{
					if (!childMap.containsKey("newconst_bukken_cd_err"))
					{
						childMap.put("newconst_bukken_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.NEWCONST_BUKKEN_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.同一設備再申込コード → 申込登録明細.同一設備再申込コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.SAME_EQUIP_RE_MSKM_CD_ERR))
				{
					if (!childMap.containsKey("same_equip_re_mskm_cd_err"))
					{
						childMap.put("same_equip_re_mskm_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.SAME_EQUIP_RE_MSKM_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.オプションサービス引継有無 → 申込登録明細.オプションサービス引継有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM_ERR))
				{
					if (!childMap.containsKey("op_svc_hktgi_um_err"))
					{
						childMap.put("op_svc_hktgi_um_err", childTemplate.getString(EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.解約書類送付希望有無 → 申込登録明細.解約書類送付希望有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM_ERR))
				{
					if (!childMap.containsKey("dsl_aticle_sohu_kibo_um_err"))
					{
						childMap.put("dsl_aticle_sohu_kibo_um_err", childTemplate.getString(EKK0011D020CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.本人確認書類種別コード → 申込登録明細.本人確認書類種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD_ERR))
				{
					if (!childMap.containsKey("hnin_cfm_aticle_sbt_cd_err"))
					{
						childMap.put("hnin_cfm_aticle_sbt_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.申込書種別コード → 申込登録明細.申込書種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKMSHO_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mskmsho_sbt_cd_err"))
					{
						childMap.put("mskmsho_sbt_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_SBT_CD_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.契約付加コード → 申込登録明細.契約付加コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KEI_HUKA_CD_ERR))
				{
					if (!childMap.containsKey("kei_huka_cd_err"))
					{
						childMap.put("kei_huka_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.KEI_HUKA_CD_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.地図添付有無 → 申込登録明細.地図添付有無 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MAP_TEMP_UM_ERR))
				{
					if (!childMap.containsKey("map_temp_um_err"))
					{
						childMap.put("map_temp_um_err", childTemplate.getString(EKK0011D020CBSMsg1List.MAP_TEMP_UM_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.KCNSTB申込台数 → 申込登録明細.KCNSTB申込台数 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KCN_STB_MSKM_CNT_ERR))
				{
					if (!childMap.containsKey("kcn_stb_mskm_cnt_err"))
					{
						childMap.put("kcn_stb_mskm_cnt_err", childTemplate.getString(EKK0011D020CBSMsg1List.KCN_STB_MSKM_CNT_ERR));
					}
				}
				// 申込内容承認登録マップ.申込登録明細.KCNSTB種類コード → 申込登録明細.KCNSTB種類コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.KCN_STB_KIND_CD_ERR))
				{
					if (!childMap.containsKey("kcn_stb_kind_cd_err"))
					{
						childMap.put("kcn_stb_kind_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.KCN_STB_KIND_CD_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.マンション設備システム連携用記事欄 → 申込登録明細.マンション設備システム連携用記事欄 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN_ERR))
				{
					if (!childMap.containsKey("manssbsys_rnki_yo_kijiran_err"))
					{
						childMap.put("manssbsys_rnki_yo_kijiran_err", childTemplate.getString(EKK0011D020CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.マンションID → 申込登録明細.マンションID のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MANSION_ID_ERR))
				{
					if (!childMap.containsKey("mansion_id_err"))
					{
						childMap.put("mansion_id_err", childTemplate.getString(EKK0011D020CBSMsg1List.MANSION_ID_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.CAT-ID → 申込登録明細.CAT-ID のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.CATID_ERR))
				{
					if (!childMap.containsKey("catid_err"))
					{
						childMap.put("catid_err", childTemplate.getString(EKK0011D020CBSMsg1List.CATID_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.申込受付種別コード → 申込登録明細.申込受付種別コード のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MKM_UK_SBT_CD_ERR))
				{
					if (!childMap.containsKey("mkm_uk_sbt_cd_err"))
					{
						childMap.put("mkm_uk_sbt_cd_err", childTemplate.getString(EKK0011D020CBSMsg1List.MKM_UK_SBT_CD_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.申込書取扱情報担当者名 → 申込登録明細.申込書取扱情報担当者名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM_ERR))
				{
					if (!childMap.containsKey("mskmsho_trat_if_tntsha_nm_err"))
					{
						childMap.put("mskmsho_trat_if_tntsha_nm_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.申込書取扱情報電話番号 → 申込登録明細.申込書取扱情報電話番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TELNO_ERR))
				{
					if (!childMap.containsKey("mskmsho_trat_if_telno_err"))
					{
						childMap.put("mskmsho_trat_if_telno_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TELNO_ERR));
					}
				}
				
				// 申込内容承認登録マップ.申込登録明細.申込書明細番号 → 申込登録明細.申込書明細番号 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO_ERR))
				{
					if (!childMap.containsKey("mskmsho_dtl_no_err"))
					{
						childMap.put("mskmsho_dtl_no_err", childTemplate.getString(EKK0011D020CBSMsg1List.MSKMSHO_DTL_NO_ERR));
					}
				}

				// 申込内容承認登録マップ.申込登録明細.本人確認書類名 → 申込登録明細.本人確認書類名 のエラー情報返却
				if (!childTemplate.isNull(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_NM_ERR))
				{
					if (!childMap.containsKey("hnin_cfm_aticle_nm_err"))
					{
						childMap.put("hnin_cfm_aticle_nm_err", childTemplate.getString(EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_NM_ERR));
					}
				}
			}
		}
		if (!template.isNull(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST_ERR))
		{
			if (!inMap.containsKey("EKK0011D020CBSMsg1List_err"))
			{
				inMap.put("EKK0011D020CBSMsg1List_err", template.getString(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST_ERR));
			}
		}
		return param;
	}

	/**
	 * 申込_代理店登録の上りマッピング処理
	 * <br>
	 * @param param
	 * @param fixedText
	 * @param tokkiChgDetailMap
	 * @param dspJun
	 * @return CAANMsg
	 * @exception RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0071D010(
			IRequestParameterReadWrite param,
			String fixedText,
			HashMap tokkiChgDetailMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0071D010CBSMsg.class.getName());

		// テンプレートID
		template.set(EKK0071D010CBSMsg.TEMPLATEID, "EKK0071D010");

		// 機能コード（デフォルト：１）
		template.set(EKK0071D010CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		HashMap inMap = (HashMap)param.getData(fixedText);

		// 機能コード
		if (inMap != null)
		{
			template.set(EKK0071D010CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		}

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		HashMap workDataMap = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);

		// 申込番号
		if (workDataMap == null || workDataMap.get("mskm_no") == null || "".equals(workDataMap.get("mskm_no")))
		{
			template.setNull(EKK0071D010CBSMsg.MSKM_NO);
		}
		else
		{
			template.set(EKK0071D010CBSMsg.MSKM_NO, (String)workDataMap.get("mskm_no"));
		}

		// 代理店コード
		if (tokkiChgDetailMap == null || tokkiChgDetailMap.get("agnt_cd") == null || "".equals(tokkiChgDetailMap.get("agnt_cd")))
		{
			template.setNull(EKK0071D010CBSMsg.AGNT_CD);
		}
		else
		{
			template.set(EKK0071D010CBSMsg.AGNT_CD, tokkiChgDetailMap.get("agnt_cd"));
		}

		//申込_代理店番号
		setTemplate(param, template, EKK0071D010CBSMsg.MSKM_AGNT_NO, tokkiChgDetailMap, "", EKK0071D010CBSMsg.MSKM_AGNT_NO);
		
		// 表示順序
		if (tokkiChgDetailMap == null || tokkiChgDetailMap.get("dsp_jun") == null || "".equals(tokkiChgDetailMap.get("dsp_jun")))
		{
			template.setNull(EKK0071D010CBSMsg.DSP_JUN);
		}
		else
		{
			template.set(EKK0071D010CBSMsg.DSP_JUN, tokkiChgDetailMap.get("dsp_jun"));
		}
//		template.set(EKK0071D010CBSMsg.DSP_JUN, String.valueOf(dspJun));

		return template;
	}
	
	/**
	 * サービス契約一覧照会（紹介コード）の上りマッピング処理
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return CAANMsg サービスコンポーネント実行用CAANMsg
	 * @exception RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0081B532(
			IRequestParameterReadWrite param,
			String fixedText) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0081B532CBSMsg.class.getName());

		// テンプレートID
		template.set(EKK0081B532CBSMsg.TEMPLATEID, "EKK0081B532");

		// 機能コード（デフォルト：１）
		template.set(EKK0081B532CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		HashMap inMap = (HashMap)param.getData(fixedText);

		// 機能コード
		if (inMap != null)
		{
			template.set(EKK0081B532CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		}
		
		// サービス契約一覧照会（紹介コード）マップ.ＫＥＹ＿紹介コード → ＫＥＹ＿紹介コード
		if (inMap == null || inMap.get("key_intr_cd") == null || "".equals(inMap.get("key_intr_cd")))
		{
			template.setNull(EKK0081B532CBSMsg.KEY_INTR_CD);
		}
		else
		{
			template.set(EKK0081B532CBSMsg.KEY_INTR_CD, (String)inMap.get("key_intr_cd"));
		}
		
		return template;
	}

	/**
	 * 申込_代理店登録の下りマッピング処理
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @param tokkiChgList
	 * @return リクエストパラメータ
	 * @exception Exception
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0071D010(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 作業領域のマップを取得
		Map workMap = param.getMappingWorkArea();
		if (workMap == null)
		{
			workMap = new HashMap();
			param.setMappingWorkArea(workMap);
		}

		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}

		// 登録年月日時分秒
		if (template.isNull(EKK0071D010CBSMsg.ADD_DTM))
		{
			dataMap.put("add_dtm", "");
		}
		else
		{
			dataMap.put("add_dtm", template.getString(EKK0071D010CBSMsg.ADD_DTM));
		}

		// 登録オペレータアカウント
		if (template.isNull(EKK0071D010CBSMsg.ADD_OPEACNT))
		{
			dataMap.put("add_opeacnt", "");
		}
		else
		{
			dataMap.put("add_opeacnt", template.getString(EKK0071D010CBSMsg.ADD_OPEACNT));
		}

		// 更新年月日時分秒
		if (template.isNull(EKK0071D010CBSMsg.UPD_DTM))
		{
			dataMap.put("upd_dtm", "");
		}
		else
		{
			dataMap.put("upd_dtm", template.getString(EKK0071D010CBSMsg.UPD_DTM));
		}

		// 更新オペレータアカウント
		if (template.isNull(EKK0071D010CBSMsg.UPD_OPEACNT))
		{
			dataMap.put("upd_opeacnt", "");
		}
		else
		{
			dataMap.put("upd_opeacnt", template.getString(EKK0071D010CBSMsg.UPD_OPEACNT));
		}

		// 無効フラグ
		if (template.isNull(EKK0071D010CBSMsg.MK_FLG))
		{
			dataMap.put("mk_flg", "");
		}
		else
		{
			dataMap.put("mk_flg", template.getString(EKK0071D010CBSMsg.MK_FLG));
		}

		param.setData(fixedText, dataMap);

		// エラー情報の設定
		editErrInfoEKK0071D010(param, template, (Integer)returnCode, fixedText);

		// エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}

		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}
	
	/**
	 * サービス契約一覧照会（紹介コード）の下りマッピング処理
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ
	 * @exception Exception
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0081B532(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		HashMap inMap = (HashMap)param.getData(fixedText);
		String sysid = null;
		HashMap dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		String prefix = "kk0081_";
		CAANMsg[] templateArray = template.getCAANMsgList(EKK0081B532CBSMsg.EKK0081B532CBSMSG1LIST);
		ArrayList<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>();
		HashMap<String, Object> childMap = null;
		
		// サービス契約一覧照会（紹介コード）マップ.SYSID → SYSID
		if (inMap == null || inMap.get("sysid") == null || "".equals(inMap.get("sysid")))
		{
			sysid = "";
		}
		else
		{
			sysid = (String)inMap.get("sysid");
		}
		
		if(!JKKCommonUtil.isNull(templateArray))
		{
			for(CAANMsg childTemplate : templateArray)
			{
				childMap = new HashMap<String, Object>();
				
				// SYSIDが同じ場合は、スキップ
				if(sysid.equals(childTemplate.getString(EKK0081B532CBSMsg1List.SYSID)))
				{
					continue;
				}

				// サービス契約番号
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.SVC_KEI_NO, childTemplate);
				// サービス契約ステータス
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.SVC_KEI_STAT, childTemplate);
				// 申込番号
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.MSKM_NO, childTemplate);
				// SYSID
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.SYSID, childTemplate);
				// 仮申込フラグ
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.KARI_MSKM_FLG, childTemplate);
				// 紹介コード
				setDataMap(childMap, prefix, EKK0081B532CBSMsg1List.INTR_CD, childTemplate);
				
				dataList.add(childMap);
				
				String svcKeiStat =  childTemplate.getString(EKK0081B532CBSMsg1List.SVC_KEI_STAT);
				String kariMskmFlg =  childTemplate.getString(EKK0081B532CBSMsg1List.KARI_MSKM_FLG);
				// ANK-4294-00-00 ADD START
				String isintrcd_chk_tg = (String)inMap.get("isintrcd_chk_tg");
				if (isintrcd_chk_tg.equals("1"))
				{
					// エラー条件
					// サービス契約ステータスが受付済み 或いは
					// サービス契約ステータスが照査済以上かつ、解約済未満の場合
					// サービス契約ステータスが解約済 或いは
					// サービス契約ステータスがキャンセル済
					if (JKKStrConst.CD00037_UK_ZM.equals(svcKeiStat)
							|| (JKKStrConst.CD00037_SHOSA_ZUMI.compareTo(svcKeiStat) <= 0 && 0 < JKKStrConst.CD00037_DSL_ZM.compareTo(svcKeiStat))
							|| JKKStrConst.CD00037_DSL_ZM.equals(svcKeiStat) 
							|| JKKStrConst.CD00037_CANCEL_ZM.equals(svcKeiStat))
					{
						dataMap.put("intr_cd_overlap_error", JKKStrConst.INTR_CD_DBLE_FLG_ERR);
					}
					
				}
				else
				{
				// ANK-4294-00-00 ADD END
					// サービス契約ステータスが受付済みかつ、仮申込フラグが１以外　或いは
					// サービス契約ステータスが照査済以上かつ、解約済未満の場合
					if (JKKStrConst.CD00037_UK_ZM.equals(svcKeiStat) && !JKKStrConst.KARI_MSKM_FLG_KARI_MSKM.equals(kariMskmFlg)
						|| (JKKStrConst.CD00037_SHOSA_ZUMI.compareTo(svcKeiStat) <= 0 && 0 < JKKStrConst.CD00037_DSL_ZM.compareTo(svcKeiStat)))
					{
						dataMap.put("intr_cd_overlap_error", JKKStrConst.INTR_CD_DBLE_FLG_ERR);
					}
				// ANK-4294-00-00 ADD START
				}
				// ANK-4294-00-00 ADD END
			}
		}
		
		dataMap.put(EKK0081B532CBSMsg.EKK0081B532CBSMSG1LIST, dataList);
		
		param.setData(fixedText, dataMap);
		
		// エラー情報の設定
		editErrInfoEKK0081B532(param, template, (Integer)returnCode, fixedText);

		// エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}

		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 * 申込_代理店登録のエラー情報マッピング処理
	 * <br>
	 * @param iparam
	 * @param template
	 * @param returnCode
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @exception RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0071D010(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0071D010CBSMsg.STATUS), returnCode);

		HashMap inMap = (HashMap)param.getData(fixedText);

		// 申込番号 のエラー情報返却
		if (!template.isNull(EKK0071D010CBSMsg.MSKM_NO_ERR))
		{
			if (!inMap.containsKey("mskm_no_err"))
			{
				inMap.put("mskm_no_err", template.getString(EKK0071D010CBSMsg.MSKM_NO_ERR));
			}
		}

		// 代理店コード のエラー情報返却
		if (!template.isNull(EKK0071D010CBSMsg.AGNT_CD_ERR))
		{
			if (!inMap.containsKey("agnt_cd_err"))
			{
				inMap.put("agnt_cd_err", template.getString(EKK0071D010CBSMsg.AGNT_CD_ERR));
			}
		}
		
		// 申込_代理店番号 のエラー情報返却
		setErrInfo(inMap, EKK0071D010CBSMsg.MSKM_AGNT_NO_ERR, template, EKK0071D010CBSMsg.MSKM_AGNT_NO_ERR);
		
		// 表示順序 のエラー情報返却
		if (!template.isNull(EKK0071D010CBSMsg.DSP_JUN_ERR))
		{
			if (!inMap.containsKey("dsp_jun_err"))
			{
				inMap.put("dsp_jun_err", template.getString(EKK0071D010CBSMsg.DSP_JUN_ERR));
			}
		}

		return param;
	}
	
// --> ANK-1199-00-00
	
	
	/**
	 * サービス契約一覧照会（紹介コード）のエラー情報マッピング処理
	 * <br>
	 * @param iparam リクエストパラメータ
	 * @param template テンプレート
	 * @param returnCode リターンコード
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ
	 * @exception RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0081B532(IRequestParameterReadWrite iparam, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		IRequestParameterReadWrite param = setControlMapErrInfo(iparam, template.getInt(EKK0081B532CBSMsg.STATUS), returnCode);

		HashMap inMap = (HashMap)param.getData(fixedText);

		// 紹介コード のエラー情報返却
		if (!template.isNull(EKK0081B532CBSMsg.KEY_INTR_CD_ERR))
		{
			if (!inMap.containsKey("key_intr_cd_err"))
			{
				inMap.put("key_intr_cd_err", template.getString(EKK0081B532CBSMsg.KEY_INTR_CD_ERR));
			}
		}

		return param;
	}
	
// --> ANK-1199-00-00
	
	/**
	 * 申込番号採番の上りマッピング処理を行います。
	 * <br>
	 * @param param
	 * @param fixedText
	 * @param idx
	 * @param mskmMode
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0021C014(IRequestParameterReadWrite param, 
										String fixedText, 
										int idx) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0021C014CBSMsg.class.getName());
		ArrayList inList = null;

		// テンプレートID
		template.set(EKK0021C014CBSMsg.TEMPLATEID, "EKK0021C014");

		// 機能コード（デフォルト：１）
		template.set(EKK0021C014CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);
		
		// 機能コード
		template.set(EKK0021C014CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		
		if (inList != null)
		{
			HashMap childMap = (HashMap)inList.get(idx);
			
			// サービス体系コード
			template.set(EKK0021C014CBSMsg.SVC_TIKI_CD, childMap.get("svc_tiki_cd"));
			
			// 申込形態コード
			template.set(EKK0021C014CBSMsg.MSKM_FORM_CD, childMap.get("mskm_form_cd"));
			
			// 年月日
			template.set(EKK0021C014CBSMsg.YMD, childMap.get("ymd"));
		}
		return template;
	}

	/**
	 * 申込番号採番の下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @param idx
	 * @param saibanMap
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0021C014(Map<?, ?> msgList, 
															IRequestParameterReadWrite param, 
															String fixedText, 
															int idx, 
															HashMap saibanMap) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);

		if (dataList == null)
		{
			dataList = new ArrayList();
		}

		HashMap childMap = (HashMap)dataList.get(idx);
		
		if (childMap == null)
		{
			childMap = new HashMap();
		}

		// 申込番号
		if (!template.isNull(EKK0021C014CBSMsg.MSKMSHO_DTL_NO))
		{
			saibanMap.put((String)childMap.get("svc_kind_cd"), template.getString(EKK0021C014CBSMsg.MSKMSHO_DTL_NO));
		}

		// エラー情報の設定
		editErrInfoEKK0021C014(param, template, (Integer)returnCode, fixedText, idx);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @param idx 申込明細リストのindex
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0021C014(IRequestParameterReadWrite param, 
															CAANMsg template, 
															int returnCode, 
															String fixedText, 
															int idx) throws RequestParameterException
	{
		int templateStatus = template.getInt(EKK0021C014CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);
		
		ArrayList inList = null;
		HashMap childMap = null;
		
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		
		if (inList == null)
		{
			inList = new ArrayList();
			inList.add(new HashMap());
			inMap.put(ADD_MSKM_LIST, inList);

			childMap = (HashMap)inList.get(0);
		}
		else
		{
			childMap = (HashMap)inList.get(idx);
		}
		
		// サービス体系コードのエラー情報返却
		setErrInfo(childMap, "svc_tiki_cd_err", template, EKK0021C014CBSMsg.SVC_TIKI_CD_ERR);
		
		// 申込形態コードのエラー情報返却
		setErrInfo(childMap, "mskm_form_cd_err", template, EKK0021C014CBSMsg.MSKM_FORM_CD_ERR);
		
		// 年月日のエラー情報返却
		setErrInfo(childMap, "ymd_err", template, EKK0021C014CBSMsg.YMD_ERR);
		
		return param;
	}
	
	/**
	 * 申込番号重複チェックの上りマッピング処理を行います。
	 * <br>
	 * @param param
	 * @param fixedText
	 * @param idx
	 * @param saibanMap
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0021B506(IRequestParameterReadWrite param, 
										String fixedText, 
										int idx, 
										HashMap saibanMap) throws RequestParameterException
	{
		CAANMsg template = new CAANMsg(EKK0021B506CBSMsg.class.getName());
		ArrayList inList = null;

		// テンプレートID
		template.set(EKK0021B506CBSMsg.TEMPLATEID, "EKK0021B506");

		// 機能コード（デフォルト：１）
		template.set(EKK0021B506CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);

		// 機能コード
		template.set(EKK0021B506CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		
		if (inList != null)
		{
			HashMap childMap = (HashMap)inList.get(idx);
			
			// 申込書明細番号
			template.set(EKK0021B506CBSMsg.KEY_MSKMSHO_DTL_NO, saibanMap.get((String)childMap.get("svc_kind_cd")));
		}
		return template;
	}

	/**
	 * 申込番号重複チェックの下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @param idx
	 * @param saibanMode
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0021B506(Map<?, ?> msgList, 
															IRequestParameterReadWrite param, 
															String fixedText, 
															int idx, 
															String saibanMode) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);

		if (dataList == null)
		{
			dataList = new ArrayList();
		}

		HashMap childMap = (HashMap)dataList.get(idx);
		
		if (childMap == null)
		{
			childMap = new HashMap();
		}
		
		CAANMsg[] templateArray = template.getCAANMsgList(EKK0021B506CBSMsg.EKK0021B506CBSMSG1LIST);
		
		String mskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;
		if(!JKKCommonUtil.isNull(templateArray))
		{
			String svcKeiNo = null;
			for(CAANMsg childTemplate : templateArray)
			{
				svcKeiNo = childTemplate.getString(EKK0021B506CBSMsg1List.SVC_KEI_NO);
				
				// 紐付き不明は画面では警告だが登録時には正常とみなす。
				// 他契約に紐付く場合は重複エラーとする。
				if(!JKKCommonUtil.isNull(svcKeiNo))
				{
					mskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
					break;
				}
			}
		}
		
		// 自動採番
		if(MODE_AUTO.equals(saibanMode))
		{
			childMap.put("mskmsho_dtl_no_overlap_auot_flg", mskmshoDtlNoOverlapFlg);
			childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
		}
		else
		{
			childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
			childMap.put("mskmsho_dtl_no_overlap_manu_flg", mskmshoDtlNoOverlapFlg);
		}
		
		dataMap.put(ADD_MSKM_LIST, dataList);
		
		// エラー情報の設定
		editErrInfoEKK0021B506(param, template, (Integer)returnCode, fixedText, idx);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}
	
	/**
	 * 申込番号重複チェックの下りマップ情報返却のため、エラー情報の設定を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @param idx
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetErrorInfoEKK0021B506(Map<?, ?> msgList, 
															IRequestParameterReadWrite param, 
															String fixedText, 
															int idx) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
	
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);
		

		if (dataList == null)
		{
			dataList = new ArrayList();
		}

		HashMap childMap = (HashMap)dataList.get(idx);
		
		if (childMap == null)
		{
			childMap = new HashMap();
		}
		
		int templateStatus = template.getInt(EKK0021B506CBSMsg.STATUS);
		
		if(templateStatus == 0 
				&& (!JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals(dataMap.get("mskmsho_dtl_no_overlap_auot_flg")) 
						|| !JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL.equals(dataMap.get("mskmsho_dtl_no_overlap_manu_flg"))))
		{
			template.set(EKK0021B506CBSMsg.KEY_MSKMSHO_DTL_NO_ERR, "E1");
			template.set(EKK0021B506CBSMsg.STATUS, 1000);
		}
		
		// エラー情報の設定
		editErrInfoEKK0021B506(param, template, (Integer)returnCode, fixedText, idx);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}
	
	
	/**
	 * 紹介コード重複チェックの下りマップ情報返却のため、エラー情報の設定を行います。
	 * <br>
	 * @param msgList メッセージリスト
	 * @param param リクエストパラメータ
	 * @param fixedText ユーザ指定文字列
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetErrorInfoEKK0081B532(Map<?, ?> msgList, 
															IRequestParameterReadWrite param, 
															String fixedText) throws Exception
	{
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);

		// 結果を詰めるマップを取得。
		HashMap dataMap = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
	
		int templateStatus = template.getInt(EKK0081B532CBSMsg.STATUS);
		
		if(templateStatus == 0 
				&& (JKKStrConst.INTR_CD_DBLE_FLG_ERR.equals((String)dataMap.get("intr_cd_overlap_error"))))
		{
			template.set(EKK0081B532CBSMsg.KEY_INTR_CD_ERR, "EA");
			template.set(EKK0081B532CBSMsg.STATUS, 1100);
		}
		
		// エラー情報の設定
		editErrInfoEKK0081B532(param, template, (Integer)returnCode, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @param idx 申込明細リストのindex
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0021B506(IRequestParameterReadWrite param, 
															CAANMsg template, 
															int returnCode, 
															String fixedText, 
															int idx) throws RequestParameterException
	{
		int templateStatus = template.getInt(EKK0021B506CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);
		
		ArrayList inList = null;
		HashMap childMap = null;
		
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		
		if (inList == null)
		{
			inList = new ArrayList();
			inList.add(new HashMap());
			inMap.put(ADD_MSKM_LIST, inList);

			childMap = (HashMap)inList.get(0);
		}
		else
		{
			childMap = (HashMap)inList.get(idx);
		}
		
		// ＫＥＹ＿申込書明細番号 のエラー情報返却
		setErrInfo(childMap, "key_mskmsho_dtl_no_err", template, EKK0021B506CBSMsg.KEY_MSKMSHO_DTL_NO_ERR);
		
		return param;
	}
	
	/**
	 * 受付番号重複チェックの上りマッピング処理を行います。
	 * <br>
	 * @param param
	 * @param fixedText
	 * @param mode
	 * @return CAANMsg
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private CAANMsg editInEKK0021B011(IRequestParameterReadWrite param, String fixedText, String mode) throws RequestParameterException
	{
		ArrayList inList = null;
		CAANMsg template = new CAANMsg(EKK0021B011CBSMsg.class.getName());

		// テンプレートID
		template.set(EKK0021B011CBSMsg.TEMPLATEID, "EKK0021B011");

		// 機能コード（デフォルト：１）
		template.set(EKK0021B011CBSMsg.FUNC_CODE, "1");

		// オペレータID
		Object operatorId = param.getControlMapData(SCControlMapKeys.OPERATOR_ID);
		template.set(JCMConstants.OPERATOR_ID_KEY, operatorId);

		// 運用日付
		Object operateDate = param.getControlMapData(SCControlMapKeys.OPE_DATE);
		template.set(JCMConstants.OPERATE_DATE_KEY, operateDate);

		// 運用日時
		Object operateDateTime = param.getControlMapData(SCControlMapKeys.OPE_TIME);
		template.set(JCMConstants.OPERATE_DATETIME_KEY, operateDateTime);

		// マッピング情報
		HashMap<String, Object> inMap = (HashMap<String, Object>)param.getData(fixedText);
		

		// 機能コード
		template.set(EKK0021B011CBSMsg.FUNC_CODE, inMap.get(JCMConstants.FUNC_CODE_KEY));
		
		// 受付番号
		if(MODE_AUTO.equals(mode))
		{
			template.set(EKK0021B011CBSMsg.KEY_MSKMSHO_NO, mskmShoNo);
		}
		else
		{
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			
			if (inList != null)
			{
				HashMap childMap = (HashMap)inList.get(0);
				
				// 申込内容承認登録マップ.申込内容承認登録明細.申込書番号 → 申込内容承認登録明細.申込書番号
				if (childMap == null || childMap.get("mskmsho_no") == null || "".equals(childMap.get("mskmsho_no")))
				{
					template.setNull(EKK0021B011CBSMsg.KEY_MSKMSHO_NO);
				}
				else
				{
					template.set(EKK0021B011CBSMsg.KEY_MSKMSHO_NO, childMap.get("mskmsho_no"));
				}
			}
		}

		return template;
	}

	/**
	 * 受付番号重複チェックの下りマッピング処理を行います。
	 * <br>
	 * @param msgList
	 * @param param
	 * @param fixedText
	 * @param mode
	 * @return リクエストパラメータ
	 * @throws Exception 
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editRetEKK0021B011(Map<?, ?> msgList, 
															IRequestParameterReadWrite param, 
															String fixedText, 
															String mode) throws Exception
	{
		// 戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[])msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];
		CAANMsg[] templateArray = null;

		// リターンコード取得
		Object returnCode = msgList.get(JCMConstants.RET_CD_INT_KEY);
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = null;

		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		// 申込書明細番号重複フラグを設定する
		templateArray = template.getCAANMsgList(EKK0021B011CBSMsg.EKK0021B011CBSMSG1LIST);
		if (templateArray != null)
		{
			if (templateArray.length == 0)
			{
				dataMap.put("ukno_overlap_manu_flg", UKNO_OVERLAP_FLG_NASHI);
				dataMap.put("ukno_overlap_auot_flg", UKNO_OVERLAP_FLG_NASHI);
			}
			else
			{
				if(MODE_AUTO.equals(mode))
				{
					dataMap.put("ukno_overlap_auot_flg", UKNO_OVERLAP_FLG_ARI);
					dataMap.put("ukno_overlap_manu_flg", UKNO_OVERLAP_FLG_NASHI);
				}
				else
				{
					dataMap.put("ukno_overlap_auot_flg", UKNO_OVERLAP_FLG_NASHI);
					dataMap.put("ukno_overlap_manu_flg", UKNO_OVERLAP_FLG_ARI);
				}
			}
		}

		int templateStatus = template.getInt(EKK0021B011CBSMsg.STATUS);
		
		if(templateStatus == 0 
				&& (!UKNO_OVERLAP_FLG_NASHI.equals(dataMap.get("ukno_overlap_auot_flg")) 
						|| !UKNO_OVERLAP_FLG_NASHI.equals(dataMap.get("ukno_overlap_manu_flg"))))
		{
			template.set(EKK0021B011CBSMsg.KEY_MSKMSHO_NO_ERR, "E1");
			template.set(EKK0021B011CBSMsg.STATUS, 1000);
		}
		
		// エラー情報の設定
		editErrInfoEKK0021B011(param, template, (Integer)returnCode, fixedText);

		//エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>)param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null)
		{
			errList = new ArrayList<Object>();
		}
		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 *<DL>
	 *<DT>処理概要:
	 *<DD>サービスコンポーネント実行後に、IRequestParameterReadWriteにエラー情報をマッピングする
	 *<DT>入力パラメータ説明:
	 *<DD>特になし
	 *<DT>入力パラメータ説明：
	 *<DD>特になし
	 *<DT>出力パラメータ説明:
	 *<DD>特になし
	 *</DL>
	 * @param param (I) 業務データ取得・書込用I/F
	 * @param template (I) CAANMsgクラス配列
	 * @param returnCode (I) リターンコード
	 * @param fixedText ユーザ定義文字
	 * @return 業務データ取得・書込用I/F
	 * @throws RequestParameterException
	 * @since 2011.06.03
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrInfoEKK0021B011(IRequestParameterReadWrite param, CAANMsg template, int returnCode, String fixedText)
			throws RequestParameterException
	{
		int templateStatus = template.getInt(EKK0021B011CBSMsg.STATUS);
		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		
		/* ユーザデータ情報 */
		HashMap inMap = (HashMap)param.getData(fixedText);
		
		ArrayList inList = null;
		HashMap childMap = null;
	
		inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
		
		if (inList == null)
		{
			inList = new ArrayList();
			inList.add(new HashMap());
			inMap.put(ADD_MSKM_LIST, inList);
		}
		
		childMap = (HashMap)inList.get(0);
		
		// ＫＥＹ＿申込書番号 のエラー情報返却
		setErrInfo(childMap, "key_mskmsho_no_err", template, EKK0021B011CBSMsg.KEY_MSKMSHO_NO_ERR);
		
		return param;
	}
// <-- ANK-1199-00-00

	/**
	 * エラー情報のマッピング処理を行います。
	 * <br>
	 * @param param
	 * @param templates
	 * @param returnCode
	 * @param fixedText
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite editErrorInfo(IRequestParameterReadWrite param, CAANMsg[] templates, int returnCode, String fixedText)
			throws RequestParameterException
	{
		HashMap inMap = (HashMap<String, Object>)param.getData(fixedText);
		// マップに値が設定されていない場合は処理を行わない。
		if (inMap == null)
		{
			return param;
		}

		int templateCount = 0;

		// 申込のモードを取得
		String  mskmMode = (String)inMap.get("mskm_mode");
		
		// 申込が"申請"の場合、申込登録を行う。それ以外の場合、申込内容承認登録を行う。
		if (MODE_SHINSEI.equals(mskmMode))
		{

			String mskmKaisenSvc = (String)inMap.get("mskm_kaisen_svc");
			if(null != mskmKaisenSvc && 0 < mskmKaisenSvc.length())
			{
				editErrInfoEKK0021C013(param, templates[templateCount++], (Integer)returnCode, fixedText); // 申込書番号採番
			}
			
// --> ANK-1199-00-00
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					// 申込番号採番
					editErrInfoEKK0021C014(param, templates[templateCount++], (Integer)returnCode, fixedText, i);	// 申込番号採番
				}
			}
// <-- ANK-1199-00-00
			
			editErrInfoEKK0011D010(param, templates[templateCount++], (Integer)returnCode, fixedText); // 申込登録
			editErrInfoEKK0011C100Msg(param, templates[templateCount++], (Integer)returnCode, fixedText); // 申込内容承認申請

		}
		else
		{

// --> ANK-1199-00-00
			editErrInfoEKK0021B011(param, templates[templateCount++], (Integer)returnCode, fixedText); // 受付番号重複チェック
			
			ArrayList inList = null;
			inList = (ArrayList)inMap.get(ADD_MSKM_LIST);
			String mskmshoDtlNo = "";

			for (int i = 0; i < inList.size(); i++)
			{
				HashMap childMap = (HashMap)inList.get(i);
				
				// 申込番号の取得
				if(childMap != null && childMap.get("mskmsho_dtl_no") != null)
				{
					mskmshoDtlNo = (String)childMap.get("mskmsho_dtl_no");
				}
				
				// 申込番号未入力
				if("".equals(mskmshoDtlNo))
				{
					editErrInfoEKK0021C014(param, templates[templateCount++], (Integer)returnCode, fixedText, i);	// 申込番号採番
				}
				else
				{
					// 申込番号重複チェック実行判定
					String mskmshoDtlNoHenkoFlg = MSKM_DTL_NO_HENKO_FLG_NASHI;
					mskmshoDtlNoHenkoFlg = (String)childMap.get("mskmsho_dtl_no_henko_flg");
					
					if(MSKM_DTL_NO_HENKO_FLG_ARI.equals(mskmshoDtlNoHenkoFlg))
					{
						editErrInfoEKK0021B506(param, templates[templateCount++], (Integer)returnCode, fixedText, i); // 申込番号重複チェック
					}
				}
			}
// <-- ANK-1199-00-00
			editErrInfoEKK0011D020(param, templates[templateCount++], (Integer)returnCode, fixedText); // 申込承認登録

		}

		return param;
	}

	/**
	 * マッピング項目の取得を行います。
	 * <br>
	 * @param param
	 * @param fixedText
	 * @param svcMskm
	 * @return 取得したマッピング項目
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private String getMapValue(IRequestParameterReadWrite param, String fixedText, String svcMskm) throws RequestParameterException
	{
		HashMap inMap = (HashMap)(param.getData(fixedText));
		String result = (String)inMap.get(svcMskm);
		if ("".equals(result))
		{
			result = null;
		}

		return result;
	}

	/**
	 * コントロールマップエラー情報格納処理を行います。
	 * <br>
	 * @param param
	 * @param itemplateStatus
	 * @param returnCode
	 * @return リクエストパラメータ
	 * @throws RequestParameterException
	 */
	private IRequestParameterReadWrite setControlMapErrInfo(IRequestParameterReadWrite param, int itemplateStatus, int returnCode)
			throws RequestParameterException
	{
		int templateStatus = itemplateStatus;

		if (returnCode != 0)
		{
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString(RETURN_MESSAGE_STRING + String.format(RETURN_MESSAGE_FORMAT, templateStatus)) == null)
		{
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null)
		{
			bpStatus = -1;
		}
		else
		{
			bpStatus = Integer.parseInt((String)param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus)
		{
			String formatStatus = String.format(RETURN_MESSAGE_FORMAT, templateStatus);
			String message = JCMAPLConstMgr.getString(RETURN_MESSAGE_STRING + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}
		return param;
	}
	
	/**
	 * CAANMsgに値を設定します。<br>
	 *  @inMap内にデータが存在する場合、inMap内のデータを設定します。<br>
	 *  A上記以外の場合、setNullを呼び出します。<br>
	 * @param param IRequestParameterReadWrite
	 * @param template 値を設定するメッセージキャリア
	 * @param setKey 設定先メッセージキャリアのキー名
	 * @param inMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param getKey ユーザデータ情報より取得するキー名
	 */
	private void setTemplate(IRequestParameterReadWrite param, CAANMsg template, String setKey,
			HashMap<String, Object> inMap, String prefix, String getKey)
	{
		
		if (null == inMap || null == inMap.get(prefix + getKey) || 0 == (String.valueOf(inMap.get(prefix + getKey))).length())
		{
			template.setNull(setKey);
		}
		else
		{
			template.set(setKey, String.valueOf(inMap.get(prefix + getKey)));
		}
	}
	
	/**
	 * ユーザデータ情報にエラー情報を設定します。<br>
	 * 　※ユーザデータ情報内にすでにキーが存在する場合、値は設定されません。<br>
	 * @param inMap	 ユーザデータ情報
	 * @param setKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 * @param getKey メッセージキャリアより取得するキー名
	 */
	private void setErrInfo(HashMap<String, Object> inMap, String setKey, CAANMsg template, String getKey)
	{
		if (!template.isNull(getKey))
		{
			if (!inMap.containsKey(setKey))
			{
				inMap.put(setKey, template.getString(getKey));
			}
		}
	}
	
// --> ANK-1199-00-00

	/**
	 * 申込番号重複チェック
	 * @param param
	 * @param fixedText
	 * @param saibanMap
	 * @return リクエストパラメータ
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite checkMskmshoDtlNoOverlap(IRequestParameterReadWrite param, String fixedText, HashMap saibanMap) throws Exception
	{
		
		// 結果を詰めるマップを取得。
		HashMap dataMap = null;
		ArrayList dataList = null;
		
		dataMap = (HashMap)param.getData(fixedText);
		if (dataMap == null)
		{
			dataMap = new HashMap();
			param.setData(fixedText, dataMap);
		}
		
		dataList = (ArrayList)dataMap.get(ADD_MSKM_LIST);
		
		if(dataList == null)
		{
			return param;
		}
		
		String netTelMskmshoDtlNo = "";
		String tvMskmshoDtlNo = "";
		String mblMskmshoDtlNo = "";
		String adslMskmshoDtlNo = "";
		
		String netTelMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;
		String tvMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;
		String mblMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;
		String adslMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;

		// 申込番号の取得
		// eo光ネット
		if(saibanMap.get(JKKStrConst.CD00684_NET) != null)
		{
			netTelMskmshoDtlNo = (String)saibanMap.get(JKKStrConst.CD00684_NET);
		}
		
		// eo光電話
		if(saibanMap.get(JKKStrConst.CD00684_TEL) != null)
		{
			netTelMskmshoDtlNo  = (String)saibanMap.get(JKKStrConst.CD00684_TEL);
		}
		
		// eo光テレビ
		if(saibanMap.get(JKKStrConst.CD00684_TV) != null)
		{
			tvMskmshoDtlNo = (String)saibanMap.get(JKKStrConst.CD00684_TV);
		}
		
		// eoモバイル
		if(saibanMap.get(JKKStrConst.CD00684_MOBA) != null)
		{
			mblMskmshoDtlNo = (String)saibanMap.get(JKKStrConst.CD00684_MOBA);
		}
		
		// ADSL
		if(saibanMap.get(JKKStrConst.CD00684_ADSL) != null)
		{
			adslMskmshoDtlNo = (String)saibanMap.get(JKKStrConst.CD00684_ADSL);
		}

		// ネット・電話申込番号
		if(netTelMskmshoDtlNo != null &&  !"".equals(netTelMskmshoDtlNo))
		{
			if(netTelMskmshoDtlNo.equals(tvMskmshoDtlNo))
			{
				netTelMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				tvMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
			if(netTelMskmshoDtlNo.equals(mblMskmshoDtlNo))
			{
				netTelMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				mblMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
			if(netTelMskmshoDtlNo.equals(adslMskmshoDtlNo))
			{
				netTelMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				adslMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
		}
		
		// テレビ申込番号
		if(tvMskmshoDtlNo != null &&  !"".equals(tvMskmshoDtlNo))
		{
			if(tvMskmshoDtlNo.equals(mblMskmshoDtlNo))
			{
				tvMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				mblMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
			if(tvMskmshoDtlNo.equals(adslMskmshoDtlNo))
			{
				tvMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				adslMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
		}
		
		// モバイル申込番号
		if(mblMskmshoDtlNo != null &&  !"".equals(mblMskmshoDtlNo))
		{
			if(mblMskmshoDtlNo.equals(adslMskmshoDtlNo))
			{
				mblMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
				adslMskmshoDtlNoOverlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_ERR;
			}
		}
		
		String overlapFlg = JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL;
		
		// 申込番号重複フラグ(自動採番)に結果を設定
		for(int i = 0; i < dataList.size(); i++)
		{
			HashMap childMap = (HashMap)dataList.get(i);
			
			// サービス種類コード
			String svcKindCd = (String)childMap.get("svc_kind_cd");
			
			if (JKKStrConst.CD00684_NET.equals(svcKindCd) || JKKStrConst.CD00684_TEL.equals(svcKindCd))
			{
				overlapFlg = netTelMskmshoDtlNoOverlapFlg;
			}
			else if (JKKStrConst.CD00684_TV.equals(svcKindCd))
			{
				overlapFlg = tvMskmshoDtlNoOverlapFlg;
			}
			else if (JKKStrConst.CD00684_MOBA.equals(svcKindCd))
			{
				overlapFlg = mblMskmshoDtlNoOverlapFlg;
			}
			else if (JKKStrConst.CD00684_ADSL.equals(svcKindCd))
			{
				overlapFlg = adslMskmshoDtlNoOverlapFlg;
			}

			childMap.put("mskmsho_dtl_no_overlap_auot_flg", overlapFlg);
		}
		
		return param;
	}
	
	/**
	 * eo光ネット・eo光電話の同時申込チェック
	 * @param childMap
	 * @param saibanMap
	 * @return 同時申込 true 同時申込以外 false
	 * @throws Exception
	 */
	@SuppressWarnings("unchecked")
	private boolean checkNetTelMskmDtlNoDojiMskm(HashMap childMap, HashMap saibanMap) throws Exception
	{
		boolean retCd = false;
		
		// サービス体系コードを取得
		String svcTikiCd = (String)childMap.get("svc_tiki_cd");
		
		// サービス種類コードを取得
		String svckindCd = (String)childMap.get("svc_kind_cd");
		
		// サービス種類コードがeo光ネットまたはeo光電話の場合
		if(JKKStrConst.CD00684_NET.equals(svckindCd) || JKKStrConst.CD00684_TEL.equals(svckindCd))
		{
			// サービス体系コードが ホームタイプのeo光ネットまたはメゾンタイプのeo光ネットまたはマンションタイプのeo光ネットの場合
			if(SVC_TIKEI_CD_HOME_NET_TEL.equals(svcTikiCd) || SVC_TIKEI_CD_MEZON_NET_TEL.equals(svcTikiCd) || SVC_TIKEI_CD_MANSION_NET_TEL.equals(svcTikiCd))
			{
				// 採番マップに登録されているネットまたは電話の申込番号を採番マップに設定
				if(saibanMap.get(JKKStrConst.CD00684_NET) != null &&  !"".equals(saibanMap.get(JKKStrConst.CD00684_NET)))
				{
					saibanMap.put((String)childMap.get("svc_kind_cd"), (String)saibanMap.get(JKKStrConst.CD00684_NET));
					childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
					childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
					retCd = true;
				}
				else if(saibanMap.get(JKKStrConst.CD00684_TEL) != null &&  !"".equals(saibanMap.get(JKKStrConst.CD00684_TEL)))
				{
					saibanMap.put((String)childMap.get("svc_kind_cd"), (String)saibanMap.get(JKKStrConst.CD00684_TEL));
					childMap.put("mskmsho_dtl_no_overlap_auot_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
					childMap.put("mskmsho_dtl_no_overlap_manu_flg", JKKStrConst.MSKMSHO_DTL_NO_DBLE_FLG_NORMAL);
					retCd = true;
				}
			}
		}
		
		return retCd;
	}
// <-- ANK-1199-00-00
	
	/**
	 * 重複可能マップに申込書明細番号が存在するか判定します。
	 * @param inMap 申込情報登録マップ
	 * @param childMap 申込情報明細マップ 
	 * @param saibanMap 採番マップ
	 * @return 重複可能マップ内に存在する場合、true<br />
	 *          重複可能マップ内に存在しない場合、false
	 */
	@SuppressWarnings("unchecked")
	private boolean isDblePsb(HashMap inMap, HashMap childMap, HashMap saibanMap)
	{
		String svckindCd = String.valueOf(childMap.get("svc_kind_cd"));
		String[][] keys = {
				{JKKStrConst.CD00684_NET, "net_tel_dble_psb_map"}
				, {JKKStrConst.CD00684_TEL, "net_tel_dble_psb_map"}
				, {JKKStrConst.CD00684_TV, "tv_dble_psb_map"}
				, {JKKStrConst.CD00684_MOBA, "mbl_dble_psb_map"}
				, {JKKStrConst.CD00684_ADSL, "adsl_dble_psb_map"}
		};
		
		String[] key = null;
		for(String[] tmpKey : keys)
		{
			if(tmpKey[0].equals(svckindCd))
			{
				key = tmpKey;
				break;
			}
		}
		
		String mskmshoDtlNo = String.valueOf(saibanMap.get(key[0]));
		HashMap<String, String> dblePsbMap = (HashMap<String, String>)inMap.get(key[1]);
		
		if(!JKKCommonUtil.isNull(dblePsbMap) && dblePsbMap.containsValue(mskmshoDtlNo))
		{
			return true;
		}
		
		return false;
	}
	
	/**
	 * ユーザデータ情報に値を設定します。<br>
	 * 　※CAANMsg内のデータがNullの場合、空文字を設定します。<br>
	 * @param dataMap ユーザデータ情報
	 * @param prefix ユーザデータ情報より取得する場合に付加するプレフィックス
	 * @param getSetKey ユーザデータ情報に設定するキー名
	 * @param template メッセージキャリア
	 */
	private void setDataMap(HashMap<String, Object> dataMap, String prefix, String getSetKey, CAANMsg template)
	{
		setDataMap(dataMap, prefix, getSetKey, template, getSetKey);
	}
	
	/**
	 * ユーザデータ情報に値を設定します。<br>
	 * 　@CAANMsgにデータが存在する場合、CAANMsgのデータを設定します。<br>
	 * 　A上記以外の場合、空文字を設定します。<br>
	 * @param dataMap 値を設定するユーザデータ情報
	 * @param prefix ユーザデータ情報に設定する際に付加するプレフィックス
	 * @param setKey ユーザデータ情報のキー名
	 * @param template メッセージキャリア
	 * @param getKey メッセージキャリアのキー名
	 */
	private void setDataMap(HashMap<String, Object> dataMap, String prefix, String setKey, CAANMsg template, String getKey)
	{
		if (template.isNull(getKey))
		{
			dataMap.put(prefix + setKey, "");
		}
		else
		{
			dataMap.put(prefix + setKey, template.getString(getKey));
		}
	}
}
