/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：KKSV0042_KKSV0042OPDBMapper
*	ソースファイル名：KKSV0042_KKSV0042OPDBMapper.java
*	作成者			：FJ
*	日付			：2011年11月01日
*＜機能概要＞
*	BP（サービス契約内訳＜eo光電話＞一覧照会）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/11/01	FJ		新規作成
*   v26.00.00	2016/06/10  FJ)笠川    【ANK-2687-00-00】 プレミアムサポート施策
*   v49.00.00	2020/06/10	FJ) 荒木	【ANK-3840-00-00】テレビリースサービス新規申込対応
*
**********************************************************************/
package eo.web.webview.mapping;

import java.util.ArrayList;
import java.util.HashMap;

import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccessArray;

import eo.common.constant.JZM0171Constant;
import eo.web.webview.common.JKKCommonConst;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class KKSV0042_KKSV0042OPDBMapper {
	
	/**
	 * コンストラクタ
	 */
	public KKSV0042_KKSV0042OPDBMapper(){
	}
	

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004201SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号 → サービス契約一意照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", bean[0].sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE));
		// 運用年月日 → サービス契約一意照会マップ.ＫＥＹ＿予約適用年月日
		parentMap.put("key_rsv_aply_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004201SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004202SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号 → サービス契約共通情報一覧照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", bean[0].sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004202SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004203SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 運用年月日 → 督促一意照会マップ.ＫＥＹ＿督促管理年月日
		parentMap.put("key_tokusoku_kanri_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004203SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004204SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → コード名称（異動区分）照会マップ.ＫＥＹ＿コード種別コード
		parentMap.put("key_cd_sbt_cd", String.valueOf(JZM0171Constant.CD00576));
		// 異動区分 → コード名称（異動区分）照会マップ.ＫＥＹ＿異動区分
		parentMap.put("key_ido_div", bean[0].sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004204SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004205SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → コード名称（サービス契約ステータス）照会マップ.ＫＥＹ＿コード種別コード
		parentMap.put("key_cd_sbt_cd", String.valueOf(JZM0171Constant.CD00037));

		outputMap.put("KKSV004205SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004206SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号 → 割引サービス契約一覧照会（割引サービス指定）マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", bean[0].sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → 割引サービス契約一覧照会（割引サービス指定）マップ.ＫＥＹ＿割引サービスコード
		parentMap.put("key_wrib_svc_cd", String.valueOf(JKKCommonConst.WRIB_SVC_CD_FP_WRIB));

		outputMap.put("KKSV004206SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004207SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号 → サービス契約内訳＜ｅｏ光電話＞一覧照会（サービス契約番号）マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", bean[0].sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004207SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004208SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号 → サービス契約内訳一覧照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", bean[0].sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV004208SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションチャンネル情報一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004209SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		outputMap.put("KKSV004209SC", parentMap);
						
		return outputMap;
	}

	// 2016/06/10 ANK-2687-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションチャンネル情報一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004211CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}
		
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// 共通情報のマッピング
		parentMap.put("func_code", func_code);
		
		// ＫＥＹ＿ＳＹＳＩＤ → お客様ランク情報取得CC　ＫＥＹ＿ＳＹＳＩＤ
		parentMap.put("key_sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
		
		outputMap.put("KKSV004211CC", parentMap);
		
		return outputMap;
	}
	// 2016/06/10 ANK-2687-00-00 ADD END

// ANK-3840-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV004212CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}
		
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// 共通情報のマッピング
		parentMap.put("func_code", func_code);
		
		// 部品呼び出し → ＫＥＹ＿機能コード
		parentMap.put("key_func_code", String.valueOf(JKKCommonConst.VCMS_TEGAK_SVC_FUNC_CODE));
		// 部品呼び出し → ＫＥＹ＿契約種別コード
		parentMap.put("key_kyk_sbt_cd", String.valueOf(JKKCommonConst.VCMS_TEGAK_SVC_KYK_SBT_CODE));
		// SYSID → ＫＥＹ＿ＳＹＳＩＤ
		parentMap.put("key_sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
		
		outputMap.put("KKSV004212CC", parentMap);
		
		return outputMap;
	}
// ANK-3840-00-00 ADD END

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004201SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004201SC")){
			parentMap = (HashMap)outputMap.get("KKSV004201SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004201SC_ekk0081a010cbsmsg1list_EKK0081A010CBSMsg1List = bean[0].getDataBeanArray("サービス契約一意照会明細");
		childList = null;
		if(listKKSV004201SC_ekk0081a010cbsmsg1list_EKK0081A010CBSMsg1List != null && parentMap != null && parentMap.containsKey("EKK0081A010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EKK0081A010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004201SC_ekk0081a010cbsmsg1list_EKK0081A010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004201SC_ekk0081a010cbsmsg1list_EKK0081A010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004201SC_ekk0081a010cbsmsg1list_EKK0081A010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// サービス契約一意照会明細.サービスコード ← サービス契約一意照会マップ.サービス契約一意照会明細.サービスコード
				if (childMap != null) {
					subbean.sendMessageString("サービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("svc_cd"));
				} else {
					subbean.sendMessageString("サービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約一意照会明細.料金グループコード ← サービス契約一意照会マップ.サービス契約一意照会明細.料金グループコード
				if (childMap != null) {
					subbean.sendMessageString("料金グループコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("prc_grp_cd"));
				} else {
					subbean.sendMessageString("料金グループコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約一意照会明細.料金コースコード ← サービス契約一意照会マップ.サービス契約一意照会明細.料金コースコード
				if (childMap != null) {
					subbean.sendMessageString("料金コースコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pcrs_cd"));
				} else {
					subbean.sendMessageString("料金コースコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004202SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004202SC")){
			parentMap = (HashMap)outputMap.get("KKSV004202SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004202SC_ekk0081b010cbsmsg1list_EKK0081B010CBSMsg1List = bean[0].getDataBeanArray("サービス契約共通情報一覧照会明細");
		childList = null;
		if(listKKSV004202SC_ekk0081b010cbsmsg1list_EKK0081B010CBSMsg1List != null && parentMap != null && parentMap.containsKey("EKK0081B010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EKK0081B010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004202SC_ekk0081b010cbsmsg1list_EKK0081B010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004202SC_ekk0081b010cbsmsg1list_EKK0081B010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004202SC_ekk0081b010cbsmsg1list_EKK0081B010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// サービス契約共通情報一覧照会明細.サービス契約ステータス ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.サービス契約ステータス
				if (childMap != null) {
					subbean.sendMessageString("サービス契約ステータス", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("svc_kei_stat"));
				} else {
					subbean.sendMessageString("サービス契約ステータス", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.マンションＩＤ ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.マンションＩＤ
				if (childMap != null) {
					subbean.sendMessageString("マンションＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("mansion_id"));
				} else {
					subbean.sendMessageString("マンションＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.マンション名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.マンション名
				if (childMap != null) {
					subbean.sendMessageString("マンション名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("mansion_nm"));
				} else {
					subbean.sendMessageString("マンション名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.お客様名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.お客様名
				if (childMap != null) {
					subbean.sendMessageString("お客様名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_nm"));
				} else {
					subbean.sendMessageString("お客様名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者電話番号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者電話番号
				if (childMap != null) {
					subbean.sendMessageString("契約者電話番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_telno"));
				} else {
					subbean.sendMessageString("契約者電話番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者都道府県名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者都道府県名
				if (childMap != null) {
					subbean.sendMessageString("契約者都道府県名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_state_nm"));
				} else {
					subbean.sendMessageString("契約者都道府県名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者市区町村名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者市区町村名
				if (childMap != null) {
					subbean.sendMessageString("契約者市区町村名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_city_nm"));
				} else {
					subbean.sendMessageString("契約者市区町村名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者大字通称名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者大字通称名
				if (childMap != null) {
					subbean.sendMessageString("契約者大字通称名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_oaztsu_nm"));
				} else {
					subbean.sendMessageString("契約者大字通称名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者字丁目名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者字丁目名
				if (childMap != null) {
					subbean.sendMessageString("契約者字丁目名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_azcho_nm"));
				} else {
					subbean.sendMessageString("契約者字丁目名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者番地号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者番地号
				if (childMap != null) {
					subbean.sendMessageString("契約者番地号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_bnchigo"));
				} else {
					subbean.sendMessageString("契約者番地号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者住所補記・建物名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者住所補記・建物名
				if (childMap != null) {
					subbean.sendMessageString("契約者住所補記・建物名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_adrttm"));
				} else {
					subbean.sendMessageString("契約者住所補記・建物名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.契約者住所補記・部屋番号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.契約者住所補記・部屋番号
				if (childMap != null) {
					subbean.sendMessageString("契約者住所補記・部屋番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("keisha_adrrm"));
				} else {
					subbean.sendMessageString("契約者住所補記・部屋番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.サービス契約番号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.サービス契約番号
				if (childMap != null) {
					subbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("svc_kei_no"));
				} else {
					subbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.請求契約番号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.請求契約番号
				if (childMap != null) {
					subbean.sendMessageString("請求契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("seiky_kei_no"));
				} else {
					subbean.sendMessageString("請求契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.ＳＹＳＩＤ ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.ＳＹＳＩＤ
				if (childMap != null) {
					subbean.sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("sysid"));
				} else {
					subbean.sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.ｅｏＩＤ ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.ｅｏＩＤ
				if (childMap != null) {
					subbean.sendMessageString("ｅｏＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("eoid"));
				} else {
					subbean.sendMessageString("ｅｏＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.料金グループコード ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.料金グループコード
				if (childMap != null) {
					subbean.sendMessageString("料金グループコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("prc_grp_cd"));
				} else {
					subbean.sendMessageString("料金グループコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.料金グループ名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.料金グループ名
				if (childMap != null) {
					subbean.sendMessageString("料金グループ名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("prc_grp_nm"));
				} else {
					subbean.sendMessageString("料金グループ名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.料金コースコード ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.料金コースコード
				if (childMap != null) {
					subbean.sendMessageString("料金コースコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pcrs_cd"));
				} else {
					subbean.sendMessageString("料金コースコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.料金コース名 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.料金コース名
				if (childMap != null) {
					//↓↓↓2012-07-17変更、ST2-2012-00001357対応↓↓↓
					//subbean.sendMessageString("料金コース名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pcrs_nm"));
					//ロット１より料金プラン名を表示
					String pplan_nm = (String)childMap.get("pplan_nm");
					subbean.sendMessageString("料金コース名", X31CWebConst.DATABEAN_SET_VALUE, pplan_nm);
					//↑↑↑2012-07-17変更、ST2-2012-00001357対応↑↑↑
				} else {
					subbean.sendMessageString("料金コース名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.機器提供サービス契約番号 ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.機器提供サービス契約番号
				if (childMap != null) {
					subbean.sendMessageString("機器提供サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("kktk_svc_kei_no"));
				} else {
					subbean.sendMessageString("機器提供サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// OM-2014-0000091 サービス契約情報共通画面ヘッダ部のM-IDが誤っている 2014/01/21 START
				// サービス契約共通情報一覧照会明細.ペアＩＤ ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.ペアＩＤ
				if (childMap != null) {
					subbean.sendMessageString("ペアＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pairid"));
				} else {
					subbean.sendMessageString("ペアＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約共通情報一覧照会明細.料金コース速度コード ← サービス契約共通情報一覧照会マップ.サービス契約共通情報一覧照会明細.料金コース速度コード
				if (childMap != null) {
					subbean.sendMessageString("料金コース速度コード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("pcrs_speed_cd"));
				} else {
					subbean.sendMessageString("料金コース速度コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// OM-2014-0000091 サービス契約情報共通画面ヘッダ部のM-IDが誤っている 2014/01/21 END
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004203SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004203SC")){
			parentMap = (HashMap)outputMap.get("KKSV004203SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004203SC_ch0231a010cbsmsg1list_CH0231A010CBSMsg1List = bean[0].getDataBeanArray("督促一意照会明細");
		childList = null;
		if(listKKSV004203SC_ch0231a010cbsmsg1list_CH0231A010CBSMsg1List != null && parentMap != null && parentMap.containsKey("CH0231A010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("CH0231A010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004203SC_ch0231a010cbsmsg1list_CH0231A010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004203SC_ch0231a010cbsmsg1list_CH0231A010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004203SC_ch0231a010cbsmsg1list_CH0231A010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// 督促一意照会明細.督促番号 ← 督促一意照会マップ.督促一意照会明細.督促番号
				if (childMap != null) {
					subbean.sendMessageString("督促番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("tokusoku_no"));
				} else {
					subbean.sendMessageString("督促番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// 督促一意照会明細.督促ステータス ← 督促一意照会マップ.督促一意照会明細.督促ステータス
				if (childMap != null) {
					subbean.sendMessageString("督促ステータス", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("tokusoku_stat"));
				} else {
					subbean.sendMessageString("督促ステータス", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// 督促一意照会明細.督促ステータス名称 ← 督促一意照会マップ.督促一意照会明細.督促ステータス名称
				if (childMap != null) {
					subbean.sendMessageString("督促ステータス名称", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("tokusoku_stat_nm"));
				} else {
					subbean.sendMessageString("督促ステータス名称", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004204SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004204SC")){
			parentMap = (HashMap)outputMap.get("KKSV004204SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004204SC_ido_div_nm_list_EZM0171A010CBSMsg1List = bean[0].getDataBeanArray("異動区分名称一意照会明細");
		childList = null;
		if(listKKSV004204SC_ido_div_nm_list_EZM0171A010CBSMsg1List != null && parentMap != null && parentMap.containsKey("EZM0171A010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EZM0171A010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004204SC_ido_div_nm_list_EZM0171A010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004204SC_ido_div_nm_list_EZM0171A010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004204SC_ido_div_nm_list_EZM0171A010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// 異動区分名称一意照会明細.コード区分名 ← コード名称（異動区分）照会マップ.コード名称管理一意照会明細.コード区分名
				if (childMap != null) {
					subbean.sendMessageString("コード区分名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cd_div_nm"));
				} else {
					subbean.sendMessageString("コード区分名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// 異動区分名称一意照会明細.コード区分略称 ← コード名称（異動区分）照会マップ.コード名称管理一意照会明細.コード区分略称
				if (childMap != null) {
					subbean.sendMessageString("コード区分略称", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cd_div_ali"));
				} else {
					subbean.sendMessageString("コード区分略称", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004205SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004205SC")){
			parentMap = (HashMap)outputMap.get("KKSV004205SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004205SC_svc_kei_stat_nm_list_EZM0171A010CBSMsg1List = bean[0].getDataBeanArray("サービス契約ステータス名称一意照会明細");
		childList = null;
		if(listKKSV004205SC_svc_kei_stat_nm_list_EZM0171A010CBSMsg1List != null && parentMap != null && parentMap.containsKey("EZM0171A010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EZM0171A010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004205SC_svc_kei_stat_nm_list_EZM0171A010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004205SC_svc_kei_stat_nm_list_EZM0171A010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004205SC_svc_kei_stat_nm_list_EZM0171A010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// サービス契約ステータス名称一意照会明細.コード区分名 ← コード名称（サービス契約ステータス）照会マップ.コード名称管理一意照会明細.コード区分名
				if (childMap != null) {
					subbean.sendMessageString("コード区分名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cd_div_nm"));
				} else {
					subbean.sendMessageString("コード区分名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// サービス契約ステータス名称一意照会明細.コード区分略称 ← コード名称（サービス契約ステータス）照会マップ.コード名称管理一意照会明細.コード区分略称
				if (childMap != null) {
					subbean.sendMessageString("コード区分略称", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cd_div_ali"));
				} else {
					subbean.sendMessageString("コード区分略称", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004206SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004206SC")){
			parentMap = (HashMap)outputMap.get("KKSV004206SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004206SC_ekk0451b010cbsmsg1list_EKK0451B010CBSMsg1List = bean[0].getDataBeanArray("割引サービス契約一覧照会（割引サービス指定）明細");
		childList = null;
		if(listKKSV004206SC_ekk0451b010cbsmsg1list_EKK0451B010CBSMsg1List != null && parentMap != null && parentMap.containsKey("EKK0451B010CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EKK0451B010CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004206SC_ekk0451b010cbsmsg1list_EKK0451B010CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004206SC_ekk0451b010cbsmsg1list_EKK0451B010CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004206SC_ekk0451b010cbsmsg1list_EKK0451B010CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// 割引サービス契約一覧照会（割引サービス指定）明細.割引サービス契約番号 ← 割引サービス契約一覧照会（割引サービス指定）マップ.割引サービス契約一覧照会（割引サービス指定）明細.割引サービス契約番号
				if (childMap != null) {
					subbean.sendMessageString("割引サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("wrib_svc_kei_no"));
				} else {
					subbean.sendMessageString("割引サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションサービス契約一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004208SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004208SC")){
			parentMap = (HashMap)outputMap.get("KKSV004208SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004208SC_ekk0161b004cbsmsg1list_EKK0161B004CBSMsg1List = bean[0].getDataBeanArray("サービス契約内訳一覧照会明細");
		childList = null;
		if(listKKSV004208SC_ekk0161b004cbsmsg1list_EKK0161B004CBSMsg1List != null && parentMap != null && parentMap.containsKey("EKK0161B004CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EKK0161B004CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004208SC_ekk0161b004cbsmsg1list_EKK0161B004CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004208SC_ekk0161b004cbsmsg1list_EKK0161B004CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004208SC_ekk0161b004cbsmsg1list_EKK0161B004CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// サービス契約内訳一覧照会明細.サービス契約内訳番号 ← サービス契約内訳一覧照会マップ.サービス契約内訳一覧照会明細.サービス契約内訳番号
				if (childMap != null) {
					subbean.sendMessageString("サービス契約内訳番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("svc_kei_ucwk_no"));
				} else {
					subbean.sendMessageString("サービス契約内訳番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

	/**
	 * 下りマッピング
	 * @param bean　[0]：オプションチャンネル情報一覧照会
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getKKSV004209SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("KKSV004209SC")){
			parentMap = (HashMap)outputMap.get("KKSV004209SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listKKSV004209SC_ekk0821b001cbsmsg1list_EKK0821B001CBSMsg1List = bean[0].getDataBeanArray("オプションチャンネル情報一覧照会明細");
		childList = null;
		if(listKKSV004209SC_ekk0821b001cbsmsg1list_EKK0821B001CBSMsg1List != null && parentMap != null && parentMap.containsKey("EKK0821B001CBSMsg1List")){
			childList = (ArrayList)parentMap.get("EKK0821B001CBSMsg1List");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listKKSV004209SC_ekk0821b001cbsmsg1list_EKK0821B001CBSMsg1List.getCount() -1 >= i){
					subbean = listKKSV004209SC_ekk0821b001cbsmsg1list_EKK0821B001CBSMsg1List.getDataBean(i);
				}else{
					subbean = listKKSV004209SC_ekk0821b001cbsmsg1list_EKK0821B001CBSMsg1List.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// オプションチャンネル情報一覧照会明細.オプションサービスコード ← オプションチャンネル情報一覧照会マップ.オプションチャンネル情報一覧照会明細.オプションサービスコード
				if (childMap != null) {
					subbean.sendMessageString("オプションサービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("op_svc_cd"));
				} else {
					subbean.sendMessageString("オプションサービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// オプションチャンネル情報一覧照会明細.オプションサービス名 ← オプションチャンネル情報一覧照会マップ.オプションチャンネル情報一覧照会明細.オプションサービス名
				if (childMap != null) {
					subbean.sendMessageString("オプションサービス名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("op_svc_nm"));
				} else {
					subbean.sendMessageString("オプションサービス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}

}
