/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CNSV0005_CNSV0005OPDBMapper
*	ソースファイル名：CNSV0005_CNSV0005OPDBMapper.java
*	作成者			：FJ
*	日付			：2011年08月24日
*＜機能概要＞
*	BP（コンテンツ料金調整登録(検索ボタン押下)）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00	2011/08/24	FJ		新規作成
*	ｖ4.00.00	2012/12/04	富士通)味岡	ST1-2012-0001018:SYSDATE使用箇所を運用日付使用に置き換え
*
**********************************************************************/
package eo.web.webview.mapping;

import java.text.ParseException;
import java.text.SimpleDateFormat;
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.util.JCNStringUtil;
import eo.common.util.JPCDateUtil;
import eo.common.util.JZMAdOutputEdit;
import eo.web.webview.common.JCNEditPrc;
import eo.web.webview.common.JCNWebCommon;
import eo.web.webview.common.JCNWebConst;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class CNSV0005_CNSV0005OPDBMapper {
	
	/**
	 * コンストラクタ
	 */
	public CNSV0005_CNSV0005OPDBMapper(){
	}
	

	// ANK-4346-00-00 DEL START
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コンテンツ料金調整登録
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setCNSV000501SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code, String opeDateDtm) {
//		
//		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);
//
//		// ＳＹＳＩＤ → コンテンツ契約一覧照会マップ.SYSID
//		parentMap.put("sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
//		// コンテンツサービスコード選択値 → コンテンツ契約一覧照会マップ.コンテンツサービスコード
//		parentMap.put("cont_svc_cd", bean[0].sendMessageString("コンテンツサービスコード選択値", X31CWebConst.DATABEAN_GET_VALUE));
//		// コンテンツ契約ステータス（契約中）値 → コンテンツ契約一覧照会マップ.コンテンツ契約状態契約中
//		parentMap.put("cont_kei_in", bean[0].sendMessageString("コンテンツ契約ステータス（契約中）値", X31CWebConst.DATABEAN_GET_VALUE));
//		// コンテンツ契約ステータス（契約終了）値 → コンテンツ契約一覧照会マップ.コンテンツ契約状態契約終了
//		parentMap.put("cont_kei_end", bean[0].sendMessageString("コンテンツ契約ステータス（契約終了）値", X31CWebConst.DATABEAN_GET_VALUE));
//		// コンテンツ契約ステータス（解約済）値 → コンテンツ契約一覧照会マップ.コンテンツ契約状態解約済
//		parentMap.put("cont_kei_out", bean[0].sendMessageString("コンテンツ契約ステータス（解約済）値", X31CWebConst.DATABEAN_GET_VALUE));
//		// 部品呼び出し → コンテンツ契約一覧照会マップ.対象年月日時分秒
//		// ST1-2012-0001018 2012/12/05 n.ajioka START
////		parentMap.put("target_dtm", JCCWebCommon.getSysDateTime());
//		parentMap.put("target_dtm", opeDateDtm);
//		// ST1-2012-0001018 2012/12/05 n.ajioka END
//
//		outputMap.put("CNSV000501SC", parentMap);
//						
//		return outputMap;
//	}
	// ANK-4346-00-00 DEL END

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV000502SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code, String opeDate) {
		
		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("cd_sbt_cd", String.valueOf("CD00510"));
		// 部品呼び出し → 課金訂正区分一覧照会マップ.基準日
		// ST1-2012-0001018 2012/12/05 n.ajioka START
//		parentMap.put("stdardymd", JCCWebCommon.getSysDate());
		parentMap.put("stdardymd", opeDate);
		// ST1-2012-0001018 2012/12/05 n.ajioka END

		outputMap.put("CNSV000502SC", parentMap);
						
		return outputMap;
	}

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV000503SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code, String opeDate) {
		
		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("cd_sbt_cd", String.valueOf("CD00511"));
		// 部品呼び出し → 課金訂正理由一覧照会マップ.基準日
		// ST1-2012-0001018 2012/12/05 n.ajioka START
//		parentMap.put("stdardymd", JCCWebCommon.getSysDate());
		parentMap.put("stdardymd", opeDate);
		// ST1-2012-0001018 2012/12/05 n.ajioka END

		outputMap.put("CNSV000503SC", parentMap);
						
		return outputMap;
	}

	// ANK-4346-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV000504SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code, String opeDate) {
		
		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);

		// ＳＹＳＩＤ → お客様一意照会マップ.SYSID
		parentMap.put("sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
		// 部品呼び出し → お客様一意照会マップ.世代登録年月日時分秒
		parentMap.put("gene_add_dtm", String.valueOf(""));
		// 部品呼び出し → お客様一意照会マップ.予約適用年月日
		parentMap.put("rsv_aply_ymd", opeDate);

		outputMap.put("CNSV000504SC", parentMap);
						
		return outputMap;
	}
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV000505CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code,String opeDate, String nowPageNum) {
		
		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マップ.SYSID
		parentMap.put("key_sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
		// オンライン運用年月日 → 課金契約者一覧照会CC.対象年月
		parentMap.put("key_chrg_trgt_ym", opeDate.substring(0,6));
		// ページ番号 → 課金契約者一覧照会CC.ページ番号
		parentMap.put("key_page", nowPageNum);
		// 1ページに表示する件数（7件） → 課金契約者一覧照会CC.1ページに表示する件数
		parentMap.put("key_per_page", "7");
		// コンテンツ契約情報要否（要） → 課金契約者一覧照会CC.コンテンツ契約情報要否
		parentMap.put("return_contract", "1");
		// 直近課金情報要否（不要） → 課金契約者一覧照会CC.直近課金情報要否
		parentMap.put("return_charge", "0");
		// 契約付加情報要否（要） → 課金契約者一覧照会CC.契約付加情報要否
		parentMap.put("return_contract_adds", "1");
		// 最大取得件数 → 課金契約者一覧照会CC.最大取得件数
		parentMap.put("max_search_num", "100");

		outputMap.put("CNSV000505CC", parentMap);
						
		return outputMap;
	}
	// ANK-4346-00-00 ADD END
	
	// ANK-4346-00-00 DEL START
//	/**
//	 * 下りマッピング
//	 * @param bean　[0]：コンテンツ料金調整登録
//	 * @param outputMap
//	 */
//	@SuppressWarnings("unchecked")
//	public X31SDataBeanAccess[] getCNSV000501SC(X31SDataBeanAccess[] bean, HashMap outputMap){
//
//		HashMap parentMap = null;
//		if(outputMap.containsKey("CNSV000501SC")){
//			parentMap = (HashMap)outputMap.get("CNSV000501SC");
//		}
//
//		ArrayList childList = null;
//		ArrayList svcList = null;
//		
//		
//		X31SDataBeanAccessArray listCNSV000501SC_cont_svc_kobet_list_cont_svc_detail_list = bean[0].getDataBeanArray("コンテンツサービス個別");
//		childList = null;
//		if(listCNSV000501SC_cont_svc_kobet_list_cont_svc_detail_list != null && parentMap != null && parentMap.containsKey("cont_kei_list")){
//			childList = (ArrayList)parentMap.get("cont_kei_list");
//			svcList = (ArrayList)parentMap.get("cont_svc_detail_list");
//
//			for(int i = 0, j = 0; i < childList.size(); ){
//				// 明細カウント初期化
//				X31SDataBeanAccess subbean = null;
//				if(listCNSV000501SC_cont_svc_kobet_list_cont_svc_detail_list.getCount() -1 >= i){
//					subbean = listCNSV000501SC_cont_svc_kobet_list_cont_svc_detail_list.getDataBean(i);
//				}else{
//					subbean = listCNSV000501SC_cont_svc_kobet_list_cont_svc_detail_list.addDataBean();
//				}
//				HashMap childMap = (HashMap)childList.get(i);
//				HashMap svcMap = (HashMap)svcList.get(i);
//				if (subbean == null) {
//					continue;
//				}
//
//				// コンテンツサービス個別処理
//				// コンテンツサービス個別.コンテンツサービス名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービス名
//				if (childMap != null) {
//					subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, (String)svcMap.get("cont_svc_nm"));
//				} else {
//					subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
//				}
//				// コンテンツサービス個別.コンテンツサービスコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービスコード
//				if (childMap != null) {
//					subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_svc_cd"));
//				} else {
//					subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//				}
//				
//				/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
//				// 比較用にコンテンツサービス名取得
//				String saveStr = (String)svcMap.get("cont_svc_nm");
//				X31SDataBeanAccessArray detailArray = subbean.getDataBeanArray("コンテンツ契約個別");
//				for (j = i; j <  childList.size(); j++, i++)
//				{
//					HashMap detailMap = (HashMap)childList.get(j);
//					HashMap diffSvcMap = (HashMap)svcList.get(j);
//					// コンテンツサービス名が異なれば、次のコンテンツサービス単位へ
//					if (!saveStr.equals((String)diffSvcMap.get("cont_svc_nm")))
//					{
//						break;
//					}
//					
//					// コンテンツ契約個別処理
//					X31SDataBeanAccess detail = detailArray.addDataBean();
//
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ契約番号
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_kei_no"));
//					} else {
//						detail.sendMessageString("コンテンツ契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツサービスコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービスコード
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_svc_cd"));
//					} else {
//						detail.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツサービス名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービス名
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_svc_nm"));
//					} else {
//						detail.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツコード
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツコード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_cd"));
//					} else {
//						detail.sendMessageString("コンテンツコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ外部コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ外部コード
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ外部コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_out_cd"));
//					} else {
//						detail.sendMessageString("コンテンツ外部コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ名
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_nm"));
//					} else {
//						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ契約開始年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ契約開始年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ契約開始年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_kei_sta_dtm"));
//					} else {
//						detail.sendMessageString("コンテンツ契約開始年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ契約終了年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ契約終了年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ契約終了年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_kei_end_dtm"));
//					} else {
//						detail.sendMessageString("コンテンツ契約終了年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ支払い方法コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ支払い方法コード
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ支払い方法コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_payway_cd"));
//					} else {
//						detail.sendMessageString("コンテンツ支払い方法コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.カード会社コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.カード会社コード
//					if (detailMap != null) {
//						detail.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_comp_cd"));
//					} else {
//						detail.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.カード会社名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.カード会社名
//					if (detailMap != null) {
//						detail.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_comp_nm"));
//					} else {
//						detail.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.クレジットカードＩＤ ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカードＩＤ
//					if (detailMap != null) {
//						detail.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_id"));
//					} else {
//						detail.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.クレジットカード番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカード番号
//					if (detailMap != null) {
//						detail.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_no"));
//					} else {
//						detail.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.クレジットカード有効期限 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカード有効期限
//					if (detailMap != null) {
//						detail.sendMessageString("クレジットカード有効期限", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_yk_kigen"));
//					} else {
//						detail.sendMessageString("クレジットカード有効期限", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.お客様名（ローマ字） ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.お客様名（ローマ字）
//					if (detailMap != null) {
//						detail.sendMessageString("お客様名（ローマ字）", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cust_nm_romaji"));
//					} else {
//						detail.sendMessageString("お客様名（ローマ字）", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.ＩＳＰ決済サービス契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.ＩＳＰ決済サービス契約番号
//					if (detailMap != null) {
//						detail.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("isp_kssai_svc_kei_no"));
//					} else {
//						detail.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.赤黒区分 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.赤黒区分
//					if (detailMap != null) {
//						detail.sendMessageString("赤黒区分", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("plmin_div"));
//					} else {
//						detail.sendMessageString("赤黒区分", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.課金額 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.課金額
//					if (detailMap != null) {
//						detail.sendMessageString("課金額", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_amnt"));
//					} else {
//						detail.sendMessageString("課金額", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ単価 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ単価
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ単価", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_tanka"));
//					} else {
//						detail.sendMessageString("コンテンツ単価", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.税区 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.税区
//					if (detailMap != null) {
//						detail.sendMessageString("税区", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("taxarea"));
//					} else {
//						detail.sendMessageString("税区", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.税率 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.税率
//					if (detailMap != null) {
//						detail.sendMessageString("税率", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("tax_rt"));
//					} else {
//						detail.sendMessageString("税率", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ購入数量 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ購入数量
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ購入数量", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_buy_cnt"));
//					} else {
//						detail.sendMessageString("コンテンツ購入数量", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ課金訂正区分 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ課金訂正区分
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("contchrgtesei_div"));
//					} else {
//						detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.売上減額 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.売上減額
//					if (detailMap != null) {
//						detail.sendMessageString("売上減額", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("sales_gen_amnt"));
//					} else {
//						detail.sendMessageString("売上減額", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.補償費 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.補償費
//					if (detailMap != null) {
//						detail.sendMessageString("補償費", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("compensation"));
//					} else {
//						detail.sendMessageString("補償費", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.課金契約番号枝番 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.課金契約番号枝番
//					if (detailMap != null) {
//						detail.sendMessageString("課金契約番号枝番", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_cont_kei_no_seq"));
//					} else {
//						detail.sendMessageString("課金契約番号枝番", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.課金契約訂正通番 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.課金契約訂正通番
//					if (detailMap != null) {
//						detail.sendMessageString("課金契約訂正通番", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_cont_kei_teise_seq"));
//					} else {
//						detail.sendMessageString("課金契約訂正通番", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.訂正契約番号枝番 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.訂正契約番号枝番
//					if (detailMap != null) {
//						detail.sendMessageString("訂正契約番号枝番", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("tesei_cont_kei_no_seq"));
//					} else {
//						detail.sendMessageString("訂正契約番号枝番", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.訂正契約訂正通番 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.訂正契約訂正通番
//					if (detailMap != null) {
//						detail.sendMessageString("訂正契約訂正通番", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("tesei_cont_chrg_teise_seq"));
//					} else {
//						detail.sendMessageString("訂正契約訂正通番", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					if (detailMap != null) {
//						detail.sendMessageString("課金状態コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_stat_cd"));
//					} else {
//						detail.sendMessageString("課金状態コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.最終契約更新年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.最終契約更新年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("最終契約更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("last_kei_upd_dtm"));
//					} else {
//						detail.sendMessageString("最終契約更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.最終課金更新年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.最終課金更新年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("最終課金更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("last_chrg_upd_dtm"));
//					} else {
//						detail.sendMessageString("最終課金更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.最終訂正更新年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.最終訂正更新年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("最終訂正更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("last_tesei_upd_dtm"));
//					} else {
//						detail.sendMessageString("最終訂正更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ種別コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ種別コード
//					if (childMap != null) {
//						detail.sendMessageString("コンテンツ種別コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_sbt_cd"));
//					} else {
//						detail.sendMessageString("コンテンツ種別コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツマスタ存在フラグ ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツマスタ存在フラグ
//					if (childMap != null) {
//						detail.sendMessageString("コンテンツマスタ存在フラグ", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_sonzai_flg"));
//					} else {
//						detail.sendMessageString("コンテンツマスタ存在フラグ", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.契約処理年月日 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.契約処理年月日
//					if (childMap != null) {
//						detail.sendMessageString("契約処理年月日", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("kei_tran_ymd"));
//					} else {
//						detail.sendMessageString("契約処理年月日", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_svc_cd")+(String)detailMap.get("cont_cd"));
//					} else {
//						detail.sendMessageString("コンテンツＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					if (j % 2 == 1)
//					{
//						detail.sendMessageString("ＣＳＳクラス名", X31CWebConst.DATABEAN_SET_VALUE, "odd");
//					}
//					else
//					{
//						detail.sendMessageString("ＣＳＳクラス名", X31CWebConst.DATABEAN_SET_VALUE, "even");
//					}
//					
//					// コンテンツサービス個別.コンテンツ契約個別.０５０電話番号
//					if (detailMap != null) {
//						detail.sendMessageString("０５０電話番号", X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatTelNo((String)detailMap.get("n_050_telno")));
//					} else {
//						detail.sendMessageString("０５０電話番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					
//					// 金額編集
//					JCNEditPrc.editPrice2(detailMap, detail);
//					HashMap parentMap2 = null;
//					if(outputMap.containsKey("CNSV000502SC")){
//						parentMap2 = (HashMap)outputMap.get("CNSV000502SC");
//					}
//					ArrayList childList2 = null;
//					X31SDataBeanAccessArray detailArray2 = detail.getDataBeanArray("課金訂正区分");
//					childList2 = (ArrayList)parentMap2.get("chrg_tesei_div_list");
//					// コンテンツ契約個別処理
//					X31SDataBeanAccess detail2 = detailArray2.addDataBean();
//					
//					detail2.sendMessageString("課金訂正区分名", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("課金訂正区分コード", X31CWebConst.DATABEAN_SET_VALUE, "");
//					
//					for (int k = 0; k <  childList2.size(); k++)
//					{
//						detail2 = detailArray2.addDataBean();
//						HashMap detailMap2 = (HashMap)childList2.get(k);
//						
//						// 対象月リスト.利用月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト
//						String work1 = (String)detailMap2.get("chrg_tesei_div_nm");
//						detail2.sendMessageString("課金訂正区分名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap2.get("chrg_tesei_div_nm"));
//						// 対象月リスト.対象年月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト（値）
//						String work2 = (String)detailMap2.get("chrg_tesei_div_cd");
//						detail2.sendMessageString("課金訂正区分コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap2.get("chrg_tesei_div_cd"));
//					}
//					
//					HashMap parentMap3 = null;
//					if(outputMap.containsKey("CNSV000503SC"))
//					{
//						parentMap3 = (HashMap)outputMap.get("CNSV000503SC");
//					}
//					ArrayList childList3 = null;
//					X31SDataBeanAccessArray detailArray3 = detail.getDataBeanArray("課金訂正理由");
//					childList3 = (ArrayList)parentMap3.get("chrg_tesei_rsn_list");
//					// コンテンツ契約個別処理
//					X31SDataBeanAccess detail3 = detailArray3.addDataBean();
//					
//					detail3.sendMessageString("課金訂正理由区分名", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail3.sendMessageString("課金訂正理由区分", X31CWebConst.DATABEAN_SET_VALUE, "");
//					
//					for (int k = 0; k <  childList3.size(); k++)
//					{
//						detail3 = detailArray3.addDataBean();
//						HashMap detailMap3 = (HashMap)childList3.get(k);
//						
//						// 対象月リスト.利用月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト
//						detail3.sendMessageString("課金訂正理由名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap3.get("chrg_tesei_rsn_cd"));
//						// 対象月リスト.対象年月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト（値）
//						detail3.sendMessageString("課金訂正理由コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap3.get("chrg_tesei_rsn_nm"));
//					}
//				}
//				/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
//			}
//		}
//
//		return bean;
//	}
	// ANK-4346-00-00 DEL END
	// ANK-4346-00-00 ADD START
	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV000504SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("CNSV000504SC")){
			parentMap = (HashMap)outputMap.get("CNSV000504SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listCNSV000501SC_cust_kobet_cust_list = bean[0].getDataBeanArray("お客様個別");
		childList = null;
		if(listCNSV000501SC_cust_kobet_cust_list != null && parentMap != null && parentMap.containsKey("cust_list")){
			childList = (ArrayList)parentMap.get("cust_list");

			for(int i = 0; i < childList.size(); i++){
				X31SDataBeanAccess subbean = null;
				if(listCNSV000501SC_cust_kobet_cust_list.getCount() -1 >= i){
					subbean = listCNSV000501SC_cust_kobet_cust_list.getDataBean(i);
				}else{
					subbean = listCNSV000501SC_cust_kobet_cust_list.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null) {
					continue;
				}
			
				// お客様個別.ｅｏＩＤ ← お客様一意照会マップ.お客様一覧照会リスト.eoID
				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("cust_kana"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様カナ氏名（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_kana"));
					/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
				} else {
					subbean.sendMessageString("お客様カナ氏名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.お客様氏名 ← お客様一意照会マップ.お客様一覧照会リスト.お客様名
				if (childMap != null) {
					subbean.sendMessageString("お客様氏名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_nm"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様氏名（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_nm"));
					/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
				} else {
					subbean.sendMessageString("お客様氏名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.契約者住所 ← お客様一意照会マップ.お客様一覧照会リスト.契約者住所コード
				if (childMap != null) {
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					String adWork = JZMAdOutputEdit.getPtn01(
							(String)childMap.get("cont_state_nm"),
							(String)childMap.get("cont_city_nm"),
							(String)childMap.get("cont_oaztsu_nm"),
							(String)childMap.get("cont_azcho_nm"),
							(String)childMap.get("cont_bnchigo"),
							(String)childMap.get("cont_adrttm"),
							(String)childMap.get("cont_adrrm"));
					subbean.sendMessageString("契約者住所", X31CWebConst.DATABEAN_SET_VALUE, adWork);
					subbean.sendMessageString("契約者住所（表示）", X31CWebConst.DATABEAN_SET_VALUE, adWork);
					/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
				} else {
					subbean.sendMessageString("契約者住所", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.お客様ステータス ← お客様一意照会マップ.お客様一覧照会リスト.お客様ステータス
				if (childMap != null) {
					subbean.sendMessageString("お客様ステータス", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_stat"));
				} else {
					subbean.sendMessageString("お客様ステータス", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.お客様ステータス名 ← お客様一意照会マップ.お客様一覧照会リスト.お客様ステータス名
				if (childMap != null) {
					subbean.sendMessageString("お客様ステータス名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_stat_nm"));
				} else {
					subbean.sendMessageString("お客様ステータス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.会員種別コード ← お客様一意照会マップ.お客様一覧照会リスト.会員種別コード
				if (childMap != null) {
					subbean.sendMessageString("会員種別コード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("member_sbt_cd"));
				} else {
					subbean.sendMessageString("会員種別コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.会員種別 ← お客様一意照会マップ.お客様一覧照会リスト.会員種別コード名
				if (childMap != null) {
					subbean.sendMessageString("会員種別", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("member_sbt_cd_nm"));
				} else {
					subbean.sendMessageString("会員種別", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.お客様誕生日 ← お客様一意照会マップ.お客様一覧照会リスト.お客様生年月日
				if (childMap != null) {
					subbean.sendMessageString("お客様誕生日", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_birthd"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様誕生日（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cust_birthd"));
					/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
				} else {
					subbean.sendMessageString("お客様誕生日", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}
	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ料金調整登録
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV000505CC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("CNSV000505CC")){
			parentMap = (HashMap)outputMap.get("CNSV000505CC");
		}

		ArrayList childList = null;
		ArrayList svcList = null;
		

		X31SDataBeanAccessArray listCNSV000505CC_cont_svc_kobet_list_cont_svc_detail_list = bean[0].getDataBeanArray("コンテンツサービス個別");
		childList = null;

		if(listCNSV000505CC_cont_svc_kobet_list_cont_svc_detail_list != null && parentMap != null && parentMap.containsKey("cont_sei_list")){
			childList = (ArrayList)parentMap.get("cont_sei_list");


			for(int i = 0, j = 0; i < childList.size(); ){
				// 明細カウント初期化
				X31SDataBeanAccess subbean = null;
				if(listCNSV000505CC_cont_svc_kobet_list_cont_svc_detail_list.getCount() -1 >= i){
					subbean = listCNSV000505CC_cont_svc_kobet_list_cont_svc_detail_list.getDataBean(i);
				}else{
					subbean = listCNSV000505CC_cont_svc_kobet_list_cont_svc_detail_list.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);

				if (subbean == null) {
					continue;
				}

				// コンテンツサービス個別処理
				// コンテンツサービス個別.コンテンツサービス名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービス名
				if (childMap != null) {
					subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_svc_nm"));

				} else {
					subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// コンテンツサービス個別.コンテンツサービスコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービスコード
				if (childMap != null) {
					subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_svc_cd"));
				} else {
					subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				
				String saveStr = (String)childMap.get("cont_svc_nm");
				X31SDataBeanAccessArray detailArray = subbean.getDataBeanArray("コンテンツ契約個別");
				for (j = i; j <  childList.size(); j++, i++)
				{
					HashMap detailMap = (HashMap)childList.get(j);

					// コンテンツサービス名が異なれば、次のコンテンツサービス単位へ

					if (!saveStr.equals((String)detailMap.get("cont_svc_nm")))

					{
						break;
					}
					
					// コンテンツ契約個別処理
					X31SDataBeanAccess detail = detailArray.addDataBean();

					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ契約番号
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("key_contract_no"));
					} else {
						detail.sendMessageString("コンテンツ契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツサービスコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービスコード
					if (detailMap != null) {
						detail.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_svc_cd"));
					} else {
						detail.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツサービス名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツサービス名
					if (detailMap != null) {
						detail.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_svc_nm"));
					} else {
						detail.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツコード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツコード
					if (detailMap != null) {
						detail.sendMessageString("コンテンツコード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_cd"));
					} else {
						detail.sendMessageString("コンテンツコード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ外部コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ外部コード
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ外部コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_out_cd"));
					} else {
						detail.sendMessageString("コンテンツ外部コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ名
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_nm"));
					} else {
						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ契約開始年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ契約開始年月日時分秒
					if (detailMap != null) {
						String contractStartDate = transFormat((String)detailMap.get("contract_start_date"));
						detail.sendMessageString("コンテンツ契約開始年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, contractStartDate);
					} else {
						detail.sendMessageString("コンテンツ契約開始年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ支払い方法コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ支払い方法コード
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ支払い方法コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_payway_cd"));
					} else {
						detail.sendMessageString("コンテンツ支払い方法コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.カード会社コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.カード会社コード
					if (detailMap != null) {
						detail.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_comp_cd"));
					} else {
						detail.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.カード会社名 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.カード会社名
					if (detailMap != null) {
						detail.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_comp_nm"));
					} else {
						detail.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.クレジットカードＩＤ ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカードＩＤ
					if (detailMap != null) {
						detail.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_id"));
					} else {
						detail.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.クレジットカード番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカード番号
					if (detailMap != null) {
						detail.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_no"));
					} else {
						detail.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.クレジットカード有効期限 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカード有効期限
					if (detailMap != null) {
						detail.sendMessageString("クレジットカード有効期限", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("crecard_yk_kigen"));
					} else {
						detail.sendMessageString("クレジットカード有効期限", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}

					// コンテンツサービス個別.コンテンツ契約個別.ＩＳＰ決済サービス契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.ＩＳＰ決済サービス契約番号
					if (detailMap != null) {
						detail.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("isp_kssai_svc_kei_no"));
					} else {
						detail.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.課金額 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.課金額
					if (detailMap != null) {
						detail.sendMessageString("課金額", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_amnt"));
					} else {
						detail.sendMessageString("課金額", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ単価 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ単価
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ単価", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_tanka"));
					} else {
						detail.sendMessageString("コンテンツ単価", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.税率 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.税率
					if (detailMap != null) {
						detail.sendMessageString("税率", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("tax_rt"));
					} else {
						detail.sendMessageString("税率", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ購入数量 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ購入数量
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ購入数量", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_buy_cnt"));
					} else {
						detail.sendMessageString("コンテンツ購入数量", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ課金訂正区分 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ課金訂正区分
					if (detailMap != null) {
						// ANK-4346-00-00 MOD START
//						detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("contchrgtesei_div"));
						String contchrgteseiDiv = (String)detailMap.get("contchrgtesei_div");
						if("1".equals(contchrgteseiDiv))
						{
							detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, JCNWebConst.CHRG_CANSEL_KBN);
						}
						// 取消の場合、区分値 1:売上減 を設定する
						else if("2".equals(contchrgteseiDiv))
						{
							detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, JCNWebConst.SALES_GEN_KBN);
						}
						else
						{
							detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, "");
						}
						
						// ANK-4346-00-00 MOD END
					} else {
						detail.sendMessageString("コンテンツ課金訂正区分", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.売上減額 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.売上減額
					if (detailMap != null) {
						detail.sendMessageString("売上減額", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("discount_amount"));
					} else {
						detail.sendMessageString("売上減額", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.課金状態コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.課金状態コード
					if (detailMap != null) {
						detail.sendMessageString("課金状態コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("chrg_stat_cd"));
					} else {
						detail.sendMessageString("課金状態コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					if (detailMap != null) {
						detail.sendMessageString("コンテンツＩＤ", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_cd"));
					} else {
						detail.sendMessageString("コンテンツＩＤ", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					if (j % 2 == 1)
					{
						detail.sendMessageString("ＣＳＳクラス名", X31CWebConst.DATABEAN_SET_VALUE, "odd");
					}
					else
					{
						detail.sendMessageString("ＣＳＳクラス名", X31CWebConst.DATABEAN_SET_VALUE, "even");
					}
					
					// コンテンツサービス個別.コンテンツ契約個別.０５０電話番号
					if (detailMap != null) {
						detail.sendMessageString("０５０電話番号", X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatTelNo((String)detailMap.get("n_050_telno")));
					} else {
						detail.sendMessageString("０５０電話番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}

					if(detailMap != null)
					{
						if(!JCNStringUtil.isNullBlank((String)detailMap.get("contchrgtesei_div")))
						{
							// 訂正情報あり
							detail.sendMessageString("訂正判定フラグ", X31CWebConst.DATABEAN_SET_VALUE, "0");
						}else {
							// 訂正情報なし
							detail.sendMessageString("訂正判定フラグ", X31CWebConst.DATABEAN_SET_VALUE, "1");
						}
						
					}else {
						detail.sendMessageString("訂正判定フラグ","");
					}

					
					// 金額編集
					JCNEditPrc.editPrice2(detailMap, detail);
					
					HashMap parentMap2 = null;
					if(outputMap.containsKey("CNSV000502SC"))
					{
						parentMap2 = (HashMap)outputMap.get("CNSV000502SC");
					}
					ArrayList childList2 = null;
					X31SDataBeanAccessArray detailArray2 = detail.getDataBeanArray("課金訂正区分");
					childList2 = (ArrayList)parentMap2.get("chrg_tesei_div_list");
					// コンテンツ契約個別処理
					X31SDataBeanAccess detail2 = detailArray2.addDataBean();
					detail2.sendMessageString("課金訂正区分名", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("課金訂正区分コード", X31CWebConst.DATABEAN_SET_VALUE, "");
					
					for (int k = 0; k <  childList2.size(); k++)
					{
						detail2 = detailArray2.addDataBean();
						HashMap detailMap2 = (HashMap)childList2.get(k);
						
						// 対象月リスト.利用月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト
						String work1 = (String)detailMap2.get("chrg_tesei_div_nm");
						detail2.sendMessageString("課金訂正区分名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap2.get("chrg_tesei_div_nm"));
						// 対象月リスト.対象年月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト（値）
						String work2 = (String)detailMap2.get("chrg_tesei_div_cd");
						detail2.sendMessageString("課金訂正区分コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap2.get("chrg_tesei_div_cd"));
					}
					
					HashMap parentMap3 = null;
					if(outputMap.containsKey("CNSV000503SC"))
					{
						parentMap3 = (HashMap)outputMap.get("CNSV000503SC");
					}
					ArrayList childList3 = null;
					X31SDataBeanAccessArray detailArray3 = detail.getDataBeanArray("課金訂正理由");
					childList3 = (ArrayList)parentMap3.get("chrg_tesei_rsn_list");
					// コンテンツ契約個別処理
					X31SDataBeanAccess detail3 = detailArray3.addDataBean();
					
					detail3.sendMessageString("課金訂正理由区分名", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail3.sendMessageString("課金訂正理由区分", X31CWebConst.DATABEAN_SET_VALUE, "");
					
					for (int k = 0; k <  childList3.size(); k++)
					{
						detail3 = detailArray3.addDataBean();
						HashMap detailMap3 = (HashMap)childList3.get(k);
						
						// 対象月リスト.利用月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト
						detail3.sendMessageString("課金訂正理由名", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap3.get("chrg_tesei_rsn_cd"));
						// 対象月リスト.対象年月 ← GS明細一覧照会利用対象月取得マップ.GS明細利用対象月取得明細.利用月リスト（値）
						detail3.sendMessageString("課金訂正理由コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap3.get("chrg_tesei_rsn_nm"));
					}
				}
			}
		}

		return bean;
	}
	/**
	 * yyyy/MM/dd hh:mm:ss 形式の文字列を取得する
	 * 
	 * @param str
	 *            yyyyMMddhhmmss形式の文字列
	 * @return yyyy/MM/dd hh:mm:ss 形式の文字列
	 */
	public static String transFormat(String str)
	{
		if(!JCNStringUtil.isNullBlank(str))
		{
			String workDate1;
			workDate1 = str.replaceAll("[^0-9]", "");
			
			return  workDate1.substring(0, 14);
		}
		
		return str;
	}
	// ANK-4346-00-00 ADD END

}