/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKDelTgRrkChst
*	ソースファイル名	：JBSbatKKDelTgRrkChst.java
*	作成者				：富士通　
*	作成日				：2012年09月12日
*＜機能概要＞
*　削除対象履歴抽出部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v15.00.00	2015/08/17  富士通		ST-2015-0000030 性能改善
*	v15.00.01	2015/08/27  FJ)小島		ST-2015-0000030 性能改善
*	v15.00.02	2015/08/31  FJ)小島		ST-2015-0000030 性能改善
*********************************************************************/
package eo.business.service;

import eo.business.common.JBSbatBusinessService;
import eo.business.util.file.JBSbatKKIFM288;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKDelTgRrkChst extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	
	// サービス契約番号退避用
	private String wkSvcKeiNo = "";
	
	// SYSID退避用
	private String wkSysId = "";
	
	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		
		if(wkSvcKeiNo.equals(inMap.getString(JBSbatKKIFM288.SVC_KEI_NO)) && wkSysId.equals(inMap.getString(JBSbatKKIFM288.SYSID)))
		{
			// 出力なし
			return null;
		}
		
		// 退避内容を更新
		wkSvcKeiNo = inMap.getString(JBSbatKKIFM288.SVC_KEI_NO);
		wkSysId = inMap.getString(JBSbatKKIFM288.SYSID);
		
		// 出力共通電文を生成する。
		JBSbatOutputItem outputBean = new JBSbatOutputItem();
		
		// 入出力インターフェースオブジェクトを生成
		JBSbatServiceInterfaceMap outmap = setOutMap(inMap);
		
		// レコード出力判定フラグを設定
		outmap.setOutFlg(true);
		
		// 出力共通電文に入出力インターフェースを設定する。
		outputBean.addOutMapList(outmap);
		
		// 出力共通電文を返却
		return outputBean;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	
	/**
	 * <dd>メソッド名	：ファイル編集
	 * <dd>メソッド説明	：1.ファイル編集対象項目を取得します。
	 *                    2.取得した項目を元にファイル編集を行います。
	 * @param  inMap     データ取得情報Map
	 * @return outMap    出力Map
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */

	private JBSbatServiceInterfaceMap setOutMap(JBSbatServiceInterfaceMap inMap) throws Exception 
	{

		// 出力情報を設定するMap
		JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
		
		// 割賦サービス契約情報出力
		outmap.setString(JBSbatKKIFM288.SVC_KEI_NO,				 inMap.getString(JBSbatKKIFM288.SVC_KEI_NO));
		outmap.setString(JBSbatKKIFM288.SYSID,					 inMap.getString(JBSbatKKIFM288.SYSID));
		outmap.setString(JBSbatKKIFM288.SVC_CD,					 inMap.getString(JBSbatKKIFM288.SVC_CD));
		outmap.setString(JBSbatKKIFM288.PRC_GRP_CD,				 inMap.getString(JBSbatKKIFM288.PRC_GRP_CD));
		outmap.setString(JBSbatKKIFM288.PCRS_CD,				 inMap.getString(JBSbatKKIFM288.PCRS_CD));
		outmap.setString(JBSbatKKIFM288.SVC_DSL_KISAN_YMD,		 inMap.getString(JBSbatKKIFM288.SVC_DSL_KISAN_YMD));
		outmap.setString(JBSbatKKIFM288.SVC_CANCEL_YMD,			 inMap.getString(JBSbatKKIFM288.SVC_CANCEL_YMD));
		outmap.setString(JBSbatKKIFM288.SVC_DSL_YMD,			 inMap.getString(JBSbatKKIFM288.SVC_DSL_YMD));
		outmap.setString(JBSbatKKIFM288.SVC_ENDYMD,				 inMap.getString(JBSbatKKIFM288.SVC_ENDYMD));
		outmap.setString(JBSbatKKIFM288.UPD_DTM,				 inMap.getString(JBSbatKKIFM288.UPD_DTM));
		outmap.setString(JBSbatKKIFM288.RSV_APLY_YMD,			 inMap.getString(JBSbatKKIFM288.RSV_APLY_YMD));
		outmap.setString(JBSbatKKIFM288.KOJIN_INFO_DEL_RSN_CD,	 inMap.getString(JBSbatKKIFM288.KOJIN_INFO_DEL_RSN_CD));
		outmap.setString(JBSbatKKIFM288.CRNT_DATA_SKBT_CD,		 inMap.getString(JBSbatKKIFM288.CRNT_DATA_SKBT_CD));
		outmap.setString(JBSbatKKIFM288.ISP_NINSHO_ID,			 inMap.getString(JBSbatKKIFM288.ISP_NINSHO_ID));
		outmap.setString(JBSbatKKIFM288.MSKMSHO_NO,				 inMap.getString(JBSbatKKIFM288.MSKMSHO_NO));
// ST-2015-0000030 v15.00.02 ADD START
		outmap.setString(JBSbatKKIFM288.GENE_ADD_DTM,			 inMap.getString(JBSbatKKIFM288.GENE_ADD_DTM));
// ST-2015-0000030 v15.00.02 ADD END
		
		return outmap;
	}
}
