/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CNSV0011_CNSV0011OPDBMapper
*	ソースファイル名：CNSV0011_CNSV0011OPDBMapper.java
*	作成者			：FJ
*	日付			：2011年08月27日
*＜機能概要＞
*	BP（コンテンツ支払い方法変更(初期表示)）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	ｖ1.00.00	2011/08/27	富士通)新規作成
*	ｖ4.00.00	2012/12/06	富士通)味岡	ST1-2012-0001018:SYSDATE使用箇所を運用日付使用に置き換え
*	ｖ20.00.00	2015/11/13	富士通)清原	【ANK-2565-00-00】クレジットカード番号預かりサービス導入（Step3：預かり番号化）
*	ｖ20.00.01	2016/01/05	富士通)清原	【ANK-2565-05-00】【案件内仕変】コンテンツ支払方法変更画面の表示文言変更
*	ｖ65.00.00	2024/01/27	富士通)藤本涼【ANK-4346-00-00】【eo定期】CCMG再構築対応
*
**********************************************************************/
package eo.web.webview.mapping;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
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.JCNStrConst;
import eo.common.util.JCNStringUtil;
import eo.common.util.JZMAdOutputEdit;
import eo.web.webview.common.JCNWebCommon;
import eo.web.webview.common.JCNWebConst;

/**
 * DataBean-BPマッピングをする。
 * 
 */
public class CNSV0011_CNSV0011OPDBMapper {
	
	/**
	 * コンストラクタ
	 */
	public CNSV0011_CNSV0011OPDBMapper(){
	}
	

	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV001101SC(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(""));
		// 部品呼び出し → お客様一意照会マップ.予約適用年月日
		// ST1-2012-0001018 2012/12/06 n.ajioka START
//		parentMap.put("rsv_aply_ymd", JCCWebCommon.getSysDate());
		parentMap.put("rsv_aply_ymd", opeDate);
		// ST1-2012-0001018 2012/12/05 n.ajioka END

		outputMap.put("CNSV001101SC", parentMap);
						
		return outputMap;
	}

	// ANK-4346-00-00 DEL START
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コンテンツ支払い方法変更
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setCNSV001102SC(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);
//
//		// ＳＹＳＩＤ → コンテンツ契約一覧照会マップ.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", String.valueOf("0"));
//		// 部品呼び出し → コンテンツ契約一覧照会マップ.コンテンツ契約状態契約終了
//		parentMap.put("cont_kei_end", String.valueOf("0"));
//		// 部品呼び出し → コンテンツ契約一覧照会マップ.コンテンツ契約状態解約済
//		parentMap.put("cont_kei_out", String.valueOf("0"));
//
//		outputMap.put("CNSV001102SC", parentMap);
//						
//		return outputMap;
//	}
//
//	/**
//	 * 上りマッピングをする
//	 * @param bean　[0]：コンテンツ支払い方法変更
//	 * @param outputMap
//	 * @param func_code　機能コード
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setCNSV001103SC(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);
//
//		// ＳＹＳＩＤ → コンテンツサービス一覧照会マップ.SYSID
//		parentMap.put("sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));
//
//		outputMap.put("CNSV001103SC", parentMap);
//						
//		return outputMap;
//	}
	// ANK-4346-00-00 DEL END
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSC001104SC(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);

		// ＳＹＳＩＤ → 支払方法入力支援.KEYSYSID
		parentMap.put("key_sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));

		outputMap.put("CNSC001104SC", parentMap);
						
		return outputMap;
	}
	
	// ANK-4346-00-00 ADD START
	/**
	 * 上りマッピングをする
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 * @param func_code　機能コード
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV001101CC(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);

		// ＳＹＳＩＤ → 契約一覧情報変更.SYSID
		parentMap.put("sysid", bean[0].sendMessageString("ＳＹＳＩＤ", X31CWebConst.DATABEAN_GET_VALUE));

		// "6,5" (コンテンツサービスID,コンテンツID）→ 契約一覧情報変更.ソート順
		parentMap.put("sort", "6,5");

		// "0,0" (昇順 ,昇順)→ 契約一覧情報変更.昇順/降順
		parentMap.put("sort_order", "0,0");

		// "0" (契約中(強制解約予告含む)) → 契約一覧情報変更.契約状態フラグ
		parentMap.put("cont_kei_stat_cd", "0");

		// "0" (自動継続) → 契約一覧情報変更.非継続フラグ
		parentMap.put("uncontinue_flg", "0");

		// "1" (有料) → 契約一覧情報変更.料金フラグ
		parentMap.put("price_flg", "1");

		// "1" (要) → 契約一覧情報変更.コンテンツ契約情報要否
		parentMap.put("return_contract", "1");

		// "0" (不要) → 契約一覧情報変更.直近課金情報要否
		parentMap.put("return_charge", "0");

		// "1" (要) → 契約一覧情報変更.契約付加情報要否
		parentMap.put("return_contract_adds", "1" );

		// 最大取得件数 → 最大取得件数
		parentMap.put("max_search_num", "100" );

		outputMap.put("CNSV001101CC", parentMap);
						
		return outputMap;
	}
	// ANK-4346-00-00 ADD END

	
	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV001101SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		if(outputMap.containsKey("CNSV001101SC")){
			parentMap = (HashMap)outputMap.get("CNSV001101SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listCNSV001101SC_cust_kobet_list_cust_list = bean[0].getDataBeanArray("お客様個別");
		childList = null;
		if(listCNSV001101SC_cust_kobet_list_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(listCNSV001101SC_cust_kobet_list_cust_list.getCount() -1 >= i){
					subbean = listCNSV001101SC_cust_kobet_list_cust_list.getDataBean(i);
				}else{
					subbean = listCNSV001101SC_cust_kobet_list_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("cont_cust_nm"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様氏名（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_cust_nm"));
					/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
				} else {
					subbean.sendMessageString("お客様氏名", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				// お客様個別.お客様カナ氏名 ← お客様一意照会マップ.お客様一覧照会リスト.コンテンツお客様カナ名
				if (childMap != null) {
					subbean.sendMessageString("お客様カナ氏名", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_cust_kana"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様カナ氏名（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_cust_kana"));
					/* ++++++++++ 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("cont_cust_birthd"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
					subbean.sendMessageString("お客様誕生日（表示）", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("cont_cust_birthd"));
					/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
				} else {
					subbean.sendMessageString("お客様誕生日", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}


		return bean;
	}
	// ANK-4346-00-00 DEL START
//	/**
//	 * 下りマッピング
//	 * @param bean　[0]：コンテンツ支払い方法変更
//	 * @param outputMap
//	 */
//	@SuppressWarnings("unchecked")
//	public X31SDataBeanAccess[] getCNSV001102SC(X31SDataBeanAccess[] bean, HashMap outputMap,boolean authFlg){
//
//		HashMap parentMap = null;
//		if(outputMap.containsKey("CNSV001102SC")){
//			parentMap = (HashMap)outputMap.get("CNSV001102SC");
//		}
//
//		ArrayList childList = null;
//		ArrayList svcList = null;
//		
//
//		X31SDataBeanAccessArray listCNSV001102SC_cont_svc_kobet_list_cont_svc_detail_list = bean[0].getDataBeanArray("コンテンツサービス個別");
//		childList = null;
//		if(listCNSV001102SC_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");
//
//			/* ++++++++++ v1.00.00 追加開始 ++++++++++ */
//			for(int i = 0, j = 0; i < childList.size(); ){
//				// 明細カウント初期化
//				X31SDataBeanAccess subbean = null;
//				if(listCNSV001102SC_cont_svc_kobet_list_cont_svc_detail_list.getCount() -1 >= i){
//					subbean = listCNSV001102SC_cont_svc_kobet_list_cont_svc_detail_list.getDataBean(i);
//				}else{
//					subbean = listCNSV001102SC_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());
//				}
//				
//				// 比較用にコンテンツサービス名取得
//				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_nm"));
//					} else {
//						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ種別コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ種別コード
//					if (detailMap != null) {
//						detail.sendMessageString("コンテンツ種別コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_sbt_cd"));
//					} 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());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.クレジットカードＩＤ ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカードID
//					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());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.ＩＳＰ決済サービス契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.ISP決済サービス契約番号
//					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());
//					}
//					// 支払い方法表示用編集
//					String payway = "";
//					if (detailMap.get("cont_payway_cd").equals(JCNWebConst.PAYWAY_CD_CRECA))
//					{
//						String comp_nm = (String)detailMap.get("crecard_comp_nm");
//						String crecard_no = (String)detailMap.get("crecard_no");
//						if (comp_nm.length() == 0 && crecard_no.length() == 0)
//						{
//							// ブランクを出力
//							payway = "";
//						}
//						else
//						{
//							// クレジットカード決済
////							ｖ20.00.00 Mod Start
////							payway = "クレジットカード　" + (String)detailMap.get("crecard_comp_nm") + "　" + JCNWebCommon.crecardNoEdit((String)detailMap.get("crecard_no"));
//							payway = JCNWebCommon.editCreditCard((String)detailMap.get("crecard_comp_nm"),
//																(String)detailMap.get("crecard_no"),
//																(String)detailMap.get("crecard_yk_kigen"),
//																(String)detailMap.get("crecard_no_azkri_id"));
////							ｖ20.00.00 Mod End
//							
//							if(!authFlg)
//							{
//								payway = JCNStrConst.MASK_CARD_NO;
//							}
//						}
//					}
//					else if (detailMap.get("cont_payway_cd").equals(JCNWebConst.PAYWAY_CD_ISP))
//					{
//						// ISP決済
//						payway = "プロバイダ料金に合算【お客さまID：" + (String)detailMap.get("isp_kssai_svc_kei_no") + "】";
//					}
//					else
//					{
//						payway = "";
//					}
//					if (childMap != null) {
//						detail.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, payway);
//					} else {
//						detail.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, new String());
//					}
//					// コンテンツサービス個別.コンテンツ契約個別.更新年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.更新年月日時分秒
//					if (detailMap != null) {
//						detail.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_upd_dtm"));
//					} 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());
//					}
//					detail.sendMessageString("行番号", X31CWebConst.DATABEAN_SET_VALUE, Integer.toString(j));
//
//					HashMap parentMap2 = null;
//					if(outputMap.containsKey("CNSC001104SC"))
//					{
//						parentMap2 = (HashMap)outputMap.get("CNSC001104SC");
//					}
//					ArrayList childList2 = null;
//					X31SDataBeanAccessArray detailArray2 = detail.getDataBeanArray("コンテンツ支払方法");
//					childList2 = (ArrayList)parentMap2.get("payway_insuport_list");
//					// 支払い方法入力支援
//					X31SDataBeanAccess detail2 = detailArray2.addDataBean();
//					
//					detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("支払い方法番号", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, "");
//					detail2.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, "");
//					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);
//						
//						// 支払い方法表示用編集
//						String payway2 = "";
//						if (detailMap2.get("payway_input_shien_cd").equals(JCNWebConst.PAYWAY_CD_CRECA))
//						{
//							String comp_nm = (String)detailMap2.get("crecard_comp_nm");
//							String crecard_no = (String)detailMap2.get("crecard_no");
//							if (comp_nm.length() == 0 && crecard_no.length() == 0)
//							{
//								// 一覧から除外する
//								continue;
//							}
//							// クレジットカード決済
////							ｖ20.00.01 Mod Start
////							ｖ20.00.00 Mod Start
////							payway2 = "クレジットカード　" + (String)detailMap2.get("crecard_comp_nm") + "　" + JCNWebCommon.crecardNoEdit((String)detailMap2.get("crecard_no"));
////							payway2 = JCNWebCommon.editCreditCard((String)detailMap2.get("crecard_comp_nm"),
////																(String)detailMap2.get("crecard_no"),
////																(String)detailMap2.get("crecard_yk_kigen"),
////																(String)detailMap2.get("crecard_no_azkri_id"));
//							payway2 = JCNWebCommon.editNextMonthCreditCard((String)detailMap2.get("crecard_comp_nm"),
//									(String)detailMap2.get("crecard_no"),
//									(String)detailMap2.get("crecard_yk_kigen"),
//									(String)detailMap2.get("crecard_no_azkri_id"));
////							ｖ20.00.00 Mod End
////							ｖ20.00.01 Mod End
//							if(!authFlg)
//							{
//								payway2 = JCNStrConst.MASK_CARD_NO;
//							}
//						}
//						else if (detailMap2.get("payway_input_shien_cd").equals(JCNWebConst.PAYWAY_CD_ISP))
//						{
//							// ISP決済
//							payway2 = "プロバイダ料金に合算【お客さまID：" + (String)detailMap2.get("isp_kssai_svc_kei_no") + "】";
//						}
//						else
//						{
//							payway2 = "";
//						}
//						if (childMap != null)
//						{
//							detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(k + 1) + "." + payway2);
//						}
//						else
//						{
//							detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, new String());
//						}
//						detail2.sendMessageString("支払い方法番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("payway_no"));
//						detail2.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("payway_input_shien_cd"));
//						detail2.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_id"));
//						detail2.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_no"));
//						detail2.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_comp_cd"));
//						detail2.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_comp_nm"));
//						detail2.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("isp_kssai_svc_kei_no"));
//						detail2.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("pay_upd_dtm"));
//					}
//				}
//				/* ++++++++++ v1.00.00 追加終了 ++++++++++ */
//			}
//		}
//
//		return bean;
//	}
	// ANK-4346-00-00 DEL END
	
	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV001103SC(X31SDataBeanAccess[] bean, HashMap outputMap){

		HashMap parentMap = null;
		// ANK-4346-00-00 MOD START
//		if(outputMap.containsKey("CNSV001103SC")){
//			parentMap = (HashMap)outputMap.get("CNSV001103SC");
//		}
		if(outputMap.containsKey("CNSV001101CC")){
			parentMap = (HashMap)outputMap.get("CNSV001101CC");
		}
		// ANK-4346-00-00 MOD END

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listCNSV001103SC_cont_svc_nm_list_cont_svc_list = bean[0].getDataBeanArray("コンテンツサービス名");
		childList = null;
		if(listCNSV001103SC_cont_svc_nm_list_cont_svc_list != null && parentMap != null && parentMap.containsKey("cont_svc_list")){
			childList = (ArrayList)parentMap.get("cont_svc_list");

			X31SDataBeanAccess subbean = null;
			subbean = listCNSV001103SC_cont_svc_nm_list_cont_svc_list.getDataBean(0);

			// 一つ目はブランク設定
			// コンテンツサービス名.コンテンツサービスコード ← ""
			subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_ADD_VALUE, "");
			// コンテンツサービス名.コンテンツサービス名 ← ""
			subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_ADD_VALUE, "");
			for(int i = 0; i < childList.size(); i++){
				HashMap childMap = (HashMap)childList.get(i);

				// コンテンツサービス名.コンテンツサービスコード ← コンテンツサービス一覧照会マップ.コンテンツサービス一覧照会リスト.コンテンツサービスコード
				subbean.sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_ADD_VALUE, (String)childMap.get("cont_svc_cd"));
				// コンテンツサービス名.コンテンツサービス名 ← コンテンツサービス一覧照会マップ.コンテンツサービス一覧照会リスト.コンテンツサービス名
				subbean.sendMessageString("コンテンツサービス名", X31CWebConst.DATABEAN_ADD_VALUE, String.valueOf(i+1) + "." + ((String)childMap.get("cont_svc_nm")));
			}
		}

		return bean;
	}


	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV001105SC(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		if(outputMap.containsKey("CNSC001104SC"))
		{
			parentMap = (HashMap)outputMap.get("CNSC001104SC");
		}

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listCNSV001105SC_check_select_payway_payway_insuport_list = bean[0].getDataBeanArray("支払方法チェック用");
		childList = null;
		if(listCNSV001105SC_check_select_payway_payway_insuport_list != null && parentMap != null && parentMap.containsKey("payway_insuport_list"))
		{
			childList = (ArrayList)parentMap.get("payway_insuport_list");

			for(int i = 0; i < childList.size(); i++)
			{
				X31SDataBeanAccess subbean = null;
				if(listCNSV001105SC_check_select_payway_payway_insuport_list.getCount() -1 >= i)
				{
					subbean = listCNSV001105SC_check_select_payway_payway_insuport_list.getDataBean(i);
				}
				else
				{
					subbean = listCNSV001105SC_check_select_payway_payway_insuport_list.addDataBean();
				}
				HashMap childMap = (HashMap)childList.get(i);
				if (subbean == null)
				{
					continue;
				}
				if (childMap != null) {
					subbean.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("payway_input_shien_cd"));
				} else {
					subbean.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				if (childMap != null) {
					subbean.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("crecard_no"));
				} else {
					subbean.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				if (childMap != null) {
					subbean.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("isp_kssai_svc_kei_no"));
				} else {
					subbean.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}
		return bean;
	}
	

	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV001106SC(X31SDataBeanAccess[] bean, HashMap outputMap)
	{
		HashMap parentMap = null;
		// ANK-4346-00-00 MOD START
//		if(outputMap.containsKey("CNSV001102SC"))
//		{
//			parentMap = (HashMap)outputMap.get("CNSV001102SC");
//		}
		if(outputMap.containsKey("CNSV001101CC"))
		{
			parentMap = (HashMap)outputMap.get("CNSV001101CC");
		}
		// ANK-4346-00-00 MOD END

		ArrayList childList = null;
		

		X31SDataBeanAccessArray listCNSV001106SC_check_list_payway_cont_kei_list = bean[0].getDataBeanArray("コンテンツ支払方法チェック用");
		childList = null;
		if(listCNSV001106SC_check_list_payway_cont_kei_list != null && parentMap != null && parentMap.containsKey("cont_kei_list"))
		{
			childList = (ArrayList)parentMap.get("cont_kei_list");

			for(int i = 0; i < childList.size(); i++)
			{
				X31SDataBeanAccess subbean = null;
				if(listCNSV001106SC_check_list_payway_cont_kei_list.getCount() -1 >= i)
				{
					subbean = listCNSV001106SC_check_list_payway_cont_kei_list.getDataBean(i);
				}
				else
				{
					subbean = listCNSV001106SC_check_list_payway_cont_kei_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_payway_cd"));
				} else {
					subbean.sendMessageString("コンテンツ支払い方法コード", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				if (childMap != null) {
					subbean.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("crecard_no"));
				} else {
					subbean.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
				if (childMap != null) {
					subbean.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get("isp_kssai_svc_kei_no"));
				} else {
					subbean.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE, new String());
				}
			}
		}
		return bean;
	}
	// ANK-4346-00-00 MOD END
	// ANK-4346-00-00 ADD START
	/**
	 * 下りマッピング
	 * @param bean　[0]：コンテンツ支払い方法変更
	 * @param outputMap
	 * @throws ParseException 
	 */
	@SuppressWarnings("unchecked")
	public X31SDataBeanAccess[] getCNSV001101CC(X31SDataBeanAccess[] bean, HashMap outputMap,boolean authFlg) throws ParseException{

		HashMap parentMap = null;
		if(outputMap.containsKey("CNSV001101CC")){
			parentMap = (HashMap)outputMap.get("CNSV001101CC");
		}

		ArrayList childList = null;
		ArrayList memberList = null;
		

		X31SDataBeanAccessArray listCNSV001101CC_cont_svc_kobet_list_cont_svc_detail_list = bean[0].getDataBeanArray("コンテンツサービス個別");
		childList = null;
		if(listCNSV001101CC_cont_svc_kobet_list_cont_svc_detail_list != null && parentMap != null && parentMap.containsKey("cont_kei_list")){
			childList = (ArrayList)parentMap.get("cont_kei_list");
			memberList = (ArrayList)parentMap.get("member_list");

			for(int i = 0, j = 0; i < childList.size(); ){
				// 明細カウント初期化
				X31SDataBeanAccess subbean = null;
				if(listCNSV001101CC_cont_svc_kobet_list_cont_svc_detail_list.getCount() -1 >= i){
					subbean = listCNSV001101CC_cont_svc_kobet_list_cont_svc_detail_list.getDataBean(i);
				}else{
					subbean = listCNSV001101CC_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("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_nm"));
					} else {
						detail.sendMessageString("コンテンツ名", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.コンテンツ種別コード ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.コンテンツ種別コード
					if (detailMap != null) {
						detail.sendMessageString("コンテンツ種別コード", X31CWebConst.DATABEAN_SET_VALUE, (String)detailMap.get("cont_sbt_cd"));
					} 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_ali"));
					} else {
						detail.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.クレジットカードＩＤ ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.クレジットカードID
					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());
					}
					// コンテンツサービス個別.コンテンツ契約個別.ＩＳＰ決済サービス契約番号 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.ISP決済サービス契約番号
					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());
					}
					// 支払い方法表示用編集
					String payway = "";
					if (detailMap.get("cont_payway_cd").equals(JCNWebConst.PAYWAY_CD_CRECA))
					{
						String comp_nm = (String)detailMap.get("crecard_comp_ali");
						String crecard_no = (String)detailMap.get("crecard_no");
						if (comp_nm.length() == 0 && crecard_no.length() == 0)
						{
							// ブランクを出力
							payway = "";
						}
						else
						{
							// クレジットカード決済96*
							payway = JCNWebCommon.editCreditCard((String)detailMap.get("crecard_comp_ali"),
																(String)detailMap.get("crecard_no"),
																(String)detailMap.get("crecard_yk_kigen"),
																(String)detailMap.get("crecard_no_azkri_id"));
							
							if(!authFlg)
							{
								payway = JCNStrConst.MASK_CARD_NO;
							}
						}
					}
					else if (detailMap.get("cont_payway_cd").equals(JCNWebConst.PAYWAY_CD_ISP))
					{
						// ISP決済
						payway = "プロバイダ料金に合算【お客さまID：" + (String)detailMap.get("isp_kssai_svc_kei_no") + "】";
					}
					else
					{
						payway = "";
					}
					if (childMap != null) {
						detail.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, payway);
					} else {
						detail.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, new String());
					}
					// コンテンツサービス個別.コンテンツ契約個別.更新年月日時分秒 ← コンテンツ契約一覧照会マップ.コンテンツ契約一覧照会リスト.更新年月日時分秒
					if (detailMap != null) {
						String contractEndDate = (String)detailMap.get("upd_dtm");
						String contractEndYMD = JCNStrConst.S_BLANK;
						if(!JCNStringUtil.isNullEmpty(contractEndDate))
						{
							// 年月日　フォーマット
							contractEndYMD = contractEndDate.replaceAll("[^0-9]", "");
							contractEndYMD = contractEndYMD.substring(0,14);
							// ANK-4346-00-00 MOD START
//							detail.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, "");
							detail.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, contractEndYMD);
							// ANK-4346-00-00 MOD END
						}
						else
						{
							detail.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE, new String());
						}
						
					} 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());
					}
					detail.sendMessageString("行番号", X31CWebConst.DATABEAN_SET_VALUE, Integer.toString(j));

					HashMap parentMap2 = null;
					if(outputMap.containsKey("CNSC001104SC"))
					{
						parentMap2 = (HashMap)outputMap.get("CNSC001104SC");
					}
					ArrayList childList2 = null;
					X31SDataBeanAccessArray detailArray2 = detail.getDataBeanArray("コンテンツ支払方法");
					childList2 = (ArrayList)parentMap2.get("payway_insuport_list");
					// 支払い方法入力支援
					X31SDataBeanAccess detail2 = detailArray2.addDataBean();
					
					detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("支払い方法番号", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE, "");
					detail2.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE, "");
					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);
						
						// 支払い方法表示用編集
						String payway2 = "";
						if (detailMap2.get("payway_input_shien_cd").equals(JCNWebConst.PAYWAY_CD_CRECA))
						{
							String comp_nm = (String)detailMap2.get("crecard_comp_nm");
							String crecard_no = (String)detailMap2.get("crecard_no");
							if (comp_nm.length() == 0 && crecard_no.length() == 0)
							{
								// 一覧から除外する
								continue;
							}
							// クレジットカード決済
							payway2 = JCNWebCommon.editNextMonthCreditCard((String)detailMap2.get("crecard_comp_nm"),
									(String)detailMap2.get("crecard_no"),
									(String)detailMap2.get("crecard_yk_kigen"),
									(String)detailMap2.get("crecard_no_azkri_id"));
							if(!authFlg)
							{
								payway2 = JCNStrConst.MASK_CARD_NO;
							}
						}
						else if (detailMap2.get("payway_input_shien_cd").equals(JCNWebConst.PAYWAY_CD_ISP))
						{
							// ISP決済
							payway2 = "プロバイダ料金に合算【お客さまID：" + (String)detailMap2.get("isp_kssai_svc_kei_no") + "】";
						}
						else
						{
							payway2 = "";
						}
						if (childMap != null)
						{
							detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, String.valueOf(k + 1) + "." + payway2);
						}
						else
						{
							detail2.sendMessageString("支払方法表示", X31CWebConst.DATABEAN_SET_VALUE, new String());
						}
						detail2.sendMessageString("支払い方法番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("payway_no"));
						detail2.sendMessageString("支払い方法入力支援コード", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("payway_input_shien_cd"));
						detail2.sendMessageString("クレジットカードＩＤ", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_id"));
						detail2.sendMessageString("クレジットカード番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_no"));
						detail2.sendMessageString("カード会社コード", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_comp_cd"));
						detail2.sendMessageString("カード会社名", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("crecard_comp_nm"));
						detail2.sendMessageString("ＩＳＰ決済サービス契約番号", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("isp_kssai_svc_kei_no"));
						detail2.sendMessageString("更新年月日時分秒", X31CWebConst.DATABEAN_SET_VALUE,  (String)detailMap2.get("upd_dtm"));
					}
				}	
			}
		}

		return bean;
	}
	// ANK-4346-00-00 ADD END
}