/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKDelTgChkKeiyaku
*	ソースファイル名	：JBSbatKKDelTgChkKeiyaku.java
*	作成者				：富士通　
*	作成日				：2012年09月20日
*＜機能概要＞
*　削除対象外チェック処理（契約）部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2012/09/20   富士通		新規作成
*********************************************************************/
package eo.business.service;

import java.util.HashMap;

import eo.business.common.JBSbatBusinessService;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.util.JBSbatCheckUtil;
import eo.framework.util.JBSbatDateUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKDelTgChkKeiyaku extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(サービス契約)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI = "KK_T_SVC_KEI";

	/** テーブル(サービス契約＜ｅｏ光電話＞)*/
	private static final String D_TBL_NAME_KK_T_SVC_KEI_EOH_TEL = "KK_T_SVC_KEI_EOH_TEL";

	/** テーブル(サービス契約内訳＜ｅｏ光ネット＞)*/
	private static final String D_TBL_NAME_KK_T_SVKEIUW_EOH_NET = "KK_T_SVKEIUW_EOH_NET";

	/** テーブル(オプションサービス)*/
	private static final String D_TBL_NAME_KK_M_OP_SVC = "KK_M_OP_SVC";

	/** テーブル(オプションサービス契約)*/
	private static final String D_TBL_NAME_KK_T_OP_SVC_KEI = "KK_T_OP_SVC_KEI";

	/** テーブル(個人情報削除判定ワーク)*/
	private static final String D_TBL_NAME_KK_T_KJNIFDEL_JDG_WK = "KK_T_KJNIFDEL_JDG_WK";

	/** SQL定義キー(KK_SELECT_205)*/
	private static final String KK_T_SVC_KEI_KK_SELECT_205 = "KK_SELECT_205";

	/** SQL定義キー(KK_SELECT_006)*/
	private static final String KK_T_SVC_KEI_EOH_TEL_KK_SELECT_006 = "KK_SELECT_006";

	/** SQL定義キー(KK_SELECT_009)*/
	private static final String KK_T_SVKEIUW_EOH_NET_KK_SELECT_009 = "KK_SELECT_009";

	/** SQL定義キー(KK_SELECT_005)*/
	private static final String KK_M_OP_SVC_KK_SELECT_005 = "KK_SELECT_005";

	/** SQL定義キー(KK_SELECT_073)*/
	private static final String KK_T_OP_SVC_KEI_KK_SELECT_073 = "KK_SELECT_073";

	/** SQL定義キー(KK_UPDATE_001)*/
	private static final String KK_T_KJNIFDEL_JDG_WK_KK_UPDATE_001 = "KK_UPDATE_001";

	/** テーブルアクセスクラス(サービス契約)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI = null;

	/** テーブルアクセスクラス(サービス契約＜ｅｏ光電話＞)*/
	private JBSbatSQLAccess db_KK_T_SVC_KEI_EOH_TEL = null;

	/** テーブルアクセスクラス(サービス契約内訳＜ｅｏ光ネット＞)*/
	private JBSbatSQLAccess db_KK_T_SVKEIUW_EOH_NET = null;

	/** テーブルアクセスクラス(オプションサービス)*/
	private JBSbatSQLAccess db_KK_M_OP_SVC = null;

	/** テーブルアクセスクラス(オプションサービス契約)*/
	private JBSbatSQLAccess db_KK_T_OP_SVC_KEI = null;

	/** テーブルアクセスクラス(個人情報削除判定ワーク)*/
	private JBSbatSQLAccess db_KK_T_KJNIFDEL_JDG_WK = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	/** サービス提供物消去処理要否*/
	private static final String SVCTK_BUT_DELTRN_YH = "1";
	
	/** 削除判定コード*/
	private static final String DEL_JOG_CD = "01";
	
	/** DB読込件数 */
	private int intSelectCnt = 0;
	
	/** DB更新件数 */
	private int intUpdateCnt = 0;

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_T_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI);
		db_KK_T_SVC_KEI_EOH_TEL = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVC_KEI_EOH_TEL);
		db_KK_T_SVKEIUW_EOH_NET = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SVKEIUW_EOH_NET);
		db_KK_M_OP_SVC = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_M_OP_SVC);
		db_KK_T_OP_SVC_KEI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_OP_SVC_KEI);
		db_KK_T_KJNIFDEL_JDG_WK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_KJNIFDEL_JDG_WK);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		super.logPrint.printDebugLog("execute_START");
		
		//DB読込件数カウントアップ
		intSelectCnt++;
		
		// サービス契約番号
		String svcKeiNo = "";
		
		// 削除対象外判定用フラグ
		boolean chkData = false;
		
		// バッチ運用日
		String actDate = null;
		
		svcKeiNo = inMap.getString("SVC_KEI_NO");
		
		actDate = super.opeDate;
		
		// PPP認証IDの消去が完了しているかの判定を行う。
		chkData = isPPPID(svcKeiNo, actDate);
		
		if (chkData == false)
		{
			
			// ISP認証IDの消去が完了しているかの判定を行う。
			chkData = isISPID(svcKeiNo, actDate);
		}
		
		if (chkData == false) 
		{
			
			// オプションサービスの消去が完了しているかの判断を行う
			chkData = isOptionSv(svcKeiNo, actDate);
		}
		
		// 削除対象外のデータを削除不可に更新する
		if (chkData) 
		{
			this.updateKjnIfDelWk(inMap, actDate);
		}
		
		super.logPrint.printDebugLog("execute_END");
		
		return null;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		
		//DB読込件数ログ出力
		super.logPrint.printBusinessErrorLog("EKKB0770AI", new String[]{"個人情報削除判定ワーク", Integer.toString(intSelectCnt)});
		//DB更新件数ログ出力
		super.logPrint.printBusinessErrorLog("EKKB0800AI", new String[]{"個人情報削除判定ワーク", Integer.toString(intUpdateCnt)});
		
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_SVC_KEI.close();
		db_KK_T_SVC_KEI_EOH_TEL.close();
		db_KK_T_SVKEIUW_EOH_NET.close();
		db_KK_M_OP_SVC.close();
		db_KK_T_OP_SVC_KEI.close();
		db_KK_T_KJNIFDEL_JDG_WK.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**
	 * SQLKEY(KK_SELECT_205)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	バッチ運用日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_KK_SELECT_205(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI.selectBySqlDefine(paramList, KK_T_SVC_KEI_KK_SELECT_205);
	}

	/**
	 * SQLKEY(KK_SELECT_006)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVC_KEI_EOH_TEL_KK_SELECT_006(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_SVC_KEI_EOH_TEL.selectBySqlDefine(paramList, KK_T_SVC_KEI_EOH_TEL_KK_SELECT_006);
	}

	/**
	 * SQLKEY(KK_SELECT_009)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	予約適応開始日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SVKEIUW_EOH_NET_KK_SELECT_009(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_KK_T_SVKEIUW_EOH_NET.selectBySqlDefine(paramList, KK_T_SVKEIUW_EOH_NET_KK_SELECT_009);
	}

	/**
	 * SQLKEY(KK_SELECT_005)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス提供物消去処理要否
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_M_OP_SVC_KK_SELECT_005(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_M_OP_SVC.selectBySqlDefine(paramList, KK_M_OP_SVC_KK_SELECT_005);
	}

	/**
	 * SQLKEY(KK_SELECT_073)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	サービス契約番号
	 *		 	オプションサービスコード
	 *		 	予約適用年月日
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_OP_SVC_KEI_KK_SELECT_073(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());

		// DBアクセスを実行します
		db_KK_T_OP_SVC_KEI.selectBySqlDefine(paramList, KK_T_OP_SVC_KEI_KK_SELECT_073);
	}

	/**
	 * SQLKEY(KK_UPDATE_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	削除判定コード
	 *		 	更新年月日時分秒
	 *		 	更新オペレータアカウント
	 *		 	更新運用年月日
	 *		 	更新処理ID
	 *		 	サービス契約番号
	 *		 	請求契約番号
	 *		 	ＳＹＳＩＤ
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_KJNIFDEL_JDG_WK_KK_UPDATE_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());
		paramList.setValue(param[2].toString());
		paramList.setValue(param[3].toString());
		paramList.setValue(param[4].toString());
		paramList.setValue(param[5].toString());
		paramList.setValue(param[6].toString());
		paramList.setValue(param[7].toString());

		// DBアクセスを実行します
		//▼▼▼件数取得のため自働生成部を変更▼▼▼
		intUpdateCnt += db_KK_T_KJNIFDEL_JDG_WK.executeBySqlDefine(paramList, KK_T_KJNIFDEL_JDG_WK_KK_UPDATE_001);
		//▲▲▲件数取得のため自働生成部を変更▲▲▲
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	
	/**
	 * サービス契約番号を基にPPP認証IDが消去されているか否かの判定を行う
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 
	 * @param svcKeiNo　サービス契約番号
	 * @param actDate	 バッチ運用日
	 * @throws Exception 業務サービス内で発生した例外全般。
	 * @return delFlg 個人情報削除対象外判定
	 */
	private boolean isPPPID(String svcKeiNo, String actDate) throws Exception
	{
		super.logPrint.printDebugLog("isPPPID:svcKeiNo=" + svcKeiNo);
		super.logPrint.printDebugLog("isPPPID:actDate=" + actDate);
		
		// サービス契約<eo光電話>情報取得
		JBSbatCommonDBInterface dbmapHikari = new JBSbatCommonDBInterface();
		// サービス契約情報取得
		JBSbatCommonDBInterface dbmapKeiyaku = new JBSbatCommonDBInterface();
		
		// 削除判定用フラグ
		boolean delFlg = false;
		
		// サービス契約<eo光電話>からPPP認証IDを取得する。
		Object[] paramHikari = null;
		paramHikari = new Object[] {svcKeiNo};
		
		executeKK_T_SVC_KEI_EOH_TEL_KK_SELECT_006(paramHikari);
		
		dbmapHikari = db_KK_T_SVC_KEI_EOH_TEL.selectNext();
		
		if (dbmapHikari != null)
		{
			if(dbmapHikari.getString("PPP_NINSHO_ID") != null)
			{
				// サービス契約からサービス提供物消去処理実施年月日時分秒を取得する
				String[] paramKei = new String[2];
				// サービス契約番号
				paramKei[0] = svcKeiNo;
				// バッチ運用日
				paramKei[1] = actDate;
				
				executeKK_T_SVC_KEI_KK_SELECT_205(paramKei);
				
				dbmapKeiyaku = db_KK_T_SVC_KEI.selectNext();
				
				if (dbmapKeiyaku != null) 
				{
					if(dbmapKeiyaku.getString("SVCTK_BUT_DEL_TRN_JSSI_DTM") == null)
					{
						// 削除削除対象外とする
						delFlg = true;
					}
				}
			}
		}

		super.logPrint.printDebugLog("isPPPID:delFlg=" + delFlg);
					
		return delFlg;
	}
	
	/**
	 * サービス契約番号を基にISP認証ID消去されているか否かの判定を行う
	 * <p>
	 * </p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br> 
	 * 
	 * @param svcKeiNo サービス契約番号
	 * @param actDate	バッチ運用日
	 * @throws Exception 業務サービス内で発生した例外全般。
	 * @return delFlg 個人情報削除対象外判定
	 */
	private boolean isISPID(String svcKeiNo, String actDate) throws Exception
	{
		super.logPrint.printDebugLog("isISPID:svcKeiNo=" + svcKeiNo);
		super.logPrint.printDebugLog("isISPID:actDate=" + actDate);
		
		// サービス契約内訳<eo光ネット>情報取得
		JBSbatCommonDBInterface dbmapNet = new JBSbatCommonDBInterface();
		// サービス契約情報取得
		JBSbatCommonDBInterface dbmapKeiyaku = new JBSbatCommonDBInterface();
		
		// 削除判定用フラグ
		boolean delFlg = false;
		
		// 情報取得用
		String[] param = new String[2];
		
		// サービス契約番号
		param[0] = svcKeiNo;
		// バッチ運用日
		param[1] = actDate;
		
		// サービス契約内訳<eo光ネット>からISP認証IDを取得する。
		executeKK_T_SVKEIUW_EOH_NET_KK_SELECT_009(param);
		
		dbmapNet = db_KK_T_SVKEIUW_EOH_NET.selectNext();
		
		if (dbmapNet != null)
		{
			if(dbmapNet.getString("ISP_NINSHO_ID") != null)
			{
				// サービス契約からサービス提供物消去処理実施年月日時分秒を取得する
				executeKK_T_SVC_KEI_KK_SELECT_205(param);
				
				dbmapKeiyaku = db_KK_T_SVC_KEI.selectNext();
				
				if (dbmapKeiyaku != null) 
				{
					if(dbmapKeiyaku.getString("SVCTK_BUT_DEL_TRN_JSSI_DTM") == null)
					{
						// 削除削除対象外とする
						delFlg = true;
					}
				}
			}
		}

		super.logPrint.printDebugLog("isISPID:delFlg=" + delFlg);
		
		return delFlg;
	}
	
	/**
	 * サービス契約番号に紐づくオプションサービスの消去がされているか否かの判定を行う
	 * <p>
	 * </p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * @param svcKeiNo　サービス契約番号
	 * @param actDate	 バッチ運用日
	 * @throws Exception 業務サービス内で発生した例外全般。
	 * @return delFlg 個人情報削除対象外判定
	 */
	private boolean isOptionSv(String svcKeiNo, String actDate) throws Exception
	{
		super.logPrint.printDebugLog("isOptionSv:svcKeiNo=" + svcKeiNo);
		super.logPrint.printDebugLog("isOptionSv:actDate=" + actDate);
		
		// オプションサービス情報取得
		JBSbatCommonDBInterface dbmapOpt = new JBSbatCommonDBInterface();
		// オプションサービス契約取得
		JBSbatCommonDBInterface dbmapOptKei = new JBSbatCommonDBInterface();
		
		// オプションサービスコード
		String strOptionCd = null;
		
		// 引数用
		Object[] obj = null;
		
		String[] param = new String[3];
		
		// 削除判定用フラグ
		boolean delFlg = false;
		
		// オプションサービスからオプションコードを取得する
		obj = new Object[] {SVCTK_BUT_DELTRN_YH};
		
		executeKK_M_OP_SVC_KK_SELECT_005(obj);
		
		dbmapOpt = db_KK_M_OP_SVC.selectNext();
		
		while (dbmapOpt != null) 
		{
			// オプションサービスコードを取得する
			strOptionCd = dbmapOpt.getString("OP_SVC_CD");
			super.logPrint.printDebugLog("isOptionSv:strOptionCd=" + strOptionCd);
			
			// オプションサービス契約からサービス提供物消去処理実施年月日時分秒を取得する
			// サービス契約番号
			param[0] = svcKeiNo;
			// オプションサービスコード
			param[1] = strOptionCd;
			// バッチ運用日
			param[2] = actDate;
			
			executeKK_T_OP_SVC_KEI_KK_SELECT_073(param);
			
			dbmapOptKei = db_KK_T_OP_SVC_KEI.selectNext();
			
			if (dbmapOptKei != null) 
			{
				super.logPrint.printDebugLog("isOptionSv:SVCTK_BUT_DEL_TRN_JSSI_DTM=" + dbmapOptKei.getString("SVCTK_BUT_DEL_TRN_JSSI_DTM"));
				if(dbmapOptKei.getString("SVCTK_BUT_DEL_TRN_JSSI_DTM") == null)
				{
					// 削除削除対象外とする
					delFlg = true;
				}
			}
			dbmapOpt = db_KK_M_OP_SVC.selectNext();
		}

		super.logPrint.printDebugLog("isISPID:delFlg=" + delFlg);
		
		return delFlg;
	}
	
	/**
	 * 削除不可となったデータについて個人情報削除判定ワークの削除判定コードを削除不可(契約):01に更新する
	 * <p>
	 * </p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * @param inMap
	 * @param actDate	バッチ運用日
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void updateKjnIfDelWk(JBSbatServiceInterfaceMap inMap, String actDate) throws Exception
	{
		// パラメータ設定
		String[] param = new String[8];
		
		// サービス契約番号
		String svcKeiNo = null;
		// 請求契約番号
		String seyKeiNo = null;
		// SYSID
		String sysId = null;
		
		svcKeiNo = inMap.getString("SVC_KEI_NO");
		seyKeiNo = inMap.getString("SEIKY_KEI_NO");
		sysId = inMap.getString("SYSID");
		
		// 削除判定コード
		param[0] = DEL_JOG_CD;
		// 更新年月日時分秒
		param[1] = JBSbatDateUtil.getSystemDateTime();
		// 更新オペレータアカウント
		param[2] = super.batchUserId;
		// 更新運用年月日
		param[3] = actDate;
		// 更新処理ＩＤ
		param[4] = super.jobid;
		// サービス契約番号
		param[5] = svcKeiNo;
		// 請求契約番号
		param[6] = seyKeiNo;
		// SYSID
		param[7] = sysId;
		
		executeKK_T_KJNIFDEL_JDG_WK_KK_UPDATE_001(param);
		
	}
}
