/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：CNSV0019_CNSV0019OPDBMapper
*	ソースファイル名：CNSV0019_CNSV0019OPDBMapper.java
*	作成者			：FJ
*	日付			：2011年09月15日
*＜機能概要＞
*	BP（コンテンツ契約照会(初期表示)）へのＤ−Ｂマッピングクラスです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/09/15	FJ		新規作成
*	ｖ5.00.00	2013/02/28	FJ)小林		【ANK-1419-00-00】050IP電話アプリ対応
*	ｖ8.00.00	2014/01/29	FJ)塚田		【ANK-1585-00-00】LaLaCall複数番号対応
*	ｖ9.00.00	2014/06/10	FJ)味岡		【ANK-2077-00-00】コンテンツ詳細画面へのLC端末情報表示
*	ｖ10.00.00	2014/07/8	FJ)横田		【ANK-2136-00-00】PCソフト使い放題サービスの導入
*	ｖ15.00.00	2015/06/15	FJ)頼経		【ANK-2511-00-00】パーソナルクラウド （ＡＯＳＢＯＸ対応）導入対応
*										【ANK-2531-00-00】アプリ取り放題コンテンツ導入対応
*	ｖ18.00.00	2015/10/22  FJ)頼経	     ANK-2694-00-00 ワンストップ案件（ＳＴＥＰ２）※koptWebBからkoptWebAへコピー
*	ｖ20.00.00	2015/11/26	FJ)中嶋		【ANK-2565-00-00】クレジットカード番号預かりサービス導入（Step3：預かり番号化）
*	ｖ36.00.00	2018/04/13	FJ)張本		【ANK-3394-00-00】ＭＶＮＯ案件(５下)：オプション拡充対応他
*	 v65.00.00	2023/07/12	FJ)中原		【ANK-4346-00-00】【eo定期】CCMG再構築対応 新規作成
**********************************************************************/
package eo.web.webview.mapping;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

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.web.webview.CNA00901SF.CNW00501SFConst;
import eo.web.webview.commonOneStop.JCNWebCommon;
import eo.web.webview.commonOneStop.JCNWebConst;

/**
 * DataBean-BPマッピングをする。
 * 
 * <br>
 * @author 富士通
 */
public class CNSV0019_CNSV0019OPDBMapper
{

	/** 機能コード */
	private static final String FUNC_CODE = "func_code";
	/** 業務パラメータ管理一意照会ＳＣ */
	private static final String SC_TITLE_CNSV001901 = "CNSV001901SC";
	// ANK-4346-00-00 MOD START
//	/** コンテンツ契約一意照会ＳＣ */
//	private static final String SC_TITLE_CNSV001902 = "CNSV001902SC";
//	/** クレジットカード会社一意照会ＳＣ */
//	private static final String SC_TITLE_CNSV001903 = "CNSV001903SC";
//	/** クレジットカード会社一意照会ＳＣ */
//	private static final String SC_TITLE_CNSV001904 = "CNSV001904SC";
	/** コンテンツ契約照会一覧情報取得（CCMG）(ECNA0170001) */
	private static final String SC_TITLE_CNSV001902CC = "CNSV001902CC";
	// ANK-4346-00-00 MOD END
// ｖ36.00.00 ADD START
	/** 業務パラメータ管理一意照会ＳＣ */
	private static final String SC_TITLE_CNSV001909 = "CNSV001909SC";
// ｖ36.00.00 ADD END

	/** 業務パラメータ管理一意照会ＳＣ.業務パラメータ管理一意照会明細 */
	private static final String EZM0321A010_LIST = "EZM0321A010CBSMsg1List";
	// ANK-4346-00-00 MOD START
//	/** コンテンツ契約一意照会ＳＣ.コンテンツ契約一意照会明細 */
//	private static final String ECN0021A002_LIST = "ECN0021A002CBSMsg1List";
	/** 契約一覧情報取得（CCMG）照会明細 */
	private static final String ECNA0170001_LIST = "cont_kei_list";
	// ANK-4346-00-00 MOD END
	// ANK-4346-00-00 DEL START
//	/** クレジットカード会社一意照会ＳＣ.クレジットカード会社一意照会明細 */
//	private static final String EKK0531A010_LIST = "EKK0531A010CBSMsg1List";
	// ANK-4346-00-00 DEL END

	/** 業務パラメータ管理一意照会SC・業務パラメータ設定値 */
	private static final String WORK_PARAM_SETTE_VALUE = "work_param_sette_value";
	/** ＫＥＹ＿コンテンツ契約番号 */
	// ANK-4346-00-00 MOD START
//	private static final String KEY_CONT_KEI_NO = "key_cont_kei_no";
	private static final String KEY_CONT_KEI_NO = "cont_kei_no";
	// ANK-4346-00-00 MOD END
	// ANK-4346-00-00 ADD START
	/** コンテンツ契約情報要否 */
	private static final String KEY_RETURN_CONTRACT = "return_contract";
	/** 直近課金情報要否 */
	private static final String KEY_RETURN_CHARGE = "return_charge";
	/** 契約付加情報要否 */
	private static final String KEY_RETURN_CONTRACT_ADDS = "return_contract_adds";
	// ANK-4346-00-00 ADD END
	/** コンテンツサービスコード */
	private static final String CONT_SVC_CD = "cont_svc_cd";
	/** コンテンツコード */
	private static final String CONT_CD = "cont_cd";
	/** コンテンツ名 */
	private static final String CONT_NM = "cont_nm";
	/** コンテンツ種別コード */
	private static final String CONT_SBT_CD = "cont_sbt_cd";
	/** コンテンツ契約開始年月日時分秒 */
	private static final String CONT_KEI_STA_DTM = "cont_kei_sta_dtm";
	/** コンテンツ契約終了年月日時分秒 */
	private static final String CONT_KEI_END_DTM = "cont_kei_end_dtm";
	/** コンテンツ支払い方法コード */
	private static final String CONT_PAYWAY_CD = "cont_payway_cd";
	/** コンテンツ契約状態コード */
	private static final String CONT_KEI_STAT_CD = "cont_kei_stat_cd";
	/** コンテンツ契約状態コード名 */
	// ANK-4346-00-00 MOD START
//	private static final String CONT_KEI_STAT_CD_NM = "cont_kei_stat_cd_nm";
	private static final String CONT_KEI_STAT_CD_NM = "cont_kei_stat_nm";
	// ANK-4346-00-00 MOD END
	/** 税区 */
	private static final String TAXAREA = "taxarea";
	/** 税区名 */
	private static final String TAXAREA_NM = "taxarea_nm";
	/** コンテンツ単価 */
	private static final String CONT_TANKA = "cont_tanka";
	/** コンテンツ購入数量 */
	private static final String CONT_BUY_CNT = "cont_buy_cnt";
	// ANK-4346-00-00 DEL START
//	/** 連携先コンテンツ識別ＩＤ */
//	private static final String RNKSAKI_CONT_SKBT_ID = "rnksaki_cont_skbt_id";
//	/** 契約時ＳＹＳＩＤ */
//	private static final String KEI_JI_SYSID = "kei_ji_sysid";
	// ANK-4346-00-00 DEL END
	/** 課金対象年月 */
	// ANK-4346-00-00 MOD START
//	private static final String CHRG_TRGT_YM = "chrg_trgt_ym";
	private static final String CHRG_TRGT_YM = "target_date";
	// ANK-4346-00-00 MOD END
	/** 課金訂正理由区分 */
	private static final String CHRG_TEISE_RSN_DIV_NM = "chrg_teise_rsn_div_nm";
	// ANK-4346-00-00 ADD START
	/** 課金訂正理由区分 */
	private static final String CHRG_TEISE_RSN_DIV = "chrg_teise_rsn_div";
	// ANK-4346-00-00 ADD END
	/** 売上減額 */
	private static final String SALES_GEN_AMNT = "sales_gen_amnt";
		// ANK-4346-00-00 DEL START
//	/** 補償費 */
//	private static final String COMPENSATION = "compensation";
	// ANK-4346-00-00 DEL END
	/** 課金訂正理由メモ */
	private static final String CHRG_TEISE_RSN_MEMO = "chrg_teise_rsn_memo";
	/** コンテンツサービス名 */
	private static final String CONT_SVC_NM = "cont_svc_nm";
	/** 課金コンテンツ単価 */
	private static final String CHRG_CONT_TANKA = "chrg_cont_tanka";
	/** 課金コンテンツ購入数量 */
	private static final String CHRG_CONT_BUY_CNT = "chrg_cont_buy_cnt";
	/** クレジットカード会社略称 */
	private static final String CRECARD_COMP_ALI = "crecard_comp_ali";
	/** クレジットカード番号 */
	private static final String CRECARD_NO = "crecard_no";
// ｖ20.00.00 ADD START
	/** クレジットカード有効期限 */
	private static final String CRECARD_YK_KIGEN = "crecard_yk_kigen";
	/** クレジットカード番号預りID */
	private static final String CRECARD_NO_AZKRI_ID = "crecard_no_azkri_id";	
// ｖ20.00.00 ADD END
	/** 課金情報クレジットカード番号 */
	private static final String CHRG_CRECARD_NO = "chrg_crecard_no";
// ｖ20.00.00 ADD START
	/** 課金情報クレジットカード有効期限 */
	private static final String CHRG_CRECARD_YK_KIGEN = "chrg_crecard_yk_kigen";
	/** 課金情報クレジットカード番号預りID */
	private static final String CHRG_CRECARD_NO_AZKRI_ID = "chrg_crecard_no_azkri_id";	
// ｖ20.00.00 ADD END
	/** ＩＳＰ決済サービス契約番号(契約) */
	private static final String ISP_KSSAI_SVC_KEI_NO = "isp_kssai_svc_kei_no";
	/** ＩＳＰ決済サービス契約番号(課金) */
	private static final String CHRG_ISP_KSSAI_SVC_KEI_NO = "chrg_isp_kssai_svc_kei_no";
	// ANK-4346-00-00 DEL START
//	/** トレンドマイクロシリアル番号 */
//	private static final String TRENDMICRO_CEREAL_NO = "trendmicro_cereal_no";
//	// ANK-2136-00-00 2014/7/8 ADD START
//	/** ウイルスバスターＩＤ */
//	private static final String VIRUSBUSTER_ID = "virusbuster_id";
//	// ANK-2136-00-00 2014/7/8 ADD END
//	/** 汎用項目値 */
//	private static final String HANYO_VALUE = "hanyo_value";
	// ANK-4346-00-00 DEL END
	/** 税率 */
	private static final String TAX_RT = "tax_rt";
	// ANK-4346-00-00 DEL START
//	/** 赤黒区分 */
//	private static final String PLMIN_DIV = "plmin_div";
	// ANK-4346-00-00 DEL END
	/** 課金額 */
	private static final String CHRG_AMNT = "chrg_amnt";
	// ANK-4346-00-00 DEL START
//	/** コンテンツサービスコード */
//	private static final String CONT_SONZAI_FLG = "cont_sonzai_flg";
//	/**コンテンツ外部コード */
//	private static final String CONT_OUT_CD = "cont_out_cd";
//	/**コンテンツ汎用項目名 */
//	private static final String HANYO_KMK_NM = "hanyo_kmk_nm";
	// ANK-4346-00-00 DEL END
	/** コンテンツ課金ステータス(クレカ・ＩＳＰ) */
	private static final String CONT_CHRG_STAT = "cont_chrg_stat";
	// ANK-4346-00-00 DEL START
//	/** チョイスチケット利用可能数 */
//	private static final String CHOICETICKT_USE_PSB_CNT = "choicetickt_use_psb_cnt";
//	/** 非継続フラグ */
//	private static final String HIKEIZOKU_FLG = "hikeizoku_flg";
	// ANK-4346-00-00 DEL END
	/** 決済方法表示文言１(ＩＳＰ) */
	private static final String MSG_PAYWAY_CD_ISP_1 = "プロバイダ料金に合算【お客さまID：";
	/** 決済方法表示文言２(ＩＳＰ) */
	private static final String MSG_PAYWAY_CD_ISP_2 = "】";
	/** 決済方法表示文言１(クレジット) */
	private static final String MSG_PAYWAY_CD_CRECA_1 = "クレジットカード";
	/** 決済方法表示文言２(クレジット) */
	private static final String MSG_PAYWAY_CD_CRECA_2 = "　";
	/** コンテンツ名下部表示文言１ */
	private static final String MSG_CONT_NM_SERIAL_1 = "シリアル";
	// ANK-2136-00-00 2014/7/8 ADD START
	/** コンテンツ名下部表示文言２ */
	private static final String MSG_CONT_NM_VBID_2 = "ＶＢＩＤ";
	// ANK-2136-00-00 2014/7/8 ADD END
	
	// ANK-2511-00-00 ADD START
	/** コンテンツ名下部表示文言３ */
	private static final String MSG_CONT_NM_LICENSE_KEY = "ライセンスキー";
	// ANK-2511-00-00 ADD END
	// ANK-4346-00-00 ADD START
	/** 課金クレジットカード会社略称 */
	private static final String CHRG_CRECARD_COMP_ALI = "chrg_crecard_comp_ali";
	/** コンテンツ名下部表示文言４ */
	private static final String MSG_CONT_NM_CODE = "コード";
	/** 対象年月日 */
	private static final String CHRG_TARGET_DATE = "target_date";
	/** 決済方法名 */
	private static final String CONT_PAYWAY_NM = "cont_payway_nm";
	// ANK-4346-00-00 ADD END

	/** 文字数オバー時の省略文言 */
	private static final String MSG_DISP_VALUE_CUT = ".....";
	/** 日付フォーマット用文言（年） */
	private static final String MSG_FORMAT_JP_YEAR = "年";
	/** 日付フォーマット用文言（月） */
	private static final String MSG_FORMAT_JP_MONTH = "月度";

	/** 画面表示用 又は金額算出用(0) */
	private static final String ZERO = "0";

	/** 金額算出用(100) */
	private static final String ONE_HUNDRED = "100";
	/** 金額算出用(100) */
	private static final BigDecimal BIG_DECIMAL_100 = new BigDecimal(ONE_HUNDRED);

	/** 金額単位（円） */
	private static final String UNIT_JPN_MONEY = "円";

	/** 丸括弧左 */
	private static final String LEFT_APARENTHESIS = "(";
	/** 丸括弧右 */
	private static final String RIGHT_APARENTHESIS = ")";
	/** すみつき括弧左 */
	private static final String LEFT_BOLD_APARENTHESIS = "【";
	/** すみつき括弧右 */
	private static final String RIGHT_BOLD_APARENTHESIS = "】";
	/** すみつき括弧右 */
//	private static final String ESCAPE_HALF_SPACE = "&nbsp;";

	/** 空文字 */
	private static final String EMPTY = "";

// ｖ36.00.00 ADD START
	/** 汎用項目値の区切り文字 */
	private static final String SEP_HANYO_VALUE = " \\\\ ";
// ｖ36.00.00 ADD END

	/**
	 * コンストラクタ
	 */
	public CNSV0019_CNSV0019OPDBMapper()
	{
	}

	/**
	 * 上りマッピングをする
	 * <br>
	 * @param bean [0]：コンテンツ契約照会
	 * @param outputMap
	 * @param func_code 機能コード
	 * @return 送信情報
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV001901SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		// 共通情報のマッピング
		parentMap.put(FUNC_CODE, func_code);
		outputMap.put(SC_TITLE_CNSV001901, parentMap);
		return outputMap;
	}

	/**
	 * 
	 * 上りマッピングをする
	 * <br>
	 * @param bean [0]：コンテンツ契約照会
	 * @param outputMap
	 * @param func_code 機能コード
	 * @return 送信情報
	 */
	@SuppressWarnings("unchecked")
	// ANK-4346-00-00 MOD START
//	public HashMap setCNSV001902SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	public HashMap setCNSV001902CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	// ANK-4346-00-00 MOD END
	{

		if (bean == null)
		{
			return null;
		}

		if (bean.length != 1)
		{
			return null;
		}

		HashMap<String, Object> parentMap = new HashMap<String, Object>();

		// 共通情報のマッピング
		parentMap.put(FUNC_CODE, func_code);

		// コンテンツ契約番号 → コンテンツ契約一意照会.ＫＥＹ＿コンテンツ契約番号
		parentMap.put(KEY_CONT_KEI_NO, bean[0].sendMessageString(CNW00501SFConst.CONT_KEI_NO, X31CWebConst.DATABEAN_GET_VALUE));
		// ANK-4346-00-00 ADD START
		// コンテンツ契約情報要否 → コンテンツ契約一意照会.ＫＥＹ＿コンテンツ契約情報要否
		parentMap.put(KEY_RETURN_CONTRACT, "1");
		// 直近課金情報要否 → コンテンツ契約一意照会.ＫＥＹ＿直近課金情報要否
		parentMap.put(KEY_RETURN_CHARGE, "1");
		// 契約付加情報要否 → コンテンツ契約一意照会.ＫＥＹ＿契約付加情報要否
		parentMap.put(KEY_RETURN_CONTRACT_ADDS, "1");
		// ANK-4346-00-00 ADD END

		ArrayList arrayList = new ArrayList<HashMap>();
		HashMap detailMap = new HashMap();
		arrayList.add(detailMap);
		// ANK-4346-00-00 MOD START
		//parentMap.put(ECN0021A002_LIST, arrayList);
		//outputMap.put(SC_TITLE_CNSV001902, parentMap);
		parentMap.put(ECNA0170001_LIST, arrayList);
		outputMap.put(SC_TITLE_CNSV001902CC, parentMap);
		// ANK-4346-00-00 MOD END

		return outputMap;
	}

	// ANK-4346-00-00 DEL START (クレジットカード会社情報はCNSV001902CCで取得しているため)
//	/**
//	 * 
//	 * 上りマッピングをする
//	 * <br>
//	 * @param bean [0]：コンテンツ契約照会
//	 * @param outputMap
//	 * @param func_code 機能コード
//	 * @return 送信情報
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setCNSV001903SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
//	{
//		HashMap<String, Object> parentMap = new HashMap<String, Object>();
//		// 共通情報のマッピング
//		parentMap.put(FUNC_CODE, func_code);
//		outputMap.put(SC_TITLE_CNSV001903, parentMap);
//		return outputMap;
//	}
//
//	/**
//	 * 
//	 * 上りマッピングをする
//	 * <br>
//	 * @param bean [0]：コンテンツ契約照会
//	 * @param outputMap
//	 * @param func_code 機能コード
//	 * @return 送信情報
//	 */
//	@SuppressWarnings("unchecked")
//	public HashMap setCNSV001904SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
//	{
//		HashMap<String, Object> parentMap = new HashMap<String, Object>();
//		// 共通情報のマッピング
//		parentMap.put(FUNC_CODE, func_code);
//		outputMap.put(SC_TITLE_CNSV001904, parentMap);
//		return outputMap;
//	}
	// ANK-4346-00-00 DEL END (クレジットカード会社情報はCNSV001902CCで取得しているため)
	
	/**
	 * 
	 * 上りマッピングをする(050アプリオプション照会用)
	 * <br>
	 * @param bean [0]：コンテンツ契約照会
	 * @param outputMap
	 * @param func_code 機能コード
	 * @return 送信情報
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV001901CC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		
		// コンテンツサービスコード → ０５０アプリオプション照会マップ.コンテンツサービスコード
		parentMap.put("cont_svc_cd", bean[0].sendMessageString("コンテンツサービスコード", X31CWebConst.DATABEAN_GET_VALUE));
		
		// コンテンツ契約番号 → ０５０アプリオプション照会マップ.ＫＥＹ＿コンテンツ契約番号
		parentMap.put("key_cont_kei_no", bean[0].sendMessageString("コンテンツ契約番号", X31CWebConst.DATABEAN_GET_VALUE));
		
		// 共通情報のマッピング
		outputMap.put("CNSV001901CC", parentMap);
		return outputMap;
	}

// ｖ36.00.00 ADD START
	/**
	 * 上りマッピングをする
	 * <br>
	 * @param bean [0]：コンテンツ契約照会
	 * @param outputMap
	 * @param func_code 機能コード
	 * @return 送信情報
	 */
	@SuppressWarnings("unchecked")
	public HashMap setCNSV001909SC(X31SDataBeanAccess[] bean, HashMap outputMap, String func_code)
	{
		HashMap<String, Object> parentMap = new HashMap<String, Object>();
		// 共通情報のマッピング
		parentMap.put(FUNC_CODE, func_code);
		outputMap.put(SC_TITLE_CNSV001909, parentMap);
		return outputMap;
	}
// ｖ36.00.00 ADD END

	// ANK-4346-00-00 DEL START
//	/**
//	 * 下りマッピング
//	 * <br>
//	 * @param bean コンテンツ契約照会
//	 * @param outputMap
//	 * @return bean コンテンツ契約照会
//	 */
//	@SuppressWarnings("unchecked")
//	public X31SDataBeanAccess getCNSV001902SC(X31SDataBeanAccess bean, HashMap<Object, Object> outputMap, boolean authFlg)
//	{
//		// 業務パラメータ管理一意照会SC
//		HashMap<Object, Object> parentMap = null;
//		if (outputMap.containsKey(SC_TITLE_CNSV001901))
//		{
//			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001901);
//		}
//
//		String work_param_sette_value = null;
//		if (null != parentMap && parentMap.containsKey(EZM0321A010_LIST))
//		{
//			ArrayList<Object> childList = (ArrayList<Object>)parentMap.get(EZM0321A010_LIST);
//
//			if (0 < childList.size())
//			{
//				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
//				// 業務パラメータ管理一意照会SC・業務パラメータ設定値
//				work_param_sette_value = (String)childMap.get(WORK_PARAM_SETTE_VALUE);
//			}
//		}
//
//		String crecard_comp_ali = null;
//		if (outputMap.containsKey(SC_TITLE_CNSV001903))
//		{
//			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001903);
//		}
//
//		if (null != parentMap && parentMap.containsKey(EKK0531A010_LIST))
//		{
//			ArrayList<Object> childList = (ArrayList)parentMap.get(EKK0531A010_LIST);
//
//			if (0 < childList.size())
//			{
//				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
//				// クレジットカード会社SC・クレジットカード会社略称
//				crecard_comp_ali = (String)childMap.get(CRECARD_COMP_ALI);
//			}
//		}
//
//		String chrg_crecard_comp_ali = null;
//		if (outputMap.containsKey(SC_TITLE_CNSV001904))
//		{
//			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001904);
//		}
//
//		if (null != parentMap && parentMap.containsKey(EKK0531A010_LIST))
//		{
//			ArrayList<Object> childList = (ArrayList)parentMap.get(EKK0531A010_LIST);
//
//			if (0 < childList.size())
//			{
//				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
//				// クレジットカード会社SC・クレジットカード会社略称
//				chrg_crecard_comp_ali = (String)childMap.get(CRECARD_COMP_ALI);
//			}
//		}
//
//// ｖ36.00.00 ADD START
//		String cn_disp_cont_nm_value = null;
//		if (outputMap.containsKey(SC_TITLE_CNSV001909))
//		{
//			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001909);
//		}
//
//		if (null != parentMap && parentMap.containsKey(EZM0321A010_LIST))
//		{
//			ArrayList<Object> childList = (ArrayList<Object>)parentMap.get(EZM0321A010_LIST);
//
//			if (0 < childList.size())
//			{
//				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
//				// 業務パラメータ管理一意照会SC・業務パラメータ設定値
//				cn_disp_cont_nm_value = (String)childMap.get(WORK_PARAM_SETTE_VALUE);
//			}
//		}
//	
//// ｖ36.00.00 ADD END
//		if (outputMap.containsKey(SC_TITLE_CNSV001902))
//		{
//			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001902);
//		}
//
//		if (null != parentMap && parentMap.containsKey(ECN0021A002_LIST))
//		{
//			ArrayList<Object> childList = (ArrayList)parentMap.get(ECN0021A002_LIST);
//
//			if (0 < childList.size())
//			{
//				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
//
//				// コンテンツ支払い方法コード(true：有料，false：無料)
//				boolean isPaywayCdFree = JCNWebConst.PAYWAY_CD_FREE.equals((String)childMap.get(CONT_PAYW		AY_CD));
//				// 課金状態コード（true：課金中，false：課金停止 or 強制課金停止 or 課金取消済）
//				// 課金状態コードによる判定を削除するため、下記条件により、条件判定を取り除く
//				boolean isKakinChu = !JCNWebConst.CONT_KEI_STAT_CD.equals((String)childMap.get(CONT_KEI_STAT_CD));
//
//				// コンテンツ種別コード
//				String cont_sbt_cd = (String)childMap.get(CONT_SBT_CD);
//				// コンテンツ名
//				String cont_nm = getMapValueOrEmpty(childMap, CONT_NM);
//				// トレンドマイクロシリアル番号
//				String trendmicro_cereal_no = getMapValueOrEmpty(childMap, TRENDMICRO_CEREAL_NO);
//				// ANK-2136-00-00 2014/7/8 ADD START
//				// ウイルスバスターID
//				String virusbuster_id = getMapValueOrEmpty(childMap, VIRUSBUSTER_ID);
//				// ANK-2136-00-00 2014/7/8 ADD END
//				// 汎用項目値
//				String hanyo_value = getMapValueOrEmpty(childMap, HANYO_VALUE);
//				// コンテンツ支払い方法コード
//				String cont_payway_cd = getMapValueOrEmpty(childMap, CONT_PAYWAY_CD);
//				// クレジットカード番号
//				String crecard_no = getMapValueOrEmpty(childMap, CRECARD_NO);
//// ｖ20.00.00 ADD START
//				// クレジットカード有効期限
//				String crecard_yk_kigen = getMapValueOrEmpty(childMap, CRECARD_YK_KIGEN);
//				// クレジットカード番号預かりID
//				String crecard_no_azkri_id = getMapValueOrEmpty(childMap, CRECARD_NO_AZKRI_ID);
//// ｖ20.00.00 ADD END
//				// ＩＳＰ決済サービス契約番号
//				String isp_kssai_svc_kei_no = getMapValueOrEmpty(childMap, ISP_KSSAI_SVC_KEI_NO);
//				// 課金情報クレジットカード番号
//				String chrge_crecard_no = getMapValueOrEmpty(childMap, CHRG_CRECARD_NO);
//// ｖ20.00.00 ADD START
//				// 課金クレジットカード有効期限
//				String chrg_crecard_yk_kigen = getMapValueOrEmpty(childMap, CHRG_CRECARD_YK_KIGEN);
//				// 課金クレジットカード番号預かりID
//				String chrg_crecard_no_azkri_id = getMapValueOrEmpty(childMap, CHRG_CRECARD_NO_AZKRI_ID);
//// ｖ20.00.00 ADD END
//				// ＩＳＰ決済サービス契約番号
//				String chrge_isp_kssai_svc_kei_no = getMapValueOrEmpty(childMap, CHRG_ISP_KSSAI_SVC_KEI_NO);
//				// 税区
//				String taxarea = getMapValueOrEmpty(childMap, TAXAREA);
//				// 税率
//				String tax_rt = getMapValueOrZero(childMap, TAX_RT);
//				// コンテンツ単価
//				String cont_tanka = getMapValueOrZero(childMap, CONT_TANKA);
//				// コンテンツ購入数量
//				String cont_buy_cnt = getMapValueOrZero(childMap, CONT_BUY_CNT);
//				// コンテンツ汎用項目名
//				String cont_hanyo_kmk_nm = getMapValueOrEmpty(childMap, HANYO_KMK_NM);
//				// 赤黒区分
//				String plminDiv = getMapValueOrEmpty(childMap, PLMIN_DIV);
//				// 課金額
//				String chrg_amnt = JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) ? ZERO : getMapValueOrZero(childMap, CHRG_AMNT);
//				// 課金コンテンツ購入数量
//				String chrg_cont_buy_cnt = JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) ? ZERO : getMapValueOrZero(childMap, CHRG_CONT_BUY_CNT);
//				// 課金コンテンツ単価
//				String chrg_tanka = JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) ? ZERO : getMapValueOrZero(childMap, CHRG_CONT_TANKA);
//				// コンテンツ課金情報・課金訂正額(売上減額)
//				String sales_gen_amnt = isKakinChu ? getMapValueOrZero(childMap, SALES_GEN_AMNT) : ZERO;
//				// コンテンツ課金情報・課金訂正額(補償費)
//				String compensation = isKakinChu ? getMapValueOrZero(childMap, COMPENSATION) : ZERO;
//
//				if (childMap.containsKey(CONT_SVC_CD))
//				{
//					String cont_svc_cd = (String)childMap.get(CONT_SVC_CD);
//					// コンテンツサービスコード
//					bean.sendMessageString(CNW00501SFConst.CONT_SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(CONT_SVC_CD));
//
//					if (!isNull(work_param_sette_value))
//					{
//						if (work_param_sette_value.equals(cont_svc_cd))
//						{
//							// 業務パラメータ管理一意照会SC.業務パラメータ設定値と同値の場合
//
//							// 月・日別課金照会ボタン制御
//							bean.sendMessageBoolean(CNW00501SFConst.MONTH_DAY_BTN_CTL, X31CWebConst.DATABEAN_SET_VALUE, true);
//						}
//					}
//					String cont_sonzai_flg = (String)childMap.get(CONT_SONZAI_FLG);
//					String cont_cd = (String)childMap.get(CONT_CD);
//					String cont_out_cd = (String)childMap.get(CONT_OUT_CD);
//
//					// コンテンツＩＤ
//					bean.sendMessageString(CNW00501SFConst.CONT_ID, X31CWebConst.DATABEAN_SET_VALUE, getContId(cont_svc_cd, cont_sonzai_flg, cont_cd,
//							cont_out_cd));
//				}
//				else
//				{
//					bean.sendMessageBoolean(CNW00501SFConst.MONTH_DAY_BTN_CTL, X31CWebConst.DATABEAN_SET_VALUE, false);
//					bean.sendMessageString(CNW00501SFConst.CONT_SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					bean.sendMessageString(CNW00501SFConst.CONT_ID, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.S_LINE_SEPARAOR_LF);
//				}
//
//				// チョイス利用状況一覧ボタン制御
//				bean.sendMessageBoolean(CNW00501SFConst.CHOISE_BTN_CTL, X31CWebConst.DATABEAN_SET_VALUE, JCNWebConst.CONT_SBT_CD_CHOISE
//						.equals(cont_sbt_cd));
//
//				String rnksaki_cont_skbt_id = getMapValueOrEmpty(childMap, RNKSAKI_CONT_SKBT_ID);
//
//				if (!EMPTY.equals(rnksaki_cont_skbt_id))
//				{
//					StringBuffer sb = new StringBuffer(16);
//					sb.append(LEFT_APARENTHESIS);
//					int len = rnksaki_cont_skbt_id.length();
//					if (40 < len)
//					{
//						sb.append(rnksaki_cont_skbt_id.substring(0, 40)).append(MSG_DISP_VALUE_CUT);
//					}
//					else
//					{
//						sb.append(rnksaki_cont_skbt_id);
//					}
//					rnksaki_cont_skbt_id = sb.append(RIGHT_APARENTHESIS).toString();
//				}
//
//				// 連携先コンテンツＩＤ
//				bean.sendMessageString(CNW00501SFConst.RNKSAKI_CONT_ID, X31CWebConst.DATABEAN_SET_VALUE, rnksaki_cont_skbt_id);
//				// コンテンツ契約開始日時
//				bean.sendMessageString(CNW00501SFConst.CONT_KEI_STA_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon
//						.formatDatetimeSS((String)childMap.get(CONT_KEI_STA_DTM)));
//				// コンテンツ契約終了日時
//				bean.sendMessageString(CNW00501SFConst.CONT_KEI_END_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon
//						.formatDatetimeSS(getEndDateToEmpty((String)childMap.get(CONT_KEI_END_DTM))));
//// ｖ20.00.00 MOD START
////				// コンテンツ支払情報・決済方法
////				bean.sendMessageString(CNW00501SFConst.SHR_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd, crecard_no,
////						isp_kssai_svc_kei_no, crecard_comp_ali, authFlg));
////				// コンテンツ課金情報・決済方法
////				bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd,
////						chrge_crecard_no, chrge_isp_kssai_svc_kei_no, chrg_crecard_comp_ali, authFlg));
//				// コンテンツ支払情報・決済方法
//				bean.sendMessageString(CNW00501SFConst.SHR_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd, crecard_no,
//						isp_kssai_svc_kei_no, crecard_comp_ali, crecard_yk_kigen, crecard_no_azkri_id, authFlg));
//				// コンテンツ課金情報・決済方法
//				bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd,
//						chrge_crecard_no, chrge_isp_kssai_svc_kei_no, chrg_crecard_comp_ali, chrg_crecard_yk_kigen, chrg_crecard_no_azkri_id, authFlg));
//// ｖ20.00.00 MOD END
//				// コンテンツ契約ステータス
//				bean.sendMessageString(CNW00501SFConst.CONT_KEI_STAT, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap,
//						CONT_KEI_STAT_CD_NM));
//				// コンテンツ契約ステータスコード
//				bean.sendMessageString(CNW00501SFConst.CONT_KEI_STAT_CD, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap,
//						CONT_KEI_STAT_CD));
//
//				// 税区分
//				bean.sendMessageString(CNW00501SFConst.TAX_KBN, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, TAXAREA_NM));
//
//				if (!isPaywayCdFree)
//				{
//					// コンテンツ支払情報・単価(税込価格)
//					bean.sendMessageString(CNW00501SFConst.SHR_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getShtTankaTaxIn(taxarea, cont_tanka,
//							tax_rt));
//					// コンテンツ支払情報・単価(本体価格)
//					bean.sendMessageString(CNW00501SFConst.SHR_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getShtTanka(taxarea, cont_tanka, tax_rt));
//					// 契約情報・料金（税込合計）
//					bean.sendMessageString(CNW00501SFConst.SHR_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getShtPrcTaxIn(taxarea, cont_tanka,
//							tax_rt, cont_buy_cnt));
//					// 契約情報・料金（本体合計）
//					bean.sendMessageString(CNW00501SFConst.SHR_PRC, X31CWebConst.DATABEAN_SET_VALUE, getShtPrc(taxarea, cont_tanka, tax_rt,
//							cont_buy_cnt));
//				}
//				else
//				{
//					bean.sendMessageString(CNW00501SFConst.SHR_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					bean.sendMessageString(CNW00501SFConst.SHR_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					bean.sendMessageString(CNW00501SFConst.SHR_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					bean.sendMessageString(CNW00501SFConst.SHR_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//				}
//
//				// コンテンツ支払情報・数量
//				bean.sendMessageString(CNW00501SFConst.SHR_CNT, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatNumber(cont_buy_cnt));
//				// 契約時SYSID
//				bean.sendMessageString(CNW00501SFConst.KEI_JI_SYSID, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, KEI_JI_SYSID));
//				// コンテンツサービス名
//				bean.sendMessageString(CNW00501SFConst.CONT_SVC_NM, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CONT_SVC_NM));
//
////				HashMap<Object, Object> parentMap2 = null;
////				if (outputMap.containsKey("CNSV001901CC"))
////				{
////					parentMap2 = (HashMap<Object, Object>)outputMap.get("CNSV001901CC");
////				}
//
////				// ０５０アプリ利用情報表示制御
////				String N_050APL_DISP_CTL = (String)parentMap2.get("n_050apl_disp_ctl");
////				// ０５０電話番号
////				String n_050_telno = (String)parentMap2.get("n_050_telno");
////				// LaLaCall月額基本料の場合
////				if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(N_050APL_DISP_CTL))
////				{
////					// ０５０電話番号
////					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
////							getContNm(cont_nm, null, n_050_telno));
////				}
//				String cont_svc_cd = (String)childMap.get(CONT_SVC_CD);	
//				
//				// LaLaCallの場合、汎用項目の値は表示しない
//				// ANK-2136-00-00 2014/7/8 MOD START
//				if(JCNStrConst.CN0011_CONT_SVC_CD_050.equals(cont_svc_cd)) //&& !JCNStrConst.VOIP_API_RETUNR_CD_0.equals(N_050APL_DISP_CTL))
//				{
//					// コンテンツ契約情報
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//							getContNm(cont_nm, null));
//				}			 
//// ｖ36.00.00 ADD START
//				// 表示用コンテンツ名が取得できた場合、要素数に対応する値を"/"区切りで表示する
//				else if(!isNull(cn_disp_cont_nm_value))
//				{
//					List<String> vals = Arrays.asList(hanyo_value.split(SEP_HANYO_VALUE));
//					List<String> cols = Arrays.asList(cn_disp_cont_nm_value.split(JCNStrConst.S_SEP_CAM));
//					hanyo_value = JCNStrConst.S_BLANK;
//					for (int i = 0; i < vals.size(); i++)
//					{
//						if (cols.contains(String.valueOf(i + 1)))
//						{
//							hanyo_value = hanyo_value + JCNStrConst.S_PARAM_SLASH + vals.get(i);
//						}
//					}
//					if (!isNull(hanyo_value))
//					{
//						hanyo_value = hanyo_value.substring(1);
//					}
//
//					// コンテンツ契約情報・コンテンツ汎用項目値
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//							getContNm(cont_nm, hanyo_value));
//				}
//// ｖ36.00.00 ADD END
//				// ウイルスバスター(シリアル)の場合、トレンドマイクロシリアル番号を表示する
//				else if(!isNull(trendmicro_cereal_no))
//				{
//					// コンテンツ契約情報・トレンドマイクロシリアル番号
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//				    		getContNm(cont_nm, trendmicro_cereal_no));
//					// コンテンツ名(シリアル)
//					bean.sendMessageString(CNW00501SFConst.CONT_HANYO_KMK_NM, X31CWebConst.DATABEAN_SET_VALUE, getContNmUnderTitle(cont_nm,
//							trendmicro_cereal_no, cont_hanyo_kmk_nm, hanyo_value));
//				}
//				// ウイルスバスター(VBID)の場合、ウイルスバスターIDを表示する
//				else if(JCNStrConst.S_VBID.equals(cont_hanyo_kmk_nm))
//				{
//					// コンテンツ契約情報・ウイルスバスターID
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//				    		getContNm(cont_nm, virusbuster_id));
//					// コンテンツ名(VBID)
//					bean.sendMessageString(CNW00501SFConst.CONT_HANYO_KMK_NM, X31CWebConst.DATABEAN_SET_VALUE, getContNmUnderTitle(cont_nm,
//							trendmicro_cereal_no, cont_hanyo_kmk_nm, hanyo_value));
//				}		 		
//				// ANK-2511-00-00、ANK-2531-00-00 MOD START
//			    // PCソフト使い放題、パーソナルクラウド、アプリ取り放題の場合、汎用項目値を表示する
//				//else if(JCNStrConst.PC_SOFT_TUKAIHOUDAI.equals(cont_hanyo_kmk_nm))
//				else if(JCNStrConst.PC_SOFT_TUKAIHOUDAI.equals(cont_hanyo_kmk_nm) || JCNStrConst.AOSBOX.equals(cont_hanyo_kmk_nm) 
//						|| JCNStrConst.APP_CHOHOUDAI.equals(cont_hanyo_kmk_nm))
//				// ANK-2511-00-00、ANK-2531-00-00 MOD END
//				{
//					// コンテンツ契約情報・汎用項目値
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//				    		getContNm(cont_nm, hanyo_value));
//				    // コンテンツ名(シリアル)
//					bean.sendMessageString(CNW00501SFConst.CONT_HANYO_KMK_NM, X31CWebConst.DATABEAN_SET_VALUE, getContNmUnderTitle(cont_nm,
//							trendmicro_cereal_no, cont_hanyo_kmk_nm, hanyo_value));
//				}
//				else
//				{
//					// コンテンツ契約情報・コンテンツ汎用項目値
//					bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
//							getContNm(cont_nm, hanyo_value));
//				}				 
//				// ANK-2136-00-00 2014/7/8 MOD END
//				// チョイスチケット利用可能数
//				bean.sendMessageString(CNW00501SFConst.CHOICETICKT_USE_PSB_CNT, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap,
//						CHOICETICKT_USE_PSB_CNT));
//				// 非継続フラグ
//				bean.sendMessageString(CNW00501SFConst.HIKEIZOKU_FLG, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, HIKEIZOKU_FLG));
//
//				// 課金対象年月
//				bean.sendMessageString(CNW00501SFConst.CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CHRG_TRGT_YM));
//
//				if (isPaywayCdFree || !childMap.containsKey(CONT_CHRG_STAT) || isNull(childMap.get(CONT_CHRG_STAT)))
//				{
//					// コンテンツ支払い方法コード(true：有料，false：無料)が「無料」又はコンテンツ課金ステータス(クレカ・ＩＳＰ)が取得できない場合
//					// 画面上のコンテンツ課金情報をクリアする。
//
//					// コンテンツ課金情報・課金対象月
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					// コンテンツ課金情報・決済方法
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					// コンテンツ課金情報・単価（税込価格）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・単価（本体価格）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・数量
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CNT, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					// コンテンツ課金情報・料金（税込価格）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・料金（本体価格）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・課金訂正額（売上減額）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SALES_GEN_AMNT, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・課金訂正額（補償費
//					bean.sendMessageString(CNW00501SFConst.KAKIN_COMPENSATION, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・課金訂正理由
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_RSN, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					// コンテンツ課金情報・課金訂正記事
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_MEMO, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
//					// コンテンツ課金情報・請求額（税込合計）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//					// コンテンツ課金情報・請求額（本体合計）
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
//				}
//				else
//				{
//					// コンテンツ課金情報・課金対象月
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE,
//							!childMap.containsKey(CHRG_TRGT_YM) ? EMPTY : formatJpYm((String)childMap.get(CHRG_TRGT_YM)));
//					// コンテンツ課金情報・単価(税込価格)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getKakinTankaTaxIn(taxarea,
//							chrg_tanka, tax_rt, plminDiv, isKakinChu));
//					// コンテンツ課金情報・単価(本体価格)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getKakinTanka(taxarea, chrg_tanka, tax_rt,
//							plminDiv, isKakinChu));
//					// コンテンツ課金情報・数量
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CNT, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatNumber(chrg_cont_buy_cnt));
//					// コンテンツ課金情報・料金(税込合計)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getKakinPrcTaxIn(chrg_amnt, plminDiv,
//							isKakinChu));
//					// コンテンツ課金情報・料金(本体合計)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_PRC, X31CWebConst.DATABEAN_SET_VALUE, getKakinPrc(taxarea, chrg_tanka, tax_rt,
//							chrg_cont_buy_cnt, plminDiv, isKakinChu));
//					// コンテンツ課金情報・課金訂正理由
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_RSN, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap,
//							CHRG_TEISE_RSN_DIV_NM));
//					// コンテンツ課金情報・課金訂正記事
//					bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_MEMO, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap,
//							CHRG_TEISE_RSN_MEMO));
//					// コンテンツ課金情報・請求額(税込合計)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getSeikyuPrcTaxIn(chrg_amnt,
//							sales_gen_amnt, compensation, plminDiv, isKakinChu));
//					// コンテンツ課金情報・請求額(本体合計)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC, X31CWebConst.DATABEAN_SET_VALUE, getSeikyuPrc(taxarea, chrg_tanka,
//							tax_rt, chrg_cont_buy_cnt, plminDiv, isKakinChu, chrg_amnt, sales_gen_amnt, compensation));
//					// コンテンツ課金情報・課金訂正額(売上減額)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_SALES_GEN_AMNT, X31CWebConst.DATABEAN_SET_VALUE,
//							getDispKingakuFormat(sales_gen_amnt));
//					// コンテンツ課金情報・課金訂正額(補償費)
//					bean.sendMessageString(CNW00501SFConst.KAKIN_COMPENSATION, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(compensation));
//				}
//			}
//		}
//
//		return bean;
//	}
	// ANK-4346-00-00 DEL END
	// ANK-4346-00-00 ADD START
	/**
	 * 下りマッピング
	 * <br>
	 * @param bean コンテンツ契約照会
	 * @param outputMap
	 * @return bean コンテンツ契約照会
	 */
	public X31SDataBeanAccess getCNSV001902CC(X31SDataBeanAccess bean, HashMap<Object, Object> outputMap, boolean authFlg)
	{
		// 業務パラメータ管理一意照会SC
		HashMap<Object, Object> parentMap = null;
		if (outputMap.containsKey(SC_TITLE_CNSV001901))
		{
			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001901);
		}

		String work_param_sette_value = null;
		if (null != parentMap && parentMap.containsKey(EZM0321A010_LIST))
		{
			ArrayList<Object> childList = (ArrayList<Object>)parentMap.get(EZM0321A010_LIST);

			if (0 < childList.size())
			{
				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
				// 業務パラメータ管理一意照会SC・業務パラメータ設定値
				work_param_sette_value = (String)childMap.get(WORK_PARAM_SETTE_VALUE);
			}
		}

		String cn_disp_cont_nm_value = null;
		if (outputMap.containsKey(SC_TITLE_CNSV001909))
		{
			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001909);
		}

		if (null != parentMap && parentMap.containsKey(EZM0321A010_LIST))
		{
			ArrayList<Object> childList = (ArrayList<Object>)parentMap.get(EZM0321A010_LIST);

			if (0 < childList.size())
			{
				HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);
				// 業務パラメータ管理一意照会SC・業務パラメータ設定値
				cn_disp_cont_nm_value = (String)childMap.get(WORK_PARAM_SETTE_VALUE);
			}
		}
	
		if (outputMap.containsKey(SC_TITLE_CNSV001902CC))
		{
			parentMap = (HashMap<Object, Object>)outputMap.get(SC_TITLE_CNSV001902CC);
		}

		if (null != parentMap && parentMap.containsKey(ECNA0170001_LIST))
		{
			ArrayList<Object> childList = (ArrayList<Object>)parentMap.get(ECNA0170001_LIST);
			HashMap<String, String> childMap = (HashMap<String, String>)childList.get(0);

			// コンテンツ支払い方法コード(true：有料，false：無料)
			boolean isPaywayCdFree = JCNWebConst.PAYWAY_CD_FREE.equals((String)childMap.get(CONT_PAYWAY_CD));
			// 課金状態コード（true：課金中，false：課金停止 or 強制課金停止 or 課金取消済）
			// 課金状態コードによる判定を削除するため、下記条件により、条件判定を取り除く
			boolean isKakinChu = !JCNWebConst.CONT_KEI_STAT_CD.equals((String)childMap.get(CONT_KEI_STAT_CD));

			// コンテンツ種別コード
			String cont_sbt_cd = (String)childMap.get(CONT_SBT_CD);
			// コンテンツサービスコード
			String cont_svc_cd = (String)childMap.get(CONT_SVC_CD);
			// コンテンツ名
			String cont_nm = getMapValueOrEmpty(childMap, CONT_NM);
			// コンテンツ支払い方法コード
			String cont_payway_cd = getMapValueOrEmpty(childMap, CONT_PAYWAY_CD);
			// 契約クレジットカード番号
			String crecard_no = getMapValueOrEmpty(childMap, CRECARD_NO);
			// 契約クレジットカード有効期限
			String crecard_yk_kigen = getMapValueOrEmpty(childMap, CRECARD_YK_KIGEN);
			// 契約クレジットカード番号預かりID
			String crecard_no_azkri_id = getMapValueOrEmpty(childMap, CRECARD_NO_AZKRI_ID);
			// 契約クレジットカード会社略称
			String crecard_comp_ali = getMapValueOrEmpty(childMap, CRECARD_COMP_ALI);
			// 契約ＩＳＰ決済サービス契約番号
			String isp_kssai_svc_kei_no = getMapValueOrEmpty(childMap, ISP_KSSAI_SVC_KEI_NO);
			// 課金情報クレジットカード番号
			String chrge_crecard_no = getMapValueOrEmpty(childMap, CHRG_CRECARD_NO);
			// 課金クレジットカード有効期限
			String chrg_crecard_yk_kigen = getMapValueOrEmpty(childMap, CHRG_CRECARD_YK_KIGEN);
			// 課金クレジットカード番号預かりID
			String chrg_crecard_no_azkri_id = getMapValueOrEmpty(childMap, CHRG_CRECARD_NO_AZKRI_ID);
			// 課金クレジットカード会社略称
			String chrg_crecard_comp_ali = getMapValueOrEmpty(childMap, CHRG_CRECARD_COMP_ALI);
			// 課金ＩＳＰ決済サービス契約番号
			String chrge_isp_kssai_svc_kei_no = getMapValueOrEmpty(childMap, CHRG_ISP_KSSAI_SVC_KEI_NO);
			// 税区
			String taxarea = getMapValueOrEmpty(childMap, TAXAREA);
			// 税率
			String tax_rt = getMapValueOrZero(childMap, TAX_RT);
			// 契約コンテンツ単価
			String cont_tanka = getMapValueOrZero(childMap, CONT_TANKA);
			// 契約コンテンツ購入数量
			String cont_buy_cnt = getMapValueOrZero(childMap, CONT_BUY_CNT);
			// 課金額
			String chrg_amnt = getMapValueOrZero(childMap, CHRG_AMNT);
			// 課金コンテンツ購入数量
			String chrg_cont_buy_cnt = getMapValueOrZero(childMap, CHRG_CONT_BUY_CNT);
			// 課金コンテンツ単価
			String chrg_tanka =getMapValueOrZero(childMap, CHRG_CONT_TANKA);
			// コンテンツ課金情報・課金訂正額(売上減額)
			String sales_gen_amnt = isKakinChu ? getMapValueOrZero(childMap, SALES_GEN_AMNT) : ZERO;
			String cont_cd = (String)childMap.get(CONT_CD);
			// 課金状態
			String cont_chrg_stat =getMapValueOrEmpty(childMap, CONT_CHRG_STAT);



			// ====================================
			// ===  コンテンツ契約情報欄の設定  ===
			// ====================================
			
			// コンテンツ契約番号
			// 呼出元で設定済み
			
			// 契約時SYSID
			bean.sendMessageString(CNW00501SFConst.KEI_JI_SYSID, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
			// コンテンツサービスコード
			bean.sendMessageString(CNW00501SFConst.CONT_SVC_CD, X31CWebConst.DATABEAN_SET_VALUE, (String)childMap.get(CONT_SVC_CD));
			// コンテンツサービス名
			bean.sendMessageString(CNW00501SFConst.CONT_SVC_NM, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CONT_SVC_NM));
			// コンテンツＩＤ
			bean.sendMessageString(CNW00501SFConst.CONT_ID, X31CWebConst.DATABEAN_SET_VALUE, cont_cd);
			// コンテンツ契約開始日時
			bean.sendMessageString(CNW00501SFConst.CONT_KEI_STA_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon
					.formatDatetimeSS((String)childMap.get(CONT_KEI_STA_DTM)));
			// コンテンツ契約終了日時
			bean.sendMessageString(CNW00501SFConst.CONT_KEI_END_DTM, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon
					.formatDatetimeSS(getEndDateToEmpty((String)childMap.get(CONT_KEI_END_DTM))));
			// コンテンツ契約ステータス
			bean.sendMessageString(CNW00501SFConst.CONT_KEI_STAT, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CONT_KEI_STAT_CD_NM));
			// コンテンツ契約ステータスコード
			bean.sendMessageString(CNW00501SFConst.CONT_KEI_STAT_CD, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CONT_KEI_STAT_CD));
			// 税区分
			bean.sendMessageString(CNW00501SFConst.TAX_KBN, X31CWebConst.DATABEAN_SET_VALUE, getTaxaNm(getMapValueOrEmpty(childMap, TAXAREA)));
			
			// コンテンツ名(ラベル)付加情報
			String cont_nm_lbel_huka = EMPTY;
			// コンテンツ名(値)付加情報
			String cont_nm_value_huka = EMPTY;
			
			
			// コンテンツ名ラベルの下、およびコンテンツ名の下に表示する付加情報を設定する。
			// １．マスタから表示用ラベル名が取得できる場合は、コンテンツ名の下のみ配置する。
			// ２．マスタから取得できない場合は、コンテンツ名ラベルとコンテンツ名を独自に設定する。
			//     独自処理＜ウイルスバスターの場合＞、VBIDかシリアル番号をコンテンツ名の下に設定する。
			//     独自処理＜ウイルスバスターの場合＞、
			
			// 表示用コンテンツ名が取得できた場合、
			// 汎用項目名には設定しない。
			// コンテンツ名には、表示する要素に対応する値を"/"区切りで表示する
			if(!isNull(cn_disp_cont_nm_value))
			{
				List<String> cols = Arrays.asList(cn_disp_cont_nm_value.split(JCNStrConst.S_SEP_CAM));
				cont_nm_value_huka = JCNStrConst.S_BLANK;
				for (String col : cols)
				{
					if (childMap.containsKey(col))
					{
						cont_nm_value_huka = cont_nm_value_huka + JCNStrConst.S_PARAM_SLASH + childMap.get(col);
					}
				}
				if (!isNull(cont_nm_value_huka))
				{
					cont_nm_value_huka = cont_nm_value_huka.substring(1);
				}
			}
			// ウイルスバスタ―の場合、VBIDかシリアルのいずれか設定されているほうを汎用項目の値を表示する
			else if("0069".equals(cont_svc_cd)
					|| "0075".equals(cont_svc_cd)
					|| "0076".equals(cont_svc_cd)
					|| "0088".equals(cont_svc_cd)
			)
			{
				// ウイルスバスター(シリアル)の場合、トレンドマイクロシリアル番号を表示する
				if(childMap.containsKey("SERIAL_NUMBER"))
				{
					// 汎用項目名(シリアル)
					cont_nm_lbel_huka = MSG_CONT_NM_SERIAL_1;
					// コンテンツ契約情報・コンテンツ名
					cont_nm_value_huka = childMap.get("SERIAL_NUMBER");
				}
				// ウイルスバスター(VBID)の場合、ウイルスバスターIDを表示する
				else if(childMap.containsKey("VBID"))
				{
					// 汎用項目名(VBID)
					cont_nm_lbel_huka = MSG_CONT_NM_VBID_2;
					// コンテンツ契約情報・コンテンツ名
					cont_nm_value_huka = childMap.get("VBID");
				}
			}
		    // その他は個別に設定する。
			else if("0077".equals(cont_svc_cd))
			{
				cont_nm_lbel_huka = MSG_CONT_NM_CODE;
				cont_nm_value_huka = childMap.get("CODE");
			}
			else if("0080".equals(cont_svc_cd))
			{
				cont_nm_lbel_huka = MSG_CONT_NM_LICENSE_KEY;
				cont_nm_value_huka = childMap.get("LICENSE_KEY");
			}
			else if("0079".equals(cont_svc_cd))
			{
				cont_nm_lbel_huka = MSG_CONT_NM_CODE;
				cont_nm_value_huka = childMap.get("SERIAL_CODE");
			}
			
			// コンテンツ汎用項目名
			bean.sendMessageString(CNW00501SFConst.CONT_HANYO_KMK_NM, X31CWebConst.DATABEAN_SET_VALUE,
					getContNmUnderTitle(cont_nm, cont_nm_lbel_huka));
			// コンテンツ名
			bean.sendMessageString(CNW00501SFConst.CONT_NM, X31CWebConst.DATABEAN_SET_VALUE,
					getContNm(cont_nm, cont_nm_value_huka));

			// ====================================
			// ===  コンテンツ支払情報欄の設定  ===
			// ====================================
			// コンテンツ支払情報・決済方法
			bean.sendMessageString(CNW00501SFConst.SHR_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd, crecard_no,
					isp_kssai_svc_kei_no, crecard_comp_ali, crecard_yk_kigen, crecard_no_azkri_id, authFlg));
			// 支払方法が有料(クレジット課金／ＩＳＰ課金)の場合
			if (!isPaywayCdFree)
			{
				// コンテンツ支払情報・単価(税込価格)
				bean.sendMessageString(CNW00501SFConst.SHR_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getShtTankaTaxIn(taxarea, cont_tanka, tax_rt));
				// コンテンツ支払情報・単価(本体価格)
				bean.sendMessageString(CNW00501SFConst.SHR_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getShtTanka(taxarea, cont_tanka, tax_rt));
				// コンテンツ支払情報・料金（税込合計）
				bean.sendMessageString(CNW00501SFConst.SHR_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getShtPrcTaxIn(taxarea, cont_tanka,tax_rt, cont_buy_cnt));
				// コンテンツ支払情報・料金（本体合計）
				bean.sendMessageString(CNW00501SFConst.SHR_PRC, X31CWebConst.DATABEAN_SET_VALUE, getShtPrc(taxarea, cont_tanka, tax_rt, cont_buy_cnt));
			}
			// 支払方法が上記以外（無料）の場合
			else
			{
				// コンテンツ支払情報・単価(税込価格)
				bean.sendMessageString(CNW00501SFConst.SHR_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ支払情報・単価(本体価格)
				bean.sendMessageString(CNW00501SFConst.SHR_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ支払情報・料金（税込合計）
				bean.sendMessageString(CNW00501SFConst.SHR_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ支払情報・料金（本体合計）
				bean.sendMessageString(CNW00501SFConst.SHR_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				
			}
			// ====================================
			// ===  コンテンツ課金情報欄の設定  ===
			// ====================================
			
			if(!isPaywayCdFree && !"0".equals(chrg_amnt))
			{
				// コンテンツ課金情報・課金対象月
				bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE,
						!childMap.containsKey(CHRG_TRGT_YM) ? EMPTY : formatJpYm((String)childMap.get(CHRG_TRGT_YM)));
				// コンテンツ課金情報・決済方法
				bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd, chrge_crecard_no,
						chrge_isp_kssai_svc_kei_no, chrg_crecard_comp_ali, chrg_crecard_yk_kigen, chrg_crecard_no_azkri_id, authFlg));
				// コンテンツ課金情報・単価(税込価格)
				bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(chrg_tanka));
				// コンテンツ課金情報・単価(本体価格)
				bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA, X31CWebConst.DATABEAN_SET_VALUE,  getKakinTanka(taxarea, chrg_tanka, tax_rt, isKakinChu));
				// コンテンツ課金情報・数量
				bean.sendMessageString(CNW00501SFConst.KAKIN_CNT, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatNumber(chrg_cont_buy_cnt));
				// コンテンツ課金情報・料金(税込合計)
				bean.sendMessageString(CNW00501SFConst.KAKIN_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getKakinPrcTaxIn(chrg_amnt,isKakinChu));
				// コンテンツ課金情報・料金(本体合計)
				bean.sendMessageString(CNW00501SFConst.KAKIN_PRC, X31CWebConst.DATABEAN_SET_VALUE, getKakinPrc(taxarea, chrg_tanka, tax_rt,chrg_cont_buy_cnt, isKakinChu));
				// コンテンツ課金情報・課金訂正額(売上減額)
				bean.sendMessageString(CNW00501SFConst.KAKIN_SALES_GEN_AMNT, X31CWebConst.DATABEAN_SET_VALUE,
						getDispKingakuFormat(sales_gen_amnt));
				// コンテンツ課金情報・課金訂正記事
				bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_MEMO, X31CWebConst.DATABEAN_SET_VALUE, getMapValueOrEmpty(childMap, CHRG_TEISE_RSN_MEMO));
				// コンテンツ課金情報・請求額(税込合計)
				bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getSeikyuPrcTaxIn(chrg_amnt,
						sales_gen_amnt, isKakinChu));
				// コンテンツ課金情報・請求額(本体合計)
				bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC, X31CWebConst.DATABEAN_SET_VALUE, getSeikyuPrc(taxarea, chrg_tanka,
						tax_rt, chrg_cont_buy_cnt, isKakinChu, chrg_amnt, sales_gen_amnt));

			}
			else
			{
				// コンテンツ課金情報・課金対象月
				bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
				// コンテンツ課金情報・決済方法
				bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
				// コンテンツ課金情報・単価（税込価格）
				bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・単価（本体価格）
				bean.sendMessageString(CNW00501SFConst.KAKIN_TANKA, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・数量
				bean.sendMessageString(CNW00501SFConst.KAKIN_CNT, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
				// コンテンツ課金情報・料金（税込価格）
				bean.sendMessageString(CNW00501SFConst.KAKIN_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・料金（本体価格）
				bean.sendMessageString(CNW00501SFConst.KAKIN_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・課金訂正額（売上減額）
				bean.sendMessageString(CNW00501SFConst.KAKIN_SALES_GEN_AMNT, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・課金訂正記事
				bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TEISE_MEMO, X31CWebConst.DATABEAN_SET_VALUE, EMPTY);
				// コンテンツ課金情報・請求額（税込合計）
				bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC_TAXIN, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));
				// コンテンツ課金情報・請求額（本体合計）
				bean.sendMessageString(CNW00501SFConst.KAKIN_SEIKY_PRC, X31CWebConst.DATABEAN_SET_VALUE, getDispKingakuFormat(ZERO));

			}
			// 無料コンテンツではなく、課金額が0円
			if(!isPaywayCdFree && "0".equals(chrg_amnt))
			{
				// コンテンツ課金情報・課金対象月
				bean.sendMessageString(CNW00501SFConst.KAKIN_CHRG_TRGT_YM, X31CWebConst.DATABEAN_SET_VALUE,
						!childMap.containsKey(CHRG_TRGT_YM) ? EMPTY : formatJpYm((String)childMap.get(CHRG_TRGT_YM)));
				// コンテンツ課金情報・決済方法
				bean.sendMessageString(CNW00501SFConst.KAKIN_CONT_PAYWAY, X31CWebConst.DATABEAN_SET_VALUE, getContPaywayNm(cont_payway_cd, chrge_crecard_no,
						chrge_isp_kssai_svc_kei_no, chrg_crecard_comp_ali, chrg_crecard_yk_kigen, chrg_crecard_no_azkri_id, authFlg));
				// コンテンツ課金情報・数量
				bean.sendMessageString(CNW00501SFConst.KAKIN_CNT, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatNumber(chrg_cont_buy_cnt));
			}

			
			// コンテンツ支払情報・数量
			bean.sendMessageString(CNW00501SFConst.SHR_CNT, X31CWebConst.DATABEAN_SET_VALUE, JCNWebCommon.formatNumber(cont_buy_cnt));
			
		}

		return bean;
	}
	// ANK-4346-00-00 ADD END
	
	/**
	 * 下りマッピング(050アプリオプション照会用)
	 * <br>
	 * @param bean コンテンツ契約照会
	 * @param outputMap
	 * @return bean コンテンツ契約照会
	 */
	@SuppressWarnings({ "unused", "unchecked" })
	public X31SDataBeanAccess getCNSV001901CC(X31SDataBeanAccess bean, HashMap<Object, Object> outputMap, boolean authFlg)
	{
		HashMap parentMap = null;
		if(outputMap.containsKey("CNSV001901CC")){
			parentMap = (HashMap)outputMap.get("CNSV001901CC");
		}
		
		if(parentMap != null)
		{
			// ０５０アプリ利用情報表示制御
			String N_050APL_DISP_CTL = (String)parentMap.get("n_050apl_disp_ctl");
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(N_050APL_DISP_CTL))
			{
				bean.sendMessageBoolean(CNW00501SFConst.N_050APL_DISP_CTL, X31CWebConst.DATABEAN_SET_VALUE, true);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(N_050APL_DISP_CTL))
			{
				bean.sendMessageBoolean(CNW00501SFConst.N_050APL_DISP_CTL, X31CWebConst.DATABEAN_SET_VALUE, false);
			}
			
			// ０５０アプリオプション情報表示制御
			String N_050APL_OPTION_DISP_CTL = (String)parentMap.get("n_050apl_option_disp_ctl");
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(N_050APL_OPTION_DISP_CTL))
			{
				bean.sendMessageBoolean(CNW00501SFConst.N_050APL_OPTION_DISP_CTL, X31CWebConst.DATABEAN_SET_VALUE, true);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(N_050APL_OPTION_DISP_CTL))
			{
				bean.sendMessageBoolean(CNW00501SFConst.N_050APL_OPTION_DISP_CTL, X31CWebConst.DATABEAN_SET_VALUE, false);
			}
			
			// ０５０電話番号
			String N_050_TELNO = (String)parentMap.get("n_050_telno");
			bean.sendMessageString(CNW00501SFConst.N_050_TELNO, X31CWebConst.DATABEAN_SET_VALUE, N_050_TELNO);
			
			// ０５０アプリ本人確認用電話番号
			String N_050APL_HNIN_CFM_TELNO = (String)parentMap.get("n_050apl_hnin_cfm_telno");
			bean.sendMessageString(CNW00501SFConst.N_050APL_HNIN_CFM_TELNO, X31CWebConst.DATABEAN_SET_VALUE, N_050APL_HNIN_CFM_TELNO);
			
			// アプリ利用端末情報
			String APL_USE_TANMT_INFO = (String)parentMap.get("apl_use_tanmt_info");
			bean.sendMessageString(CNW00501SFConst.APL_USE_TANMT_INFO, X31CWebConst.DATABEAN_SET_VALUE, APL_USE_TANMT_INFO);
			
			// 転送起動フラグ
			String CALLFWD_ACT_FLAG = (String)parentMap.get("callfwd_act_flag");
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CALLFWD_ACT_FLAG))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_ACT_FLAG, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_ACT_FLAG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CALLFWD_ACT_FLAG))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_ACT_FLAG, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_ACT_FLAG_1);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_2.equals(CALLFWD_ACT_FLAG))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_ACT_FLAG, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_ACT_FLAG_2);
			}
			
			// 転送条件
			
			String CALLFWD_CONDITION = (String)parentMap.get("callfwd_condition");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CALLFWD_CONDITION))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_CONDITION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_CONDITION_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CALLFWD_CONDITION))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_CONDITION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_CONDITION_1);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_2.equals(CALLFWD_CONDITION))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_CONDITION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_CONDITION_2);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_3.equals(CALLFWD_CONDITION))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_CONDITION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_CONDITION_3);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_4.equals(CALLFWD_CONDITION))
			{
				bean.sendMessageString(CNW00501SFConst.CALLFWD_CONDITION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_CALLFWD_CONDITION_4);
			}
			
			// 呼出し回数
			String CALLFWD_RINGS = (String)parentMap.get("callfwd_rings");
			bean.sendMessageString(CNW00501SFConst.CALLFWD_RINGS, X31CWebConst.DATABEAN_SET_VALUE, CALLFWD_RINGS);
			
			// 転送先電話番号
			String CALLFWD_NUMBER = (String)parentMap.get("callfwd_number");
			
			bean.sendMessageString(CNW00501SFConst.CALLFWD_NUMBER, X31CWebConst.DATABEAN_SET_VALUE, CALLFWD_NUMBER);
			
			// 留守電蓄積通知設定
			String VMAIL_NOTIFY_FLAG = (String)parentMap.get("vmail_notify_flag");
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(VMAIL_NOTIFY_FLAG))
			{
				bean.sendMessageString(CNW00501SFConst.VMAIL_NOTIFY_FLAG, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(VMAIL_NOTIFY_FLAG))
			{
				bean.sendMessageString(CNW00501SFConst.VMAIL_NOTIFY_FLAG, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_1);
			}
			// 録音メッセージ添付
			String VMAIL_NOTIFY_ATTACH = (String)parentMap.get("vmail_notify_attach");
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(VMAIL_NOTIFY_ATTACH))
			{
				bean.sendMessageString(CNW00501SFConst.VMAIL_NOTIFY_ATTACH, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_VMAIL_NOTIFY_ATTACH_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(VMAIL_NOTIFY_ATTACH))
			{
				bean.sendMessageString(CNW00501SFConst.VMAIL_NOTIFY_ATTACH, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_VMAIL_NOTIFY_ATTACH_1);
			}
			
			// 留守電パスワード
			String VMAIL_PIN = (String)parentMap.get("vmail_pin");
			bean.sendMessageString(CNW00501SFConst.VMAIL_PIN, X31CWebConst.DATABEAN_SET_VALUE, getVmailPinMask(VMAIL_PIN, authFlg));
			
			// 不在時着信通知設定
			String INCALL_NOTIFY_COND = (String)parentMap.get("incall_notify_cond");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(INCALL_NOTIFY_COND))
			{
				bean.sendMessageString(CNW00501SFConst.INCALL_NOTIFY_COND, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_VMAIL_INCALL_NOTIFY_COND_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(INCALL_NOTIFY_COND))
			{
				bean.sendMessageString(CNW00501SFConst.INCALL_NOTIFY_COND, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_VMAIL_INCALL_NOTIFY_COND_1);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_2.equals(INCALL_NOTIFY_COND))
			{
				bean.sendMessageString(CNW00501SFConst.INCALL_NOTIFY_COND, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_VMAIL_INCALL_NOTIFY_COND_2);
			}
			
			// Ｅメールアドレス
			String EMAIL_ADDRESS = (String)parentMap.get("email_address");
			bean.sendMessageString(CNW00501SFConst.EMAIL_ADDRESS, X31CWebConst.DATABEAN_SET_VALUE, EMAIL_ADDRESS);
			
			// 非通知着信拒否設定
			String ANONYMOUS_CALL_REJECTION = (String)parentMap.get("anonymous_call_rejection");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(ANONYMOUS_CALL_REJECTION))
			{
				bean.sendMessageString(CNW00501SFConst.ANONYMOUS_CALL_REJECTION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(ANONYMOUS_CALL_REJECTION))
			{
				bean.sendMessageString(CNW00501SFConst.ANONYMOUS_CALL_REJECTION, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_1);
			}
			
			// 国際発信規制設定
			String GLOBAL_CALL_SCREENING = (String)parentMap.get("global_call_screening");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(GLOBAL_CALL_SCREENING))
			{
				bean.sendMessageString(CNW00501SFConst.GLOBAL_CALL_SCREENING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(GLOBAL_CALL_SCREENING))
			{
				bean.sendMessageString(CNW00501SFConst.GLOBAL_CALL_SCREENING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON1_FLG_1);
			}
			
			// 表示名
			String CHAT_DISPLAY_NAME = (String)parentMap.get("chat_display_name");
			
			bean.sendMessageString(CNW00501SFConst.CHAT_DISPLAY_NAME, X31CWebConst.DATABEAN_SET_VALUE, CHAT_DISPLAY_NAME);
			
			// 表示名の公開設定
			String CHAT_DISPLAY_NAME_SETTING = (String)parentMap.get("chat_display_name_setting");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CHAT_DISPLAY_NAME_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_DISPLAY_NAME_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CHAT_DISPLAY_NAME_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_DISPLAY_NAME_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_1);
			}
			
			// 画像の公開設定
			String CHAT_DISPLAY_IMAGE_SETTING = (String)parentMap.get("chat_display_image_setting");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CHAT_DISPLAY_IMAGE_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_DISPLAY_IMAGE_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CHAT_DISPLAY_IMAGE_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_DISPLAY_IMAGE_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_1);
			}
			
			// 電話帳Ｕｐｌｏａｄの設定
			String CHAT_PHONEBOOK_UPLOAD = (String)parentMap.get("chat_phonebook_upload");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CHAT_PHONEBOOK_UPLOAD))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_PHONEBOOK_UPLOAD, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON3_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CHAT_PHONEBOOK_UPLOAD))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_PHONEBOOK_UPLOAD, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON3_FLG_1);
			}
			
			// 無料判別機の設定
			String CHAT_FREE_PAY_NUMBER_SETTING = (String)parentMap.get("chat_free_pay_number_setting");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CHAT_FREE_PAY_NUMBER_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_FREE_PAY_NUMBER_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON3_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CHAT_FREE_PAY_NUMBER_SETTING))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_FREE_PAY_NUMBER_SETTING, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON3_FLG_1);
			}
			
			// ０５０番号の公開設定
			String CHAT_PUBLIC_050_NUMBER = (String)parentMap.get("chat_public_050_number");
			
			if(JCNStrConst.VOIP_API_RETUNR_CD_0.equals(CHAT_PUBLIC_050_NUMBER))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_PUBLIC_050_NUMBER, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_0);
			}
			if(JCNStrConst.VOIP_API_RETUNR_CD_1.equals(CHAT_PUBLIC_050_NUMBER))
			{
				bean.sendMessageString(CNW00501SFConst.CHAT_PUBLIC_050_NUMBER, X31CWebConst.DATABEAN_SET_VALUE, JCNStrConst.VOIP_API_COMMON2_FLG_1);
			}
			
			// 保存可能残量
			String CHAT_STORAGE_SIZE = (String)parentMap.get("chat_storage_size");
			
			bean.sendMessageString(CNW00501SFConst.CHAT_STORAGE_SIZE, X31CWebConst.DATABEAN_SET_VALUE, CHAT_STORAGE_SIZE);
		}
		
		return bean;
	}
	
	
	

	/**
	 * 項目値取得処理
	 * 
	 * <br>
	 * @param map 項目情報
	 * @param key 項目値取得キー
	 * @return 項目値 マップ項目値がnullの場合は空文字を返却
	 */
	private static String getMapValueOrEmpty(HashMap<String, String> map, String key)
	{
		return null == map || null == (String)map.get(key) ? EMPTY : (String)map.get(key);
	}

	/**
	 * 項目値取得処理
	 * 
	 * <br>
	 * @param map 項目情報
	 * @param key 項目値取得キー
	 * @return 項目値 マップ項目値がnullの場合は"0"を返却
	 */
	private static String getMapValueOrZero(HashMap<String, String> map, String key)
	{
		return null == map || isNull((String)map.get(key)) ? ZERO : (String)map.get(key);
	}

	/**
	 * 金額表示文言編集処理
	 * 
	 * <br>
	 * @param value 金額
	 * @return ##,###円
	 */
	private static String getDispKingakuFormat(String value)
	{
		return new StringBuffer(16).append(isNull(value) ? ZERO : JCNWebCommon.formatNumber(value)).append(UNIT_JPN_MONEY).toString();
	}

	/**
	 * コンテンツ支払い情報.単価(税込価格)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @return コンテンツ支払い情報.単価(税込価格)表示文言
	 */
	private static String getShtTankaTaxIn(String taxarea, String tanka, String tax_rt)
	{
		return getDispKingakuFormat(calcShtTankaTaxIn(taxarea, tanka, tax_rt));
	}

	/**
	 * コンテンツ支払い情報.単価(税込価格)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @return コンテンツ支払い情報.単価(税込価格)
	 */
	private static String calcShtTankaTaxIn(String taxarea, String tanka, String tax_rt)
	{
		String value = ZERO;
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea))
		{
			value = tanka;
		}
		else if (JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			BigDecimal big = null;
			if (!ZERO.equals(tax_rt))
			{
				big = BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN));
				value = String.valueOf(big.multiply(new BigDecimal(tanka)).longValue());
			}
			else
			{
				value = tanka;
			}
		}
		else if (JCNWebConst.TAXAREA_FREE.equals(taxarea))
		{
			value = tanka;
		}
		return value;
	}

	/**
	 * コンテンツ支払い情報.(本体価格)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @return コンテンツ支払い情報.単価(本体価格)表示文言
	 */
	private static String getShtTanka(String taxarea, String tanka, String tax_rt)
	{
		return getDispKingakuFormat(calcShtTanka(taxarea, tanka, tax_rt));
	}

	/**
	 * コンテンツ支払い情報.単価(本体価格)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @return コンテンツ支払い情報.単価(本体価格)
	 */
	private static String calcShtTanka(String taxarea, String tanka, String tax_rt)
	{
		String value = ZERO;
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea))
		{
			BigDecimal big = null;
			if (!ZERO.equals(tax_rt))
			{
				big = BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN));
				value = String.valueOf(new BigDecimal(tanka).divide(big, 0, BigDecimal.ROUND_UP).longValue());
			}
			else
			{
				value = tanka;
			}
		}
		else if (JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			value = tanka;
		}
		else if (JCNWebConst.TAXAREA_FREE.equals(taxarea))
		{
			value = tanka;
		}
		return value;
	}
	// ANK-4346-00-00 ADD START
	/**
	 * コンテンツ支払い情報.単価(本体価格)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @return コンテンツ支払い情報.単価(本体価格)
	 */
	private static String calcCrgTanka(String taxarea, String tanka, String tax_rt)
	{
		String value = ZERO;
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea) || JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			BigDecimal big = null;
			if (!ZERO.equals(tax_rt))
			{
				big = BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN));
				value = String.valueOf(new BigDecimal(tanka).divide(big, 0, BigDecimal.ROUND_UP).longValue());
			}
			else
			{
				value = tanka;
			}
		}
		else if (JCNWebConst.TAXAREA_FREE.equals(taxarea))
		{
			value = tanka;
		}
		return value;
	}
	// ANK-4346-00-00 ADD END

	/**
	 * コンテンツ支払い情報.料金(税込合計)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @return コンテンツ支払い情報.料金(税込合計)表示文言
	 */
	private static String getShtPrcTaxIn(String taxarea, String tanka, String tax_rt, String num)
	{
		return getDispKingakuFormat(calcShtPrcTaxIn(taxarea, tanka, tax_rt, num));
	}

	/**
	 * コンテンツ支払い情報.料金(税込合計)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @return コンテンツ支払い情報.料金(税込合計)
	 */
	private static String calcShtPrcTaxIn(String taxarea, String tanka, String tax_rt, String num)
	{
		return new BigDecimal(calcShtTankaTaxIn(taxarea, tanka, tax_rt)).multiply(new BigDecimal(num)).toString();
	}

	/**
	 * コンテンツ支払い情報.料金(本体合計)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @return コンテンツ支払い情報.料金(本体合計)表示文言
	 */
	private static String getShtPrc(String taxarea, String tanka, String tax_rt, String num)
	{
		return getDispKingakuFormat(calcShtPrc(taxarea, tanka, tax_rt, num));
	}

	/**
	 * コンテンツ支払い情報.料金(本体合計)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @return コンテンツ支払い情報.料金(本体合計)
	 */
	private static String calcShtPrc(String taxarea, String tanka, String tax_rt, String num)
	{
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea))
		{
			double Tax = (BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN))).doubleValue();
			double Tanka = new BigDecimal(calcShtTankaTaxIn(taxarea, tanka, tax_rt)).multiply(new BigDecimal(num)).doubleValue(); //.divide(big)
			String strTanka = String.valueOf((int)Math.ceil(Tanka / Tax));
			return strTanka;
		}
		else if (JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			return new BigDecimal(calcShtTanka(taxarea, tanka, tax_rt)).multiply(new BigDecimal(num)).toString();
		}
		else
		{
			return new BigDecimal(calcShtTanka(taxarea, tanka, tax_rt)).multiply(new BigDecimal(num)).toString();
		}
	}

	// ANK-4346-00-00 ADD START
	/**
	 * コンテンツ課金情報.料金(本体合計)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @return コンテンツ支払い情報.料金(本体合計)
	 */
	
	private static String calcCrgPrc(String taxarea, String tanka, String tax_rt, String num)
	
	{
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea) || JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			double Tax = (BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN))).doubleValue();
			double Tanka = new BigDecimal(tanka).multiply(new BigDecimal(num)).doubleValue(); //.divide(big)
			String strTanka = String.valueOf((int)Math.ceil(Tanka / Tax));
			return strTanka;
		}
		else
		{
			return new BigDecimal(tanka).multiply(new BigDecimal(num)).toString();
		}
	}
	// ANK-4346-00-00 ADD END
	/**
	 * コンテンツ課金情報.単価(税込価格)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.単価(税込価格)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getKakinTankaTaxIn(String taxarea, String tanka, String tax_rt, String plminDiv, boolean isChrgChu)
//	{
//		return getDispKingakuFormat(calcKakinTankaTaxIn(taxarea, tanka, tax_rt, plminDiv, isChrgChu));
//	}
	private static String getKakinTankaTaxIn(String taxarea, String tanka, String tax_rt, boolean isChrgChu)
	{
		return getDispKingakuFormat(calcKakinTankaTaxIn(taxarea, tanka, tax_rt, isChrgChu));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.単価(税込価格)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価(税込み)
	 * @param tax_rt 税率
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.単価(税込価格)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcKakinTankaTaxIn(String taxarea, String tanka, String tax_rt, String plminDiv, boolean isChrgChu)
//	{
//		return (JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) || !isChrgChu) ? ZERO : calcShtTankaTaxIn(taxarea, tanka, tax_rt);
//	}
	private static String calcKakinTankaTaxIn(String taxarea, String tanka, String tax_rt, boolean isChrgChu)
	{
		return ( !isChrgChu) ? ZERO : calcShtTankaTaxIn(taxarea, tanka, tax_rt);
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.(本体価格)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.単価(本体価格)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getKakinTanka(String taxarea, String tanka, String tax_rt, String plminDiv, boolean isChrgChu)
//	{
//		return getDispKingakuFormat(calcKakinTanka(taxarea, tanka, tax_rt, plminDiv, isChrgChu));
//	}
	private static String getKakinTanka(String taxarea, String tanka, String tax_rt, boolean isChrgChu)
	{
		return getDispKingakuFormat(calcKakinTanka(taxarea, tanka, tax_rt, isChrgChu));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.単価(本体価格)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.単価(本体価格)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcKakinTanka(String taxarea, String tanka, String tax_rt, String plminDiv, boolean isChrgChu)
//	{
//		return (JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) || !isChrgChu) ? ZERO : calcShtTanka(taxarea, tanka, tax_rt);
//	}
	private static String calcKakinTanka(String taxarea, String tanka, String tax_rt, boolean isChrgChu)
	{
		return !isChrgChu ? ZERO : calcCrgTanka(taxarea, tanka, tax_rt);
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.料金(税込合計)表示文言取得処理
	 * 
	 * <br>
	 * @param chrgAmnt 課金額
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.料金(本体合計)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getKakinPrcTaxIn(String chrgAmnt, String plminDiv, boolean isChrgChu)
//	{
//		return getDispKingakuFormat(calcKakinPrcTaxIn(chrgAmnt, plminDiv, isChrgChu));
//	}
	private static String getKakinPrcTaxIn(String chrgAmnt, boolean isChrgChu)
	{
		return getDispKingakuFormat(calcKakinPrcTaxIn(chrgAmnt, isChrgChu));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.料金(税込合計)算出処理
	 * 
	 * <br>
	 * @param chrgAmnt 課金額
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.料金(本体合計)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcKakinPrcTaxIn(String chrgAmnt, String plminDiv, boolean isChrgChu)
//	{
//		return (JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) || !isChrgChu) ? ZERO : chrgAmnt;
//	}
	private static String calcKakinPrcTaxIn(String chrgAmnt, boolean isChrgChu)
	{
		return !isChrgChu ? ZERO : chrgAmnt;
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.料金(本体合計)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.料金(本体合計)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getKakinPrc(String taxarea, String tanka, String tax_rt, String num, String plminDiv, boolean isChrgChu)
//	{
//		return getDispKingakuFormat(calcKakinPrc(taxarea, tanka, tax_rt, num, plminDiv, isChrgChu));
//	}
	private static String getKakinPrc(String taxarea, String tanka, String tax_rt, String num, boolean isChrgChu)
	{
		return getDispKingakuFormat(calcKakinPrc(taxarea, tanka, tax_rt, num, isChrgChu));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.料金(本体合計)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.料金(本体合計)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcKakinPrc(String taxarea, String tanka, String tax_rt, String num, String plminDiv, boolean isChrgChu)
//	{
//		return (JCNWebConst.PLMIN_DIV_RED.equals(plminDiv) || !isChrgChu) ? ZERO : calcShtPrc(taxarea, tanka, tax_rt, num);
//	}
	private static String calcKakinPrc(String taxarea, String tanka, String tax_rt, String num, boolean isChrgChu)
	{
		return !isChrgChu ? ZERO : calcCrgPrc(taxarea, tanka, tax_rt, num);
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.請求額(税込合計)表示文言取得処理
	 * 
	 * <br>
	 * @param chrgAmnt 課金額
	 * @param salesGenAmnt 課金訂正額(売上減額)
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.請求額(税込合計)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getSeikyuPrcTaxIn(String chrgAmnt, String salesGenAmnt, String compensation, String plminDiv, boolean isChrgChu)
//	{
//		return getDispKingakuFormat(calcSeikyuPrcTaxIn(chrgAmnt, salesGenAmnt, compensation, plminDiv, isChrgChu));
//	}
	private static String getSeikyuPrcTaxIn(String chrgAmnt, String salesGenAmnt, boolean isChrgChu)
	{
		return getDispKingakuFormat(calcSeikyuPrcTaxIn(chrgAmnt, salesGenAmnt, isChrgChu));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.請求額(税込合計)算出処理
	 * 
	 * <br>
	 * @param chrgAmnt 課金額
	 * @param salesGenAmnt 課金訂正額(売上減額)
	 * @param isChrgChu true:課金中、課金以外
	 * @return コンテンツ課金情報.請求額(税込合計)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcSeikyuPrcTaxIn(String chrgAmnt, String salesGenAmnt, String compensation, String plminDiv, boolean isChrgChu)
//	{
//		// （課金情報・料金（税込価格））−（課金情報・課金訂正額（売上減額））−（課金情報・課金訂正額（補償費））を編集
//		return new BigDecimal(calcKakinPrcTaxIn(chrgAmnt, plminDiv, isChrgChu)).subtract(
//				new BigDecimal(salesGenAmnt).add(new BigDecimal(compensation))).toString();
//	}
	private static String calcSeikyuPrcTaxIn(String chrgAmnt, String salesGenAmnt, boolean isChrgChu)
	{
		// （課金情報・料金（税込価格））−（課金情報・課金訂正額（売上減額））を編集
		return new BigDecimal(calcKakinPrcTaxIn(chrgAmnt, isChrgChu)).subtract(
				new BigDecimal(salesGenAmnt)).toString();
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.請求額(本体合計)表示文言取得処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @param isChrgChu true:課金中、課金以外
	 * @param chrgAmnt 課金額
	 * @param salesGenAmnt 課金訂正額(売上減額)
	 * @param compensation 課金訂正額(補償費)
	 * @return コンテンツ課金情報.請求額(本体合計)表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getSeikyuPrc(String taxarea, String tanka, String tax_rt, String num, String plminDiv, boolean isChrgChu, String chrgAmnt,
//			String salesGenAmnt, String compensation)
//	{
//		return getDispKingakuFormat(calcSeikyuPrc(taxarea, tanka, tax_rt, num, plminDiv, isChrgChu, chrgAmnt, salesGenAmnt, compensation));
//	}
	private static String getSeikyuPrc(String taxarea, String tanka, String tax_rt, String num, boolean isChrgChu, String chrgAmnt,
			String salesGenAmnt)
	{
		return getDispKingakuFormat(calcSeikyuPrc(taxarea, tanka, tax_rt, num,isChrgChu, chrgAmnt, salesGenAmnt));
	}
	// ANK-4346-00-00 MOD END

	/**
	 * コンテンツ課金情報.請求額(本体合計)算出処理
	 * 
	 * <br>
	 * @param taxarea 税区分
	 * @param tanka 単価
	 * @param tax_rt 税率
	 * @param num 数量
	 * @param isChrgChu true:課金中、課金以外
	 * @param chrgAmnt 課金額
	 * @param salesGenAmnt 課金訂正額(売上減額)

	 * @return コンテンツ課金情報.請求額(本体合計)
	 */
	// ANK-4346-00-00 MOD START
//	private static String calcSeikyuPrc(String taxarea, String tanka, String tax_rt, String num, String plminDiv, boolean isChrgChu, String chrgAmnt,
//			String salesGenAmnt, String compensation)
	private static String calcSeikyuPrc(String taxarea, String tanka, String tax_rt, String num, boolean isChrgChu, String chrgAmnt,
			String salesGenAmnt)
	// ANK-4346-00-00 MOD END
	{
		// ANK-4346-00-00 MOD START
//		if (ZERO.equals(salesGenAmnt) && ZERO.equals(compensation))
//		{
//			return calcKakinPrc(taxarea, tanka, tax_rt, num, plminDiv, isChrgChu);
//		}
//
//		String value = calcSeikyuPrcTaxIn(chrgAmnt, salesGenAmnt, compensation, plminDiv, isChrgChu);
		if (ZERO.equals(salesGenAmnt))
		{
			return calcKakinPrc(taxarea, tanka, tax_rt, num, isChrgChu);
		}

		String value = calcSeikyuPrcTaxIn(chrgAmnt, salesGenAmnt, isChrgChu);
		// ANK-4346-00-00 MOD END
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea) || JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			BigDecimal big = null;
			if (!ZERO.equals(tax_rt))
			{
				big = BigDecimal.ONE.add(new BigDecimal(tax_rt).divide(BIG_DECIMAL_100, 20, BigDecimal.ROUND_DOWN));
				value = String.valueOf(new BigDecimal(value).divide(big, 0, BigDecimal.ROUND_UP).longValue());
			}
		}
		return value;
	}

	/**
	 * 課金対象年月表示文言取得処理
	 * 
	 * <br>
	 * @param ymd 日付
	 * @return yyyy年mm月度
	 */
	private static String formatJpYm(String ymd)
	{
		if (isNull(ymd))
		{
			return EMPTY;
		}
		StringBuffer sb = new StringBuffer();
		sb.append(LEFT_BOLD_APARENTHESIS);
		int ymdLen = ymd.length();
		if (4 <= ymdLen)
		{
			sb.append(ymd.substring(0, 4)).append(MSG_FORMAT_JP_YEAR);
		}
		if (6 <= ymdLen)
		{
			sb.append(ymd.substring(4, 6)).append(MSG_FORMAT_JP_MONTH);
		}
		sb.append(RIGHT_BOLD_APARENTHESIS);
		return sb.toString();
	}

	/**
	 * コンテンツＩＤ表示文言取得処理
	 * 
	 * <br>
	 * @param cont_svc_cd コンテンツサービスコード
	 * @param cont_sonzai_flg コンテンツマスタ存在フラグ
	 * @param cont_cd コンテンツコード
	 * @param cont_out_cd コンテンツ外部コード
	 * @return コンテンツＩＤ表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getContId(String cont_svc_cd, String cont_sonzai_flg, String cont_cd, String cont_out_cd)
	private static String getContId(String cont_svc_cd)
	// ANK-4346-00-00 MOD END
	{

		StringBuffer sb = new StringBuffer(16);
		sb.append(cont_svc_cd);
		// ANK-4346-00-00 DEL START
//		if (JCNWebConst.CONT_SONZAI_FLG_NASHI.equals(cont_sonzai_flg))
//		{
//			sb.append(cont_out_cd);
//		}
//		else if (JCNWebConst.CONT_SONZAI_FLG_ARI.equals(cont_sonzai_flg))
//		{
//			sb.append(cont_cd);
//		}
//		else
//		{
//			sb.append(cont_cd);
//		}
		// ANK-4346-00-00 DEL END
		return sb.toString();
	}

	/**
	 * コンテンツ名下部タイトル表示文言取得処理
	 * 
	 * <br>
	 * @param cont_nm コンテンツ名
	 * @param value 表示名
	 * @return コンテンツサービス名表示文言
	 */
	// ANK-4346-00-00 MOD START
//	private static String getContNmUnderTitle(String cont_nm, String trendmicro_cereal_no, String hanyo_column, String hanyo_value)
	private static String getContNmUnderTitle(String cont_nm, String value)
	// ANK-4346-00-00 MOD END
	{
		StringBuffer sb = new StringBuffer(16);
		// ANK-4346-00-00 DEL START
//		String value = key;
//		// ANK-2531-00-00 MOD START
//		// ANK-2136-00-00 2014/7/8 MOD START
//		//if (!isNull(trendmicro_cereal_no) || JCNStrConst.PC_SOFT_TUKAIHOUDAI.equals(hanyo_column))
//		if (!isNull(trendmicro_cereal_no) || JCNStrConst.PC_SOFT_TUKAIHOUDAI.equals(hanyo_column) || JCNStrConst.APP_CHOHOUDAI.equals(hanyo_column))
//		// ANK-2136-00-00 2014/7/8 MOD END
//		// ANK-2531-00-00 MOD END
//		{
//			value = MSG_CONT_NM_SERIAL_1;
//		}
//		// ANK-2136-00-00 2014/7/8 ADD START
//		else if (JCNStrConst.S_VBID.equals(hanyo_column))
//		{
//			value = MSG_CONT_NM_VBID_2;
//		}
//		// ANK-2136-00-00 2014/7/8 ADD END
//		// ANK-2511-00-00 ADD START
//		else if (JCNStrConst.AOSBOX.equals(hanyo_column))
//		{
//			value = MSG_CONT_NM_LICENSE_KEY;
//		}
//		// ANK-2511-00-00 ADD END
//		else if (!isNull(hanyo_value))
//		{
//			value = JCNWebCommon.convFullToHalfByKata(hanyo_column);
//		}
		// ANK-4346-00-00 DEL END
		
		if (!isNull(value))
		{
			sb.append(LEFT_APARENTHESIS).append(value).append(RIGHT_APARENTHESIS);
		}
		return sb.toString();
	}

	/**
	 * コンテンツ名表示文言取得処理
	 * 
	 * <br>
	 * @param cont_nm コンテンツ名
	 * @param trendmicro_cereal_no トレンドマイクロシリアル番号
	 * @param hanyo_value 汎用項目値
	 * @return コンテンツサービス名表示文言
	 */
	// ANK-2136-00-00 2014/7/8 MOD START
	private static String getContNm(String cont_nm, String param_1)
	// ANK-2136-00-00 2014/7/8 MOD END
	{
		StringBuffer sb = new StringBuffer(16);
		sb.append(cont_nm).append(JCNStrConst.S_LINE_SEPARAOR_LF);
		String value = null;
		// ANK-2136-00-00 2014/7/8 MOD START
		if (!isNull(param_1))
		{
			value = param_1;
		}
		// ANK-2136-00-00 2014/7/8 MOD END
		if (!isNull(value))
		{
			sb.append(LEFT_APARENTHESIS).append(value).append(RIGHT_APARENTHESIS);
		}
		return sb.toString();
	}

	/**
	 * 決済方法表示文言取得処理
	 * 
	 * <br>
	 * @param cont_payway_cd コンテンツ支払い方法コード
	 * @param crecard_no クレジットカード番号
	 * @param isp_kssai_svc_kei_no ＩＳＰ決済サービス契番号
	 * @param crecard_comp_ali クレジットカード会社略称
// ｖ20.00.00 ADD START
	 * @param crecard_yk_kigen クレジットカード有効期限
	 * @param crecard_no_azkri_id クレジットカード番号預りID
// ｖ20.00.00 ADD END
	 * @return 決済方法表示文言
	 */
// ｖ20.00.00 MOD START
//	private static String getContPaywayNm(String cont_payway_cd, String crecard_no, String isp_kssai_svc_kei_no, String crecard_comp_ali, boolean authFlg)
	private static String getContPaywayNm(String cont_payway_cd, String crecard_no, String isp_kssai_svc_kei_no, String crecard_comp_ali, String crecard_yk_kigen, String crecard_no_azkri_id, boolean authFlg)
// ｖ20.00.00 MOD END
	{
		StringBuffer sb = new StringBuffer(16);
		if (JCNWebConst.PAYWAY_CD_FREE.equals(cont_payway_cd))
		{
			// 処理なし
		}
		else
		{
			if (!isNull(crecard_comp_ali) || !isNull(crecard_no))
			{
// ｖ20.00.00 MOD START
//				sb.append(MSG_PAYWAY_CD_CRECA_1);
				// 共通部品を使用し決算方法表現文言を作成する。
				sb.append(JCNWebCommon.editCreditCard(crecard_comp_ali, crecard_no, crecard_yk_kigen, crecard_no_azkri_id));
			}
//			if (!isNull(crecard_comp_ali))
//			{
//				sb.append(MSG_PAYWAY_CD_CRECA_2).append(crecard_comp_ali);
//				// TODO 表示用のマスクのパターンが確定したら対応
//				// マスク処理はJCNWebCommon.forMaskを使用
//				// sb.append(MSG_PAYWAY_CD_CRECA_2).append(JCNWebCommon.forMask(crecard_comp_ali));
//			}
//
//			if (!isNull(crecard_no))
//			{
//				sb.append(MSG_PAYWAY_CD_CRECA_2).append(JCNWebCommon.crecardNoEdit(crecard_no));
//				// TODO 表示用のマスクのパターンが確定したら対応
//				// マスク処理はJCNWebCommon.forMaskを使用
//				// sb.append(MSG_PAYWAY_CD_CRECA_2).append(JCNWebCommon.crecardNoEdit(JCNWebCommon.forMask(crecard_no)));
//			}
//
//			if (isNull(isp_kssai_svc_kei_no)){
//				// 共通部品を使用し決算方法表現文言を作成する。
//				sb.append(JCNWebCommon.editCreditCard(crecard_comp_ali, crecard_no, crecard_yk_kigen, crecard_no_azkri_id));			
//			}
// ｖ20.00.00 MOD END
			// クレジットカードマスキング
			if(!isNull(crecard_no) && !authFlg)
			{
				sb = new StringBuffer();
				sb.append(JCNStrConst.MASK_CARD_NO);
			}
			
			
			if (!isNull(isp_kssai_svc_kei_no))
			{
				sb.append(MSG_PAYWAY_CD_ISP_1).append(isp_kssai_svc_kei_no).append(MSG_PAYWAY_CD_ISP_2);
			}
		}
		return sb.toString();
	}

	/**
	 * オブジェクトに値が設定されているか判定します。
	 * <br>
	 * @param arg0 判定するオブジェクト
	 * @return オブジェクトに値が設定されていない場合はtrue
	 */
	private static boolean isNull(Object arg0)
	{
		return null == arg0 || EMPTY.equals(arg0);
	}

	/**
	 * 最終日付編集処理
	 * 
	 * <br>
	 * @param date 日付文字列
	 * @return 固定終了年月日の場合""を返却、左記以外の場合引数を返却する。
	 */
	private static String getEndDateToEmpty(String date)
	{
		return JCNStrConst.S_END_DATE.equals(date) ? EMPTY : date;
	}
	
	/**
	 * 050オプション設定照会取得情報マスキング処理
	 * authFlgがfalseの時に、マスキングを実施する。
	 * <br>
	 * @param vmail_pin 留守電パスワード
	 * @param authFlg 権限フラグ
	 * @return 050オプション設定照会情報のマスキング処理文言
	 */
	private static String getVmailPinMask(String vmail_pin, boolean authFlg)
	{
		StringBuffer sb = new StringBuffer(4);
		
		// 留守電パスワードのマスキング
		if(!authFlg)
		{
			sb = new StringBuffer(JCNStrConst.VOIP_VMAIL_PIN_MASK);
		}
		else
		{
			if (!isNull(vmail_pin))
			{
				sb.append(vmail_pin);
			}
		}
		return sb.toString();
	}
	// ANk-4346-00-00 ADD START
	/**
	 * 税区分から税区分名に変換する
	 * <br>
	 * @param taxarea 税区分
	 * @return 税区分名
	 */
	private static String getTaxaNm(String taxarea)
	{
		String value = EMPTY;
		if (JCNWebConst.TAXAREA_INCLUSIVE.equals(taxarea))
		{
			value = "内税";
		}
		else if (JCNWebConst.TAXAREA_EXCLUSIVE.equals(taxarea))
		{
			value = "外税";
		}
		else if (JCNWebConst.TAXAREA_FREE.equals(taxarea))
		{
			value = "非課税";
		}
		return value;
		
	}
	// ANk-4346-00-00 ADD END
	
}