/*********************************************************************
*  All Rights reserved,Copyright (c)  K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatCHFstSeikyuSkipAdd
*	ソースファイル名	：JBSbatCHFstSeikyuSkipAdd.java
*	作成者				：富士通　
*	作成日				：2017年12月07日
*＜機能概要＞
*　初回請求抑止情報登録部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2017/12/07   富士通		新規作成
*********************************************************************/
package eo.business.service;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JKKBatCommon;
import eo.business.util.file.JBSbatCHIFM287;
import eo.business.util.table.JBSbatKK_T_SEIKY_YOKSI;
import eo.common.constant.JACStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.util.JBSbatDateUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatCHFirstSeikyuSkipAdd extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(請求抑止)*/
	private static final String D_TBL_NAME_KK_T_SEIKY_YOKSI = "KK_T_SEIKY_YOKSI";

	/** テーブル(料金対応記録)*/
	private static final String D_TBL_NAME_CH_T_PRC_TAIOKRK = "CH_T_PRC_TAIOKRK";

	/** SQL定義キー(CH_SELECT_009)*/
	private static final String KK_T_SEIKY_YOKSI_CH_SELECT_009 = "CH_SELECT_009";

	/** テーブルアクセスクラス(請求抑止)*/
	private JBSbatSQLAccess db_KK_T_SEIKY_YOKSI = null;
	private JBSbatSQLAccess db_KK_T_SEIKY_YOKSI2 = null;

	/** テーブルアクセスクラス(料金対応記録)*/
	private JBSbatSQLAccess db_CH_T_PRC_TAIOKRK = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/

	/** 請求抑止フラグ(有効)*/
	private static final String SEIKY_YOKSI_FLG_YK = "1";

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_T_SEIKY_YOKSI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SEIKY_YOKSI);
		db_KK_T_SEIKY_YOKSI2 = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_SEIKY_YOKSI);
		db_CH_T_PRC_TAIOKRK = new JBSbatSQLAccess(commonItem, D_TBL_NAME_CH_T_PRC_TAIOKRK);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/

		boolean  yoksiFlg = false;
		boolean  tkskFlg = false;

		JBSbatOutputItem outputBean = new JBSbatOutputItem();

		String seikyKeiNo = inMap.getString(JBSbatCHIFM287.SEIKY_KEI_NO);

		executeKK_T_SEIKY_YOKSI_CH_SELECT_009(new Object[]{seikyKeiNo});
		JBSbatCommonDBInterface retSeikyYoksi = db_KK_T_SEIKY_YOKSI.selectNext();

		//レコードが存在しない場合、DB登録処理
		if(null == retSeikyYoksi) {
			// DB登録処理
			// 請求書等発行抑止
			insertDB(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI, JACStrConst.TKRK_SBTD_YKSI_SKS);
			// 督促抑止
			insertDB(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK, JACStrConst.TKRK_SBTD_YKSI_TOKUSOKU);

			// ファイル出力処理
			// 請求抑止登録実績情報
			JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
			outmap = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI);
			outputBean.addOutMapList(outmap);
			// 督促抑止登録実績情報
			JBSbatServiceInterfaceMap outmap2 = new JBSbatServiceInterfaceMap();
			outmap2 = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK);
			outputBean.addOutMapList_2(outmap2);

			return outputBean;
		}

		// 請求抑止登録・更新処理
		while(!yoksiFlg || !tkskFlg) {
			// 未存在チェック(無効フラグ"1")
			if(JACStrConst.MK_FLG_YK.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.MK_FLG))) {
				// 存在チェック(請求抑止フラグ"0")
				if(JACStrConst.YOKSI_FLG_NASHI.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_FLG))) {
					// 請求書等発行抑止
					if(JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
						yoksiFlg = true;

						updateSeikyYoksi(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI, JACStrConst.TKRK_SBTD_YKSI_SKS);
						// 請求抑止登録実績情報
						JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
						outmap = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI);
						outputBean.addOutMapList(outmap);
					}
					// 督促抑止
					if(JACStrConst.SEIKY_YOKSI_CD_TKSK.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
						tkskFlg = true;

						updateSeikyYoksi(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK, JACStrConst.TKRK_SBTD_YKSI_TOKUSOKU);
						// 督促抑止登録実績情報
						JBSbatServiceInterfaceMap outmap2 = new JBSbatServiceInterfaceMap();
						outmap2 = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK);
						outputBean.addOutMapList_2(outmap2);
					}
				// 存在しない場合は更新・ファイル出力を行わない。
				} else {
					if(JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
						yoksiFlg = true;
					}
					if(JACStrConst.SEIKY_YOKSI_CD_TKSK.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
						tkskFlg = true;
					}
				}
			}
			// 存在する場合はメッセージ出力し、更新・ファイル出力を行わない。
			else {
				super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.ECHB0400CW,
						new String[] {JBSbatKK_T_SEIKY_YOKSI.TABLE_NAME,
						JBSbatKK_T_SEIKY_YOKSI.SEIKY_KEI_NO + "," + JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD + ":"
						+ seikyKeiNo + "," + retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD),
						"処理対象外のため処理をスキップしました。"});
				if(JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
					yoksiFlg = true;
				}
				if(JACStrConst.SEIKY_YOKSI_CD_TKSK.equals(retSeikyYoksi.getValue(JBSbatKK_T_SEIKY_YOKSI.SEIKY_YOKSI_CD))) {
					tkskFlg = true;
				}
			}

			retSeikyYoksi = db_KK_T_SEIKY_YOKSI.selectNext();
			// 登録確認処理
			if(retSeikyYoksi == null) {
				if(!yoksiFlg) {
					yoksiFlg = true;
					// 請求書等発行抑止
					insertDB(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI, JACStrConst.TKRK_SBTD_YKSI_SKS);
					// 請求抑止登録実績情報
					JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
					outmap = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_SKS_YOKSI);
					outputBean.addOutMapList(outmap);
				}
				if(!tkskFlg) {
					tkskFlg = true;
					// 督促抑止
					insertDB(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK, JACStrConst.TKRK_SBTD_YKSI_TOKUSOKU);
					// 督促抑止登録実績情報
					JBSbatServiceInterfaceMap outmap2 = new JBSbatServiceInterfaceMap();
					outmap2 = outPutFile(seikyKeiNo, JACStrConst.SEIKY_YOKSI_CD_TKSK);
					outputBean.addOutMapList_2(outmap2);
				}
			}
		}

		
		return outputBean;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 請求抑止、料金対応記録に登録します
	 * @param seikyKeiNo 請求契約番号
	 * @param seikyYoksiCd 請求抑止コード
	 * @param tkrkSbtd 料金対応記録種別コード
	 */
	private void insertDB(String seikyKeiNo, String seikyYoksiCd, String tkrkSbtd) throws Exception {

		// 設定値(請求抑止)
		JBSbatCommonDBInterface setParam = new JBSbatCommonDBInterface();

		// 請求契約番号
		setParam.setValue(seikyKeiNo);

		// 請求抑止コード
		setParam.setValue(seikyYoksiCd);

		// 請求抑止フラグ
		setParam.setValue(SEIKY_YOKSI_FLG_YK);

		// 請求抑止年月日
		setParam.setValue(super.opeDate);
		
		// 請求抑止解除年月日
		setParam.setValue(null);
		
		// 請求抑止解除予定年月日
		setParam.setValue(null);
		
		// 登録実行（PK全項目登録）
		executeKK_T_SEIKY_YOKSI_PKINSERT(setParam.getList().toArray());
		
		// 料金対応記録の登録
		insertPrcTaioKrk(seikyKeiNo, tkrkSbtd);

	}

	/**
	 * 料金対応記録に登録します
	 * @param seikyKeiNo 請求契約番号
	 * @param tkrkSbtd 料金対応記録種別コード
	 * @return JBSbatServiceInterfaceMap
	 */
	private void insertPrcTaioKrk(String seikyKeiNo, String tkrkSbtd) throws Exception {
		// 設定値
		String[] setParam = new String[]{
				JKKBatCommon.getFormatedNextSeq(commonItem, "SEQ_PRC_TAIO_KIROK_NO", "", 12),	// 料金対応記録番号
				batchUserId,																	// 料金対応ユーザID
				seikyKeiNo,																		// 請求契約番号
				JBSbatDateUtil.getSystemDateTimeStamp(),										// 対応年月日時分秒
				JACStrConst.TKRK_SBT_TOKUSOKU_STAT_UPD_BATCH,									// 料金対応記録種別コード
				tkrkSbtd,																		// 料金対応記録種別詳細コード
				"",																				// タイトル
				"初回窓口請求スキップ",															// 記事
				"",																				// 変更前コード種別コード
				"",																				// 変更前コード区分
				"",																				// 変更後コード種別コード
				"",																				// 変更後コード区分
				"",																				// 変更前料金グループコード
				"",																				// 変更前料金コースコード
				"",																				// 変更前料金サービスコード
				"",																				// 変更前料金項目コード
				"",																				// 変更後料金グループコード
				"",																				// 変更後料金コースコード
				"",																				// 変更後料金サービスコード
				"",																				// 変更後料金項目コード
				"",																				// 変更前年月日
				"",																				// 変更後年月日
				"",																				// 変更前金額
				"",																				// 変更後金額
				"",																				// 記録対象年月
				JACStrConst.TAIORRKI_RENDO_TG_FLG_HIHYOJI,										// 対応履歴連動対象フラグ
				"",																				// 対応記録番号
				"",																				// サービス契約番号
				"",																				// 督促番号
				"",																				// 督促異動番号
				"",																				// 請求番号
				"",																				// 金庫番号
				"",																				// 債権番号
				"",																				// 入金番号
				""																				// 電子ファイル管理番号
		};
		executeCH_T_PRC_TAIOKRK_PKINSERT(setParam);
	}

	/**
	 * 請求抑止を更新します
	 * @param seikyKeiNo 請求契約番号
	 * @param seikyYoksiCd 請求抑止コード
	 * @param tkrkSbtd 料金対応記録種別コード
	 */
	private void updateSeikyYoksi(String seikyKeiNo, String seikyYoksiCd, String tkrkSbtd) throws Exception {
		// 設定値
		JBSbatCommonDBInterface setParam = new JBSbatCommonDBInterface();

		// 請求抑止フラグ
		setParam.setValue(SEIKY_YOKSI_FLG_YK);

		// 請求抑止年月日
		setParam.setValue(super.opeDate);
		
		// 請求抑止解除年月日
		setParam.setValue(null);
		
		// 請求抑止解除予定年月日
		setParam.setValue(null);
		
		// 条件値
		JBSbatCommonDBInterface whereParam = new JBSbatCommonDBInterface();

		// 請求契約番号
		whereParam.setValue(seikyKeiNo);

		// 請求抑止コード
		whereParam.setValue(seikyYoksiCd);

		// 更新実行（PK更新）
		executeKK_T_SEIKY_YOKSI_PKUPDATE(setParam.getList().toArray(), whereParam.getList().toArray());

		// 料金対応記録の登録
		insertPrcTaioKrk(seikyKeiNo, tkrkSbtd);
}

	/**
	 * ファイル出力項目を設定します
	 * @param seikyKeiNo 請求契約番号
	 * @param seikyYoksiCd 請求抑止コード
	 * @return JBSbatServiceInterfaceMap
	 */
	private JBSbatServiceInterfaceMap outPutFile(String seikyKeiNo, String seikyYoksiCd) throws Exception {
		JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
		
		outmap.setString("SEIKY_KEI_NO", seikyKeiNo);
		outmap.setString("SEIKY_YOKSI_CD", seikyYoksiCd);
		outmap.setOutFlg(true);

		return outmap;
	}
	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_SEIKY_YOKSI.close();
		db_KK_T_SEIKY_YOKSI2.close();
		db_CH_T_PRC_TAIOKRK.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**
	 * SQLKEY(CH_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_SEIKY_YOKSI_CH_SELECT_009(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_KK_T_SEIKY_YOKSI.selectBySqlDefine(paramList, KK_T_SEIKY_YOKSI_CH_SELECT_009);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	請求契約番号				SEIKY_KEI_NO
	 *		 	請求抑止コード				SEIKY_YOKSI_CD
	 *		 	請求抑止フラグ				SEIKY_YOKSI_FLG
	 *		 	請求抑止年月日				SEIKY_YOKSI_YMD
	 *		 	請求抑止解除年月日				SEIKY_YOKSI_RLS_YMD
	 *		 	請求抑止解除予定年月日				SEIKY_YOKSI_RLS_RSV_YMD
	 *		 	登録年月日時分秒				ADD_DTM
	 *		 	登録オペレータアカウント				ADD_OPEACNT
	 *		 	更新年月日時分秒				UPD_DTM
	 *		 	更新オペレータアカウント				UPD_OPEACNT
	 *		 	削除年月日時分秒				DEL_DTM
	 *		 	削除オペレータアカウント				DEL_OPEACNT
	 *		 	無効フラグ				MK_FLG
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SEIKY_YOKSI_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("SEIKY_KEI_NO", setParam[0]);
		setMap.setValue("SEIKY_YOKSI_CD", setParam[1]);
		setMap.setValue("SEIKY_YOKSI_FLG", setParam[2]);
		setMap.setValue("SEIKY_YOKSI_YMD", setParam[3]);
		setMap.setValue("SEIKY_YOKSI_RLS_YMD", setParam[4]);
		setMap.setValue("SEIKY_YOKSI_RLS_RSV_YMD", setParam[5]);
	
		// DBアクセスを実行します
		db_KK_T_SEIKY_YOKSI2.insertByPrimaryKeys(setMap);
	}

	/**
	 * PK(ＰＫ　更新)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.引数で条件マップを作ります。<br>
	 *
	 * 3.DBアクセスを実行します。<br>
	 * 
	 * 4.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	請求抑止フラグ				SEIKY_YOKSI_FLG
	 *		 	請求抑止年月日				SEIKY_YOKSI_YMD
	 *		 	請求抑止解除年月日				SEIKY_YOKSI_RLS_YMD
	 *		 	請求抑止解除予定年月日				SEIKY_YOKSI_RLS_RSV_YMD
	 *		whereParam:PK項目の(項目、値)を(key、value)として,格納された配列です。PK項目は以下に説明します。
	 *		 	SEIKY_KEI_NO
	 *		 	SEIKY_YOKSI_CD
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @param whereParam 条件項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeKK_T_SEIKY_YOKSI_PKUPDATE(Object[] setParam, Object[] whereParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("SEIKY_YOKSI_FLG", setParam[0]);
		setMap.setValue("SEIKY_YOKSI_YMD", setParam[1]);
		setMap.setValue("SEIKY_YOKSI_RLS_YMD", setParam[2]);
		setMap.setValue("SEIKY_YOKSI_RLS_RSV_YMD", setParam[3]);
	
		// 条件のマップを作成します
		JBSbatCommonDBInterface whereMap = new JBSbatCommonDBInterface();
		whereMap.setValue("SEIKY_KEI_NO", whereParam[0]);
		whereMap.setValue("SEIKY_YOKSI_CD", whereParam[1]);

		// DBアクセスを実行します
		db_KK_T_SEIKY_YOKSI2.updateByPrimaryKeys(whereMap, setMap);
	}

	/**
	 * PK(全項目登録)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数で設定項目マップを作ります。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 * 
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		setParam:設定したい項目の(項目、値)を(key、value)として、setParamマップに入れます。項目キーは以下に説明します。
	 *		 	料金対応記録番号				PRC_TAIO_KIROK_NO
	 *		 	料金対応ユーザＩＤ				PRC_TAIO_USER_ID
	 *		 	請求契約番号				SEIKY_KEI_NO
	 *		 	対応年月日時分秒				TAIO_DTM
	 *		 	料金対応記録種別コード				PRC_TAIO_KIROK_SBT_CD
	 *		 	料金対応記録種別詳細コード				PRC_TAIO_KIROK_SBT_DTL_CD
	 *		 	タイトル				TITLE
	 *		 	記事				KIJI
	 *		 	変更前コード種別コード				CHG_BF_CD_SBT_CD
	 *		 	変更前コード区分				CHG_BF_CD_DIV
	 *		 	変更後コード種別コード				CHG_AF_CD_SBT_CD
	 *		 	変更後コード区分				CHG_AF_CD_DIV
	 *		 	変更前料金グループコード				CHG_BF_PRC_GRP_CD
	 *		 	変更前料金コースコード				CHG_BF_PCRS_CD
	 *		 	変更前料金サービスコード				CHG_BF_PRC_SVC_CD
	 *		 	変更前料金項目コード				CHG_BF_PRC_KMK_CD
	 *		 	変更後料金グループコード				CHG_AF_PRC_GRP_CD
	 *		 	変更後料金コースコード				CHG_AF_PCRS_CD
	 *		 	変更後料金サービスコード				CHG_AF_PRC_SVC_CD
	 *		 	変更後料金項目コード				CHG_AF_PRC_KMK_CD
	 *		 	変更前年月日				CHG_BF_YMD
	 *		 	変更後年月日				CHG_AF_YMD
	 *		 	変更前金額				CHG_BF_AMNT
	 *		 	変更後金額				CHG_AF_AMNT
	 *		 	記録対象年月				KIROK_TG_YM
	 *		 	対応履歴連動対象フラグ				TAIORRKI_RENDO_TG_FLG
	 *		 	対応記録番号				TAIO_KIROK_NO
	 *		 	サービス契約番号				SVC_KEI_NO
	 *		 	督促番号				TOKUSOKU_NO
	 *		 	督促異動番号				TOKUSOKU_IDO_NO
	 *		 	請求番号				SEIKY_NO
	 *		 	金庫番号				KNK_NO
	 *		 	債権番号				SAIKEN_NO
	 *		 	入金番号				NYUKIN_NO
	 *		 	電子ファイル管理番号				EFILE_KANRI_NO
	 * </pre>
	 * <p>
	 * @param setParam 設定項目の値。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeCH_T_PRC_TAIOKRK_PKINSERT(Object[] setParam) throws Exception
	{
		// 設定値のマップを作成します
		JBSbatCommonDBInterface setMap = new JBSbatCommonDBInterface();
		setMap.setValue("PRC_TAIO_KIROK_NO", setParam[0]);
		setMap.setValue("PRC_TAIO_USER_ID", setParam[1]);
		setMap.setValue("SEIKY_KEI_NO", setParam[2]);
		setMap.setValue("TAIO_DTM", setParam[3]);
		setMap.setValue("PRC_TAIO_KIROK_SBT_CD", setParam[4]);
		setMap.setValue("PRC_TAIO_KIROK_SBT_DTL_CD", setParam[5]);
		setMap.setValue("TITLE", setParam[6]);
		setMap.setValue("KIJI", setParam[7]);
		setMap.setValue("CHG_BF_CD_SBT_CD", setParam[8]);
		setMap.setValue("CHG_BF_CD_DIV", setParam[9]);
		setMap.setValue("CHG_AF_CD_SBT_CD", setParam[10]);
		setMap.setValue("CHG_AF_CD_DIV", setParam[11]);
		setMap.setValue("CHG_BF_PRC_GRP_CD", setParam[12]);
		setMap.setValue("CHG_BF_PCRS_CD", setParam[13]);
		setMap.setValue("CHG_BF_PRC_SVC_CD", setParam[14]);
		setMap.setValue("CHG_BF_PRC_KMK_CD", setParam[15]);
		setMap.setValue("CHG_AF_PRC_GRP_CD", setParam[16]);
		setMap.setValue("CHG_AF_PCRS_CD", setParam[17]);
		setMap.setValue("CHG_AF_PRC_SVC_CD", setParam[18]);
		setMap.setValue("CHG_AF_PRC_KMK_CD", setParam[19]);
		setMap.setValue("CHG_BF_YMD", setParam[20]);
		setMap.setValue("CHG_AF_YMD", setParam[21]);
		setMap.setValue("CHG_BF_AMNT", setParam[22]);
		setMap.setValue("CHG_AF_AMNT", setParam[23]);
		setMap.setValue("KIROK_TG_YM", setParam[24]);
		setMap.setValue("TAIORRKI_RENDO_TG_FLG", setParam[25]);
		setMap.setValue("TAIO_KIROK_NO", setParam[26]);
		setMap.setValue("SVC_KEI_NO", setParam[27]);
		setMap.setValue("TOKUSOKU_NO", setParam[28]);
		setMap.setValue("TOKUSOKU_IDO_NO", setParam[29]);
		setMap.setValue("SEIKY_NO", setParam[30]);
		setMap.setValue("KNK_NO", setParam[31]);
		setMap.setValue("SAIKEN_NO", setParam[32]);
		setMap.setValue("NYUKIN_NO", setParam[33]);
		setMap.setValue("EFILE_KANRI_NO", setParam[34]);
	
		// DBアクセスを実行します
		db_CH_T_PRC_TAIOKRK.insertByPrimaryKeys(setMap);
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
