/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：KKSV0395_KKSV0395OPDBMapper
*	ソースファイル名：KKSV0395_KKSV0395OPDBMapper.java
*	作成者			：Fijitsu
*	日付			：2012年05月10日
*＜機能概要＞
*	BP（コース履歴_ネット予約取消確認サービス）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2012/05/10	Fijitsu		新規作成
*	v4.00.00	2012/11/07	FJ)宇野		ANK-1223-00-00 進捗対応
*	v4.01.00	2012/12/11	FJ）庭山	【IT1-2012-0002310】対応
*	v4.02.00	2012/02/08	FJ）野口	【ST2-2013-0000455】対応
*	v4.03.00	2013/04/19	FJ）古田	【IT2-2013-0000393】対応
*   v5.00.00	2013/10/31	FJ) 稲岡	【OM-2013-0003452】
*	v5.00.01	2013/11/07	FJ）稲岡	【OM-2013-0003593】
*   v6.00.00	2014/01/09	FJ) 辛		【OM-2014-0000097】対応
*	v8.00.00	2014/03/28	FJ）稲岡	【OM-2014-0001252】対応
*	v19.00.00	2015/10/29	FJ) 清水	【OM-2015-0002629】対応 (コメント変更のみ)工事中工事案件一覧照会から工事案件一覧照会へと変更
*	v26.00.00	2016/07/29	FJ) 原田	【ANK-2765-00-00】認証IDの統一化
*   v51.00.00	2020/11/02	FJ) 西窪	【ANK-3949-00-00】Netflix導入対応（STEP1）
*	v52.00.00	2021/01/26	FJ) 三原	【ANK-3987-00-00】Netflix導入対応(STEP2)
*	v60.00.00   2022/07/26  FJ) 西窪    【ANK-4287-00-00】【eo定期】機器オプションの予約機能対応
*	v71.00.00	2024/05/20	GDC)ml.alcantara	【ANK-4567-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.web.webview.KKW02701SF.KKW02701SFConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JKKCommonConst;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class KKSV0395_KKSV0395OPDBMapper {
	
	
	/* ++++++++++ v6.00.00 追加開始 ++++++++++ */
	/** 異動区分：コース変更 */
	private static final String COURSE_CHG_IDO_DIV = "00009";
	/* ++++++++++ v6.00.00 追加終了 ++++++++++ */
	
	/**
	 * コンストラクタ
	 */
	public KKSV0395_KKSV0395OPDBMapper(){
	}
/* ++++++++++ v4.02.00 追加開始 ++++++++++ */	
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039536SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → サービス契約一意照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		
		// 部品呼び出し → サービス契約一意照会マップ.ＫＥＹ＿予約適用年月日
		parentMap.put("key_rsv_aply_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV039536SC", parentMap);
						
		return outputMap;
	}
/* ++++++++++ v4.02.00 追加終了 ++++++++++ */
	
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039501SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 申込内容承認登録マップ.ＳＹＳＩＤ
		parentMap.put("sysid", String.valueOf(custbean.sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → 申込内容承認登録マップ.申込種別コード
		parentMap.put("mskm_sbt_cd", JKKCommonConst.MSKM_SBT_CD_VALUE_00006);
		// 運用年月日時分秒 → 申込内容承認登録マップ.申込受付年月日時分秒
		parentMap.put("mskm_uk_dtm", bean[0].sendMessageString("運用年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));
		// 運用年月日 → 申込内容承認登録マップ.申込年月日
		parentMap.put("mskm_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → 申込内容承認登録マップ.コンシューマ営業用申込状態識別コード
		parentMap.put("consmbsn_mskm_stat_skbt_cd", String.valueOf("04"));

		outputMap.put("KKSV039501SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039502SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → サービス契約＜eoモバイル＞一意照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));

		outputMap.put("KKSV039502SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039503CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → サービス契約内訳コース履歴一覧照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → サービス契約内訳コース履歴一覧照会マップ.申込明細番号
		parentMap.put("mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → サービス契約内訳キャンセルマップ.サービスキャンセル理由コード
		parentMap.put("svc_cancel_rsn_cd", String.valueOf("03"));
		// 部品呼び出し → サービス契約内訳キャンセルマップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		// 運用年月日 → サービス契約内訳解約マップ.サービス終了年月日
		parentMap.put("svc_endymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 運用年月日 → サービス契約内訳解約マップ.サービス課金終了年月日
		parentMap.put("svc_chrg_endymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → サービス契約内訳解約マップ.サービス解約理由コード
		parentMap.put("svc_dlre_cd", JKKCommonConst.SVC_DLRE_CD_VALUE_03);
		// 部品呼び出し → サービス契約内訳解約マップ.違約金発生コード
		parentMap.put("pnlty_hassei_cd", String.valueOf("0"));
		// 運用年月日 → サービス契約内訳解約確定マップ.サービス解約起算年月日
		parentMap.put("svc_dsl_kisan_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		
		/* ++++++++++ v6.00.00 追加開始 ++++++++++ */
		// コース変更予約取消画面フラグ
		parentMap.put("course_chg_flg",  String.valueOf("1"));
		// 異動区分：コース変更
		parentMap.put("course_chg_ido_div",  COURSE_CHG_IDO_DIV);
		/* ++++++++++ v6.00.00 追加終了 ++++++++++ */

		outputMap.put("KKSV039503CC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039503SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 申込明細一意照会マップ.ＫＥＹ＿申込明細番号
		parentMap.put("key_mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));

		outputMap.put("KKSV039503SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039504SC(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("KKSV039504SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039505SC(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("mskm_cancel_rsn_cd", String.valueOf("20"));

		outputMap.put("KKSV039505SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039506SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
/* ++++++++++ v8.00.00 追加開始 ++++++++++ */
		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray(KKW02701SFConst.COURSE_RK_LIST).getDataBean(0);
/* ++++++++++ v8.00.00 追加終了 ++++++++++ */
		
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → サービス契約料金プラン変更中止マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 更新年月日時分秒 → サービス契約料金プラン変更中止マップ.更新年月日時分秒（更新前）
		parentMap.put("upd_dtm_bf", bean[0].sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));
/* ++++++++++ v8.00.00 追加開始 ++++++++++ */
		parentMap.put("mskm_dtl_no", String.valueOf(courseRk.sendMessageString(KKW02701SFConst.MSKM_DTL_NO_02, X31CWebConst.DATABEAN_GET_VALUE)));
/* ++++++++++ v8.00.00 追加終了 ++++++++++ */

		outputMap.put("KKSV039506SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039504CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 異動予約解約マップ.申込明細番号
		parentMap.put("mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));

		// 更新年月日時分秒 → 異動予約解約マップ.更新年月日時分秒
		parentMap.put("upd_dtm", bean[0].sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));

		// 部品呼び出し → 異動予約解約マップ.異動区分
		parentMap.put("ido_div", JKKCommonConst.IDO_DIV_VALUE_00009);

		// サービスコード → 異動予約解約マップ.サービスコード
		parentMap.put("svc_cd", bean[0].sendMessageString("サービスコード", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV039504CC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039501CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → コース履歴＿オプションサービス契約解約マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 運用年月日 → コース履歴＿オプションサービス契約解約マップ.運用年月日
		parentMap.put("unyo_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → コース履歴＿オプションサービス契約解約マップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		// 運用年月日時分秒 → コース履歴＿オプションサービス契約解約マップ.運用年月日時分秒
		parentMap.put("unyo_dtm", bean[0].sendMessageString("運用年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV039501CC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039502CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → コース履歴＿機器提供サービス契約解約CCマップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → コース履歴＿機器提供サービス契約解約CCマップ.ＫＥＹ＿予約異動区分
		parentMap.put("key_rsv_ido_div", JKKCommonConst.IDO_DIV_VALUE_00009);
		// 運用年月日 → コース履歴＿機器提供サービス契約解約CCマップ.運用年月日
		parentMap.put("unyo_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → コース履歴＿機器提供サービス契約解約CCマップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → コース履歴＿機器提供サービス契約解約CCマップ.申込明細番号
		parentMap.put("mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 運用年月日時分秒 → 返品機器受付マップ.登録契機契約異動年月日時分秒
		parentMap.put("add_optnty_kei_ido_dtm", bean[0].sendMessageString("運用年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));
		
		outputMap.put("KKSV039502CC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039515SC(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("KKSV039515SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039516SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → オーダ発行条件登録＿解約マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → オーダ発行条件登録＿解約マップ.オーダ種別コード
		parentMap.put("order_sbt_cd", JKKCommonConst.ORDER_SBT_CD_NET);
		// 部品呼び出し → オーダ発行条件登録＿解約マップ.サービスオーダコード
		parentMap.put("svc_order_cd", String.valueOf("06"));
		// 部品呼び出し → オーダ発行条件登録＿解約マップ.要求種別コード
		parentMap.put("yokyu_sbt_cd", String.valueOf("03"));
		// 部品呼び出し → オーダ発行条件登録＿解約マップ.オーダ発行条件コード
		parentMap.put("odr_hakko_joken_cd", JKKCommonConst.ODR_HAKKO_JOKEN_CD_SOKU);

		outputMap.put("KKSV039516SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039517SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → オーダ発行条件登録＿消去マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → オーダ発行条件登録＿消去マップ.オーダ種別コード
		parentMap.put("order_sbt_cd", JKKCommonConst.ORDER_SBT_CD_NET);
		// 部品呼び出し → オーダ発行条件登録＿消去マップ.サービスオーダコード
		parentMap.put("svc_order_cd", String.valueOf("06"));
		// 部品呼び出し → オーダ発行条件登録＿消去マップ.要求種別コード
		parentMap.put("yokyu_sbt_cd", String.valueOf("08"));
		// 部品呼び出し → オーダ発行条件登録＿消去マップ.オーダ発行条件コード
		parentMap.put("odr_hakko_joken_cd", JKKCommonConst.ODR_HAKKO_JOKEN_CD_SOKU);

		outputMap.put("KKSV039517SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039518SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_103);

		outputMap.put("KKSV039518SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039519SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_104);

		outputMap.put("KKSV039519SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039520SC(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("KKSV039520SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039521SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → マルチセッションオーダ発行条件登録＿解約マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿解約マップ.オーダ種別コード
		parentMap.put("order_sbt_cd", JKKCommonConst.ORDER_SBT_CD_NET);
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿解約マップ.サービスオーダコード
		parentMap.put("svc_order_cd", String.valueOf("06"));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿解約マップ.要求種別コード
		parentMap.put("yokyu_sbt_cd", String.valueOf("03"));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿解約マップ.オーダ発行条件コード
		parentMap.put("odr_hakko_joken_cd", JKKCommonConst.ODR_HAKKO_JOKEN_CD_SOKU);

		outputMap.put("KKSV039521SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039522SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → マルチセッションオーダ発行条件登録＿消去マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿消去マップ.オーダ種別コード
		parentMap.put("order_sbt_cd", JKKCommonConst.ORDER_SBT_CD_NET);
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿消去マップ.サービスオーダコード
		parentMap.put("svc_order_cd", String.valueOf("06"));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿消去マップ.要求種別コード
		parentMap.put("yokyu_sbt_cd", String.valueOf("08"));
		// 部品呼び出し → マルチセッションオーダ発行条件登録＿消去マップ.オーダ発行条件コード
		parentMap.put("odr_hakko_joken_cd", JKKCommonConst.ODR_HAKKO_JOKEN_CD_SOKU);

		outputMap.put("KKSV039522SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039523SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_143);

		outputMap.put("KKSV039523SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039524SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_146);

		outputMap.put("KKSV039524SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039525SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_145);

		outputMap.put("KKSV039525SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039526SC(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("odr_naiyo_cd", JKKCommonConst.ODR_NAIYO_CD_146);

		outputMap.put("KKSV039526SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039527SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		HashMap<String, Object> parentMap1 = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

	// OM-2015-0002629 2015/10/29 FJ) 清水 MOD START
//		// 部品呼び出し → 工事中工事案件一覧照会（サービス契約番号）マップ.ＫＥＹ＿サービス契約番号
//		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
//		// 部品呼び出し → 工事中工事案件一覧照会（サービス契約番号）マップ.ＫＥＹ＿工事案件種別コード
//		parentMap.put("key_kojiak_sbt_cd", String.valueOf("009"));
		// 部品呼び出し → 工事案件一覧照会（サービス契約番号）マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// ANK-4567-00-00 DEL START
		//// 部品呼び出し → 工事案件一覧照会（サービス契約番号）マップ.ＫＥＹ＿工事案件種別コード
		//parentMap.put("key_kojiak_sbt_cd", String.valueOf("009"));
		// ANK-4567-00-00 DEL END
	// OM-2015-0002629 2015/10/29 FJ) 清水 MOD END

		outputMap.put("KKSV039527SC", parentMap);
		
		parentMap1.put("svc_cd", bean[0].sendMessageString(KKW02701SFConst.SVC_CD, X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("SCRNDATA", parentMap1);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039528SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 工事案件取消マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → 工事案件取消マップ.工事受付コード
		parentMap.put("koji_uk_cd", String.valueOf("002"));
		// 部品呼び出し → 工事案件取消マップ.工事受付詳細コード
		parentMap.put("koji_uk_dtail_cd", String.valueOf("C0"));
		// 運用年月日時分秒 → 工事案件取消マップ.工事受付契機異動年月日時分秒
		parentMap.put("koji_uk_optnty_ido_dtm", bean[0].sendMessageString("運用年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));
		// 運用年月日 → 工事案件取消マップ.工事案件キャンセル年月日
		parentMap.put("kojiak_cancel_ymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("KKSV039528SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039529SC(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("KKSV039529SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039530SC(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("tchisho_clre_cd", String.valueOf("01"));

		outputMap.put("KKSV039530SC", parentMap);
						
		return outputMap;
	}
/* ++++++++++ v5.00.00 変更開始 ++++++++++ */
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コース履歴
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setKKSV039531SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
//		
//		if(bean == null){
//			return null;
//		}
//		
//		if(bean.length != 1){
//			return null;
//		}
//
//		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
//		HashMap<String, Object> parentMap = new HashMap<String, Object>();
//
//		// 共通情報のマッピング
//		parentMap.put("func_code", func_code);
//
//		// 部品呼び出し → 一時金設定一覧照会（工事案件番号）マップ.ＫＥＹ＿サービス契約番号
//		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
//
//		outputMap.put("KKSV039531SC", parentMap);
//						
//		return outputMap;
//	}
//
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コース履歴
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setKKSV039535SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
//		
//		if(bean == null){
//			return null;
//		}
//		
//		if(bean.length != 1){
//			return null;
//		}
//
//		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
//		HashMap<String, Object> parentMap = new HashMap<String, Object>();
//
//		// 共通情報のマッピング
//		parentMap.put("func_code", func_code);
//
//		// 部品呼び出し → 一時金設定一覧照会（サービス契約番号）マップ.ＫＥＹ＿サービス契約番号
//		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
//
//		outputMap.put("KKSV039535SC", parentMap);
//						
//		return outputMap;
//	}
//
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コース履歴
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setKKSV039532SC(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("KKSV039532SC", parentMap);
//						
//		return outputMap;
//	}
	
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCourseRkIcjknDelCC(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("CourseRkIcjknDelCC", parentMap);
						
		return outputMap;
	}
/* ++++++++++ v5.00.00 変更終了 ++++++++++ */
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039533SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 進捗登録マップ.サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → 進捗登録マップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		// ************ ANK-1223-00-00対応 str ***********
		// 運用年月日時分秒 → 進捗登録マップ.異動年月日時分秒
//		parentMap.put("ido_dtm", bean[0].sendMessageString("運用年月日時分秒", X31CWebConst.DATABEAN_GET_VALUE));
		parentMap.put("ido_dtm", JCCWebCommon.getSysDateTimeStamp());
		// ************ ANK-1223-00-00対応 end ***********
		
		// 部品呼び出し → 進捗登録マップ.進捗ステータス
		parentMap.put("prg_stat", JKKCommonConst.PRG_STAT_CD_1423);
		
		X31SDataBeanAccessArray arraybean = null;
		X31SDataBeanAccess beanTemp = null;
		ArrayList list = null;

		beanTemp = bean[0];
		arraybean = beanTemp.getDataBeanArray("顧客契約引継リスト");
		if(parentMap.containsKey("EKK1091D010CBSMsg1List")){
			list = (ArrayList)parentMap.get("EKK1091D010CBSMsg1List");
		}else{
			list = new ArrayList();
		}
		if(arraybean != null && arraybean.getCount() > 0){
			for(int i = 0; i < arraybean.getCount(); i++){
				X31SDataBeanAccess subbean = arraybean.getDataBean(i);
				int count = (Integer)subbean.sendMessage("異動理由コード", X31CWebConst.DATABEAN_GET_COUNT);
				for (int j = 0; j < count; j++)
				{
					HashMap childMap = new HashMap();

					// 顧客契約引継リスト.異動理由コード → 進捗登録情報マップ.異動理由明細.異動理由コード
					if (subbean != null) {
						childMap.put("ido_rsn_cd", subbean.sendMessageString("異動理由コード", X31CWebConst.DATABEAN_GET_VALUE, j));
					}

					list.add(childMap);
				}
			}
		}
		parentMap.put("EKK1091D010CBSMsg1List", list);

		outputMap.put("KKSV039533SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039534SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 運用年月日 → 申込明細照査・後続業務依頼マップ.後続業務依頼年月日
		parentMap.put("kzkwrk_reqymd", bean[0].sendMessageString("運用年月日", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → 申込明細照査・後続業務依頼マップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));

		outputMap.put("KKSV039534SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039505CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.登録／変更区分
		parentMap.put("add_chge_div", String.valueOf("03"));
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.申込種別コード
		parentMap.put("mskm_sbt_cd", JKKCommonConst.MSKM_SBT_CD_VALUE_00006);
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.グループ区分
		parentMap.put("grp_div", String.valueOf("00"));
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.サービス解約理由コード
		parentMap.put("svc_dlre_cd", String.valueOf("03"));
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.サービスキャンセル理由コード
		parentMap.put("svc_cancel_rsn_cd", String.valueOf(""));
		// 部品呼び出し → 割引サービス自動適用部品呼出CCマップ.対象契約識別コード
		parentMap.put("tg_kei_skbt_cd", String.valueOf("04"));

		outputMap.put("KKSV039505CC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：請求契約更新
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV0395WorkSC(X31SDataBeanAccess[] bean, HashMap outputMap) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}


		HashMap<String, Object> parentMap = new HashMap<String, Object>();


		// 料金グループコード
		parentMap.put("prc_grp_cd", bean[0].sendMessageString("料金グループコード", X31CWebConst.DATABEAN_GET_VALUE));
		
		
		outputMap.put("KKSV03956WORKSC", parentMap);
		
		return outputMap;
	}
	
	/* ++++++++++ v4.03.00 変更開始 ++++++++++ */
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039537CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		
		
		outputMap.put("KKSV039537CC", parentMap);
		
		return outputMap;
	}
	

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039538CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		// 異動区分
		parentMap.put("ido_div", String.valueOf(custbean.sendMessageString("異動区分", X31CWebConst.DATABEAN_GET_VALUE)));
		
		
		outputMap.put("KKSV039538CC", parentMap);
		
		return outputMap;
	}
	
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039539CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 異動予約解約マップ.申込明細番号
		parentMap.put("mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));

		// 部品呼び出し → 異動予約解約マップ.異動区分
		parentMap.put("ido_div", JKKCommonConst.IDO_DIV_VALUE_00009);
		
		
		outputMap.put("KKSV039539CC", parentMap);
		
		return outputMap;
	}
	/* ++++++++++ v4.03.00 変更完了 ++++++++++ */
	
/* ++++++++++ v5.00.00 追加開始 ++++++++++ */
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039540CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}
		
		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// 共通情報のマッピング
		parentMap.put("func_code", func_code);
		
		outputMap.put("KKSV039540CC", parentMap);
		
		return outputMap;
	}
/* ++++++++++ v5.00.00 追加終了 ++++++++++ */
	
	// ANK-2765-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039548CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}
		
		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// 共通情報のマッピング
		parentMap.put("func_code", func_code);
		
		// サービス契約番号
		parentMap.put("svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));
		
		outputMap.put("KKSV039548CC", parentMap);
		
		return outputMap;
	}
	// ANK-2765-00-00 ADD END
	// ANK-3949-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039549SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}
		
		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		X31SDataBeanAccess courseRk = bean[0].getDataBeanArray("コース履歴一覧リスト").getDataBean(0);
		
		// 共通情報のマッピング
		parentMap.put("func_code", func_code);
		
		// ＫＥＹ＿異動区分
		parentMap.put("key_ido_div", "00009");

		// ＫＥＹ＿異動予約詳細コード
		parentMap.put("key_ido_rsv_dtl_cd", "003");

		// ＫＥＹ＿申込明細番号
		parentMap.put("key_mskm_dtl_no", String.valueOf(courseRk.sendMessageString("申込明細番号", X31CWebConst.DATABEAN_GET_VALUE)));
		
		// ＫＥＹ＿異動予約状態コード
		parentMap.put("key_ido_rsv_stat_cd", "00,03");
		

		outputMap.put("KKSV039549SC", parentMap);
		
		return outputMap;
	}
	// ANK-3949-00-00 ADD END

	// ANK-3987-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039551CC(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("KKSV039551CC", parentMap);
		
		return outputMap;
	}
	// ANK-3987-00-00 ADD END
	
	// ANK-4287-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コース履歴
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setKKSV039552SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code) {
		
		if(bean == null){
			return null;
		}
		
		if(bean.length != 1){
			return null;
		}

		X31SDataBeanAccess custbean = bean[0].getDataBeanArray(JKKCommonConst.HKTGI_CUST_KEI_HKTGI_LIST).getDataBean(0);
		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put("func_code", func_code);

		// 部品呼び出し → 回線契約内機器オプション一覧照会マップ.ＫＥＹ＿サービス契約番号
		parentMap.put("key_svc_kei_no", String.valueOf(custbean.sendMessageString("サービス契約番号", X31CWebConst.DATABEAN_GET_VALUE)));

		outputMap.put("KKSV039552SC", parentMap);
						
		return outputMap;
	}
	// ANK-4287-00-00 ADD END
}
