/*******************************************************************************
 * All Rights reserved,Copyright (c) K-Opticom
 ********************************************************************************
 *＜プログラム内容＞
 * システム名        ：eo顧客基幹システム
 * モジュール名      ：JKKTelnoStatJudgeCC
 * ソースファイル名  ：JKKTelnoStatJudgeCC.java
 * 作成者            ：富士通
 * 日付              ：2024年01月25日
 *＜機能概要＞
 * 電話番号状態判定部品
 *＜修正履歴＞
 *   バージョン    修正日      修正者      修正内容
 *  v72.00.00      2024/01/25  FJ)寺田     新規作成 【ANK-4494-00-00】双方向番ポ STEP1
 *  v72.00.00      2024/08/15  FJ)寺田     【ANK-4494-00-00】双方向番ポ STEP2
 *  
 ********************************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.bp.custom.constant.JKKTelnoStatJudgeConstCC;
import com.fujitsu.futurity.bp.x21.bpm.ServiceComponentRequestInvoker;
import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;
import com.fujitsu.futurity.bp.x21.cc.AbstractCommonComponent;
import com.fujitsu.futurity.bp.x21.cc.exception.SCCallException;
import com.fujitsu.futurity.common.JCMConstants;
import com.fujitsu.futurity.common.x01.sc.SCControlMapKeys;
import com.fujitsu.futurity.mapping.bp.common.TemplateErrorUtil;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.common.JCMAPLConstMgr;
import com.fujitsu.futurity.model.ejb.common.JSYejbLog;

import eo.common.util.JKKStringUtil;
import eo.ejb.cbs.cbsmsg.EKK0191B040CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0191B040CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EZM0121A010CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0121A010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EZM0541A010CBSMsg;
import eo.ejb.cbs.cbsmsg.EZM0541A010CBSMsg1List;
/**
 * 電話番号状態判定部品クラス
 * 
 * @author FJ)寺田
 * 
 */
public class JKKTelnoStatJudgeCC extends AbstractCommonComponent {

	/**
	 * コンストラクタ. <br>
	 */
	public JKKTelnoStatJudgeCC() {
	}

	/** リストID */
	private static final String LIST_ID = "TELNOSTATJUDGECC_LIST";

	/** 事業者コード_自社 */
	private static final String TSJGS_JISHA = "1";

	/** 事業者コード_他社 */
	private static final String TSJGS_TASYA = "0";

	/** 有無_有 */
	private static final String UMU_ARI = "1";

	/** 有無_無 */
	private static final String UMU_NASHI = "0";

	/** 要求種別コード:消去 */
	private static final String YOKYU_SBT_CD_DELETE = "08";

	/** 番号コード:01:0ABJ */
	private static final String NO_CD_0ABJ = "01";

	/** 番号コード:02:050 */
	private static final String NO_CD_050 = "02";

	/** 個人法人番号帯コード_個人(初期個人法人番号帯コード含む) */
	private static final String KOJIN_HOJIN_TLN_TAI_CD_KOJIN = "1";

	/** 個人法人番号帯コード_法人(初期個人法人番号帯コード含む) */
	private static final String KOJIN_HOJIN_TLN_TAI_CD_HOUJIN = "2";

	/**
	 * <dl>
	 * <dt>処理概要：
	 * <dd>デバッグログを出力します<BR>
	 * <dt>処理補足：
	 * <dd>
	 * </dl>
	 * 
	 * @param dumpObj 出力するオブジェクト
	 */
	private void printlnEjbLog(Object dumpObj) {
		JSYejbLog.println(JSYejbLog.DEBUG, this.getClass(), dumpObj, null, null, null);
	}

	/**
	 * 電話番号状態判定処理. 電話番号をKeyに電場番号の状態を判定する。
	 * 
	 * <br>
	 * 
	 * @param param モデルグループ、コントロールマップを含むリクエストパラメータ
	 * @param fixedText ユーザ任意文字列(TELNOSTATJUDGECC)
	 * @throws Exception 例外が発生した場合
	 */
	@SuppressWarnings("unchecked")
	public IRequestParameterReadWrite telnoStatJudge(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Throwable {

		printlnEjbLog("JKKTelnoStatJudgeCC:start");
		
		HashMap<String, Object> inMap = (HashMap<String, Object>) param.getData(fixedText);

		if (inMap == null) {
			inMap = new HashMap<String, Object>();
			param.setData(fixedText, inMap);
		}

		// 電話番号 ← 電話番号状態判定マップ．電話番号
		String telno = (String) inMap.get(JKKTelnoStatJudgeConstCC.TELNO);

		ArrayList childList = null;
		childList = (ArrayList) inMap.get(LIST_ID);

		if (childList == null) {
			childList = new ArrayList();
		}

		HashMap<Object, Object> map = new HashMap<Object, Object>();

		// 電話番号が""or nullの場合、判定せずに状態を返却して終了
		if (telno == null || "".equals(telno)) {
			printlnEjbLog("JKKTelnoStatJudgeCC:電話番号が空 or nullのため判定せず返却します。");
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_99);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, null);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, null);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, null);
			childList.add(map);
			inMap.put(LIST_ID, childList);

			printlnEjbLog("JKKTelnoStatJudgeCC: 判定結果 : " 
					+ JKKTelnoStatJudgeConstCC.TELNO_NM + " : " + telno + " / " 
					+ JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV) + " / " 
					+ JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV) + " / " 
					+ JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM) + " / " 
					+ JKKTelnoStatJudgeConstCC.MONAIBMPUM_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.MONAIBMPUM) + " / " 
			);

			return param;
		}

		// ■電話番号一意照会を実施
		JKKTelnoStatJudgeMapperCC telInfoMapper = new JKKTelnoStatJudgeMapperCC();
		HashMap<String, Object> inMapEZM0121A010 = telInfoMapper.editInMsgEZM0121A010(param, telno);
		CAANMsg outMapEZM0121A010 = callSvcInter(handle, param, inMapEZM0121A010, fixedText);

		// ■サービス契約内訳＜eo光電話＞一意照会（電話番号）を実施
		HashMap<String, Object> inMapEKK0191B040 = telInfoMapper.editInMsgEKK0191B040(param, telno);
		CAANMsg outMapEKK0191B040 = callSvcInter(handle, param, inMapEKK0191B040, fixedText);

		// ENUM切替履歴を実施
		HashMap<String, Object> inMapEZM0541A010 = telInfoMapper.editInMsgEZM0541A010(param, telno);
		CAANMsg outMapEZM0541A010 = callSvcInter(handle, param, inMapEZM0541A010, fixedText);

		// 電話番号状態判定処理
		judgeImplementation(map, outMapEZM0121A010, outMapEKK0191B040, outMapEZM0541A010);

		printlnEjbLog("JKKTelnoStatJudgeCC: 判定結果 : " 
				+ JKKTelnoStatJudgeConstCC.TELNO_NM + " : " + telno + " / " 
				+ JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV) + " / " 
				+ JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV) + " / " 
				+ JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM) + " / " 
				+ JKKTelnoStatJudgeConstCC.MONAIBMPUM_NM + " : " + map.get(JKKTelnoStatJudgeConstCC.MONAIBMPUM) + " / " 
		);

		// 返却処理
		childList.add(map);
		inMap.put(LIST_ID, childList);
		
		printlnEjbLog("JKKTelnoStatJudgeCC:end");
		
		return param;
	}

	/**
	 * 電話番号状態判定処理 <br>
	 * 
	 * @param map 電話番号状態判定MAP
	 * @param outMapEZM0121A010 電話番号マスタ一意照会取得データ
	 * @param outMapEKK0191B040 サービス契約内訳＜eo光電話＞一意照会（電話番号）取得データ
	 * @param outMapETU0051B010 通信事業者一覧照会取得データ
	 * @param outMapEZM0541A010 ENUM切替履歴一意照会取得データ
	 * @return 業務データ
	 * @throws Throwable
	 */
	private void judgeImplementation(
			HashMap<Object, Object> map
			, CAANMsg outMapEZM0121A010
			, CAANMsg outMapEKK0191B040
			, CAANMsg outMapEZM0541A010) throws Throwable {

		// 電話番号状態判定 準備 処理
		// 電話番号検索ヒット有無
		String tel_data_um = UMU_NASHI;
		// 番号コード
		String no_cd = "";
		// 個人法人電話番号帯コード
		String kojin_hojin_tln_tai_cd = "";
		// 初期個人法人電話番号帯コード
		String shk_kojin_hojin_tln_tai_cd = "";
		// 電話番号取得通信事業者_自社他社フラグ
		String tln_stku_tsjgs_flg = "";
		// 移転元通信事業者_自社他社フラグ
		String itnm_tsjgs_flg = "";
		// 移転先通信事業者_自社他社フラグ
		String itns_tsjgs_flg = "";

		CAANMsg[] rsltEZM0121A010List = outMapEZM0121A010.getCAANMsgList(EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST);
		if (rsltEZM0121A010List != null && rsltEZM0121A010List.length > 0) {

			// 電話番号検索ヒット有無
			tel_data_um = UMU_ARI;

			// 番号コード
			no_cd = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.NO_CD);

			// 個人法人電話番号帯コード
			kojin_hojin_tln_tai_cd = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.KOJIN_HOJIN_TLN_TAI_CD);

			// 初期個人法人電話番号帯コード
			shk_kojin_hojin_tln_tai_cd = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.SHK_KOJIN_HOJIN_TLN_TAI_CD);

			// 電話番号取得通信事業者_自社他社フラグ
			tln_stku_tsjgs_flg = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.TLN_STKU_TSJGS_JISHA_TASHA_FLG);

			// 移転元通信事業者_自社他社フラグ
			itnm_tsjgs_flg = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.ITNM_TSJGS_JISHA_TASHA_FLG);

			// 移転先通信事業者_自社他社フラグ
			itns_tsjgs_flg = getRsltMsgListValue(outMapEZM0121A010, EZM0121A010CBSMsg.EZM0121A010CBSMSG1LIST, EZM0121A010CBSMsg1List.ITNS_TSJGS_JISHA_TASHA_FLG);

		}

		// サービス契約内訳データ有無
		String serviceKei_data_um = UMU_NASHI;
		// 番ポ有無
		String bmp_um = "";

		CAANMsg[] rsltEKK0191B040List = outMapEKK0191B040.getCAANMsgList(EKK0191B040CBSMsg.EKK0191B040CBSMSG1LIST);
		if (rsltEKK0191B040List != null && rsltEKK0191B040List.length > 0) {
			// サービス契約内訳データ有無
			serviceKei_data_um = UMU_ARI;
			// 番ポ有無
			bmp_um = getRsltMsgListValue(outMapEKK0191B040, EKK0191B040CBSMsg.EKK0191B040CBSMSG1LIST, EKK0191B040CBSMsg1List.BMP_UM);
		}
		
		String yokyu_sbt_cd = "";
		// ENUM切替履歴処理
		CAANMsg[] rsltEZM0541A010List = outMapEZM0541A010.getCAANMsgList(EZM0541A010CBSMsg.EZM0541A010CBSMSG1LIST);
		if (rsltEZM0541A010List != null && rsltEZM0541A010List.length > 0) {
			// 要求種別コード
			yokyu_sbt_cd = getRsltMsgListValue(outMapEZM0541A010, EZM0541A010CBSMsg.EZM0541A010CBSMSG1LIST, EZM0541A010CBSMsg1List.YOKYU_SBT_CD);
		}

		// 電話番号状態判定　処理------------------
		if (UMU_NASHI.equals(tel_data_um) && YOKYU_SBT_CD_DELETE.equals(yokyu_sbt_cd)) {
			// 電話番号マスタデータ：無 && ENUM切替履歴:"08"(消去)の場合、
			// NO.13 番ポあり(ポートアウト後)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_13);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_050.equals(no_cd)) {
			// 電話番号マスタデータ：有 && 番号コード:02:050の場合、
			// NO.97 判定対象外(050コード)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_97);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, null);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, null);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, null);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) && 
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) && 
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無の場合、
			// NO.01 番ポなし(未使用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_01);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) && 
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) && 
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無の場合、
			// NO.01 番ポなし(未使用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_01);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) && 
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) && 
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.02 番ポなし(使用中)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_02);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) && 
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) && 
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.03 番ポなし(番号取得事業者戻り・完了後)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_03);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:無の場合、
			// NO.04 番ポなし(ポートアウト状態)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_04);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:無の場合、
			// NO.04 番ポなし(ポートアウト状態)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_04);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.04 番ポなし(ポートアウト状態) (強制利用終了(+同時ポートアウト)用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_04);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.04 番ポなし(ポートアウト状態)(強制利用終了(+同時ポートアウト)用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_04);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.05 番ポなし(番号取得事業者戻り)(切替前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_05);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.05 番ポなし(番号取得事業者戻り)(切替前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_05);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.06 番ポなし(番号取得事業者戻り)(切替後〜夜間バッチ前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_06);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.12-A 番ポあり(使用中)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_12);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.12-A 番ポあり(使用中)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_12);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無場合、
			// NO.12-B 番ポあり(番ポ廃止前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_12);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無の場合、
			// NO.12-B 番ポあり(番ポ廃止前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_12);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_NASHI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(kojin_hojin_tln_tai_cd)) {
			// 電話番号マスタに該当電話番号あり && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：個人 && 個人法人番号帯コード：法人の場合、
			// NO.98 判定対象外(法人データ系) ※網内番ポ
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_98);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, null);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, null);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, null);
		}
		
// ANK-4494-00-00 STEP2 DEL START
//		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
//				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
//				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg)) {
//			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
//			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
//			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
//			// NO.07 番ポなし(網内番ポ)
//			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_07);
//			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
//			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
//			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
//		}
// ANK-4494-00-00 STEP2 DEL END

// ANK-4494-00-00 STEP2 ADD START
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無の場合、
			// NO.07 番ポなし(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_07);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.07 番ポなし(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_07);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_NASHI.equals(serviceKei_data_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:無の場合、
			// NO.08 番ポなし(網内番ポ)(番号取得事業者戻り・完了後)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_08);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
// ANK-4494-00-00 STEP2 ADD END

		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.08 番ポなし(網内番ポ)(番号取得事業者戻り・完了後)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_08);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.10_A 番ポなし(網内番ポ)(番号取得事業者戻り)(切替前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_10);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.10_A 番ポなし(網内番ポ)(番号取得事業者戻り)(切替前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_10);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ 
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
			// NO.11 番ポなし(網内番ポ)(番号取得事業者戻り)(切替後〜夜間バッチ前)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_11);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}

// ANK-4494-00-00 STEP2 ADD START
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.09 番ポなし(網内番ポ)(ポートアウト状態)(強制利用終了(+同時ポートアウト)用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_09);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
				UMU_ARI.equals(serviceKei_data_um) && UMU_NASHI.equals(bmp_um)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
			// && サービス契約内訳データ:有 && 番ポ有無：無の場合、
			// NO.09 番ポなし(網内番ポ)(ポートアウト状態)(強制利用終了(+同時ポートアウト)用)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_09);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// NO.14 番ポあり(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
			// NO.14 番ポあり(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// NO.14 番ポあり(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_KOJIN.equals(kojin_hojin_tln_tai_cd) &&
				TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg)
				) {
			// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
			// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：個人
			// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
			// NO.14 番ポあり(網内番ポ)
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
		}
// ANK-4494-00-00 STEP2 ADD END

		else if (UMU_ARI.equals(tel_data_um) && NO_CD_0ABJ.equals(no_cd) &&
				KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(shk_kojin_hojin_tln_tai_cd) && KOJIN_HOJIN_TLN_TAI_CD_HOUJIN.equals(kojin_hojin_tln_tai_cd)) {
			if (TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
					UMU_NASHI.equals(serviceKei_data_um)) {
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
				// && サービス契約内訳データ:無の場合、
				// NO.09 番ポなし(網内番ポ)(ポートアウト状態)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_09);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
					UMU_NASHI.equals(serviceKei_data_um)) {
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
				// && サービス契約内訳データ:無の場合、
				// NO.09 番ポなし(網内番ポ)(ポートアウト状態)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_09);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_ARI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
					UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:他社
				// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
				// NO.10_B 番ポなし(網内番ポ)(番号取得事業者戻り)(切替前)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_10);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (TSJGS_JISHA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_TASYA.equals(itns_tsjgs_flg) &&
					UMU_ARI.equals(serviceKei_data_um) && UMU_ARI.equals(bmp_um)) {
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:自社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:他社
				// && サービス契約内訳データ:有 && 番ポ有無：有の場合、
				// NO.10_B 番ポなし(網内番ポ)(番号取得事業者戻り)(切替前)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_10);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_JISHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}

// ANK-4494-00-00 STEP2 ADD START
			else if (JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg))
			{
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
				// NO.14 番ポあり(網内番ポ)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_JISHA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg))
			{
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:自社 && 移転先通信事業者コード:自社
				// NO.14 番ポあり(網内番ポ)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (JKKStringUtil.isNullBlank(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg))
			{
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:NULL && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
				// NO.14 番ポあり(網内番ポ)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
			else if (TSJGS_TASYA.equals(tln_stku_tsjgs_flg) && TSJGS_TASYA.equals(itnm_tsjgs_flg) && TSJGS_JISHA.equals(itns_tsjgs_flg))
			{
				// 電話番号マスタデータ：有 && 番号コード:01:0ABJ
				// && 初期個人法人番号帯コード：法人 && 個人法人番号帯コード：法人
				// && 電話番号取得通信事業者コード:他社 && 移転元通信事業者コード:他社 && 移転先通信事業者コード:自社
				// NO.14 番ポあり(網内番ポ)
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_14);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV_TASHA);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, JKKTelnoStatJudgeConstCC.PORTOUTSTATUM_NASHI);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, JKKTelnoStatJudgeConstCC.MONAIBMPUM_ARI);
			}
// ANK-4494-00-00 STEP2 ADD END

			else {
				// 上記以外、
				// NO.98 判定対象外(法人データ系) ※網内番ポ
				map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_98);
				map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, null);
				map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, null);
				map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, null);
			}
		}
		else {
			// 上記以外、
			// NO.99 判定不可
			map.put(JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV, JKKTelnoStatJudgeConstCC.TELNOJUDGEDIV_99);
			map.put(JKKTelnoStatJudgeConstCC.TLNSTKUTSJGS_JISHATASHADIV, null);
			map.put(JKKTelnoStatJudgeConstCC.PORTOUTSTATUM, null);
			map.put(JKKTelnoStatJudgeConstCC.MONAIBMPUM, null);
		}
	}

	/**
	 * サービスインターフェース呼び出し処理です。 <br>
	 * 
	 * @param handle セッションマネージャなどを持ったハンドル
	 * @param param モデルグループ、コントロールマップを含むパラメータオブジェクト
	 * @param siInMap サービスインターフェースの入力マップ
	 * @return 業務データ
	 * @throws Throwable
	 */
	private CAANMsg callSvcInter(SessionHandle handle, IRequestParameterReadWrite param, HashMap<String, Object> siInMap, String fixedText) throws Throwable {
		// サービスI/F実行するサービスを生成
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();

		// サービスインターフェースの呼び出し
		Map<?, ?> rsltMap = scCall.run(siInMap, handle);
		// エラーマッピング処理
		editResultRP(rsltMap, param, fixedText);
		// エラーチェック処理
		errChk(rsltMap);
		// 業務データ取得処理
		CAANMsg workData = getWorkCAANMsg(rsltMap);

		return workData;
	}

	/**
	 * 業務データの取得処理です。 <br>
	 * 
	 * @param workMapKey 業務データのマップキー
	 * @param rslt SVIFの実行結果データ
	 * @return 業務データ
	 */
	private CAANMsg getWorkCAANMsg(Map<?, ?> rslt) {
		CAANMsg[] templates = (CAANMsg[]) rslt.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg parentTemplate = templates[0];

		return parentTemplate;
	}

	/**
	 * <pre>
	 * サービスコンポーネント実行後に、IRequestParameterReadWriteに必要なデータをマッピングする
	 * 
	 * </pre>
	 * 
	 * @param msgList CAANMsgクラス
	 * @param param 業務データ取得・書込用I/F
	 * @param fixedText ユーザ任意文字列
	 * @return 業務データ取得・書込用I/F
	 * @throws Throwable
	 */
	@SuppressWarnings("unchecked")
	private IRequestParameterReadWrite editResultRP(Map<?, ?> msgList, IRequestParameterReadWrite param, String fixedText) throws Throwable {

		// SCからの戻り値からCAANMsgを取得する。
		CAANMsg[] templates = (CAANMsg[]) msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		// リターンコード取得
		Integer returnCode = (Integer) msgList.get(JCMConstants.RET_CD_INT_KEY);

		// テンプレートID、ステータス取得
		String templateId = template.getString(JCMConstants.TEMPLATE_ID_KEY);
		int templateStatus = template.getInt(JCMConstants.STATUS_INT_KEY);

		if (returnCode.intValue() != 0) {
			templateStatus = 9000;
		}
		if (JCMAPLConstMgr.getString("RETURN_MESSAGE_" + String.format("%1$04d", templateStatus)) == null) {
			templateStatus = 0;
		}

		int bpStatus = 0;
		Object obj = param.getControlMapData(SCControlMapKeys.RETURN_CODE);
		if (obj == null) {
			bpStatus = -1;
		}
		else {
			bpStatus = Integer.parseInt((String) param.getControlMapData(SCControlMapKeys.RETURN_CODE));
		}

		if (templateStatus > bpStatus) {
			// BPにサービスコンポーネントのステータスを設定する。
			String formatStatus = String.format("%1$04d", templateStatus);
			String message = JCMAPLConstMgr.getString("RETURN_MESSAGE_" + formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_CODE, formatStatus);
			param.setControlMapData(SCControlMapKeys.RETURN_MESSAGE, message);
		}

		/* ユーザデータ情報 */
		HashMap inMap = (HashMap) param.getData(fixedText);

		// ユーザデータ情報にエラー情報をマッピング
		// 項目の配列を取得
		Object[][] contents = getContents(templateId);
		// エラーIDをマッピング
		mappingErrId(inMap, template, contents);

		// 明細に対するマッピング処理
		// ※明細1のみ対応
		String msg1ListId = templateId + "CBSMsg1List";
		CAANMsg[] templateArray = template.getCAANMsgList(msg1ListId);
		if (templateArray != null) {
			ArrayList inList = (ArrayList) inMap.get(msg1ListId);
			if (inList == null) {
				inList = new ArrayList();
				inMap.put(msg1ListId, inList);
			}

			for (int i = 0; i < templateArray.length; i++) {
				if (i >= inList.size()) {
					inList.add(new HashMap());
				}

				HashMap childMap = (HashMap) inList.get(i);
				CAANMsg childTemplate = templateArray[i];

				Object[][] msg1ListContents = getContents(msg1ListId);

				mappingErrId(childMap, childTemplate, msg1ListContents);
			}
		}

		// エラー情報のマップを取得
		ArrayList<Object> errList = (ArrayList<Object>) param.getControlMapData(SCControlMapKeys.ERROR_INFO);
		if (errList == null) {
			errList = new ArrayList<Object>();
		}

		// コントロールマップに設定
		param.setControlMapData(SCControlMapKeys.ERROR_INFO, TemplateErrorUtil.getErrorInfo(msgList, errList));

		return param;
	}

	/**
	 * エラーチェック処理です。 <br>
	 * 
	 * @param msgList サービスインタフェース実行結果
	 * @return void
	 * @throws SCCallException
	 */
	private void errChk(Map<?, ?> msgList) throws SCCallException {
		CAANMsg[] templates = (CAANMsg[]) msgList.get(JCMConstants.TEMPLATE_LIST_KEY);
		CAANMsg template = templates[0];

		// リターンコード取得
		Integer returnCode = (Integer) msgList.get(JCMConstants.RET_CD_INT_KEY);

		// ステータス取得
		int templateStatus = template.getInt(JCMConstants.STATUS_INT_KEY);

		if ((0 != returnCode.intValue()) || (0 != templateStatus)) {
			String errMsg = JKKTelnoStatJudgeConstCC.ERR_MSG;
			throw new SCCallException(errMsg, String.valueOf(returnCode), templateStatus);
		}
	}

	/**
	 * 各S/IFのエラーIDをマッピングする
	 * 
	 * @param inMap 入力マップ
	 * @param template サービスIFマップ
	 * @param contents サービスIFの項目配列
	 */
	@SuppressWarnings("unchecked")
	private void mappingErrId(HashMap inMap, CAANMsg template, Object[][] contents) {
		for (int i = 0; contents != null && i < contents.length; i++) {
			String element = null;
			element = (String) contents[i][0];
			if (element.endsWith("_err")) {
				if (!template.isNull(element)) {
					if (!inMap.containsKey(element)) {
						inMap.put(element, template.getString(element));
					}
				}
			}
		}
	}

	/**
	 * 各S/IFが保持する項目の配列を取得する
	 * 
	 * @param templateId サービスIF_ID
	 * @return 項目の配列
	 */
	private Object[][] getContents(String templateId) {
		Object[][] contents = null;

		if ("EZM0121A010".equals(templateId))
		{
			contents = new EZM0121A010CBSMsg().getContents();
		}
		else if ("EKK0191B040".equals(templateId)) 
		{
			contents = new EKK0191B040CBSMsg().getContents();
		}
		else if ("EZM0541A010".equals(templateId)) 
		{
			contents = new EZM0541A010CBSMsg().getContents();
		}
		return contents;
	}


	/**
	 * S/IFの実行結果から指定されたキーに該当する値を取得する
	 * 
	 * S/IFの実行結果から指定のキー(リスト)で取得できるメッセージリストを取得する。 メッセージリストが空でなければ、先頭行のメッセージから指定のキー(値)に該当する値を取得し、返却する。
	 * 
	 * @param trgtNMsg 対象メッセージ
	 * @param listKey キー(リスト)
	 * @param valueKey キー(値)
	 * @return 値
	 */
	private String getRsltMsgListValue(CAANMsg trgtNMsg, String listKey, String valueKey) {
		String value = null;
		if (trgtNMsg != null) {
			CAANMsg[] rsltMsgList = trgtNMsg.getCAANMsgList(listKey);
			if (rsltMsgList != null && rsltMsgList.length > 0) {
				CAANMsg rsltMsg = rsltMsgList[0];
				value = rsltMsg.getString(valueKey);
			}
		}

		return value;
	}

}
