/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKUseFailFileChsht
*	ソースファイル名	：JBSbatKKUseFailFileChsht.java
*	作成者				：富士通　
*	作成日				：2011年05月12日
*＜機能概要＞
*　住所変更による使用不可期間データ抽出部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/05/12   富士通		新規作成
*	v1.01.00	2012/02/21   富士通		IT1-2012-0000302対応
*********************************************************************/
package eo.business.service;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JKKBatStringUtil;
import eo.business.util.file.JBSbatKKIFE083;
import eo.business.util.table.JBSbatCK_T_CUST;
import eo.business.util.table.JBSbatKK_M_PRC_GRP;
import eo.business.util.table.JBSbatKK_T_USE_STP_PRD;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.util.JBSbatStringUtil;

/**
* (クラスの機能概要) <p>
*<BR>
*(1)入力電文の情報を出力情報へ引き渡す（下記ルールを以外はそのまま値受け渡し）
*・利用停止取扱コード名称には住所変更の固定値を渡す
*・YYYYMMDD形式の情報は全てYY.MM.DD形式へ変換して渡す
*
* @author 富士通
*/
public class JBSbatKKUseFailFileChsht extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/
	/** 利用停止取扱コード（住所変更）*/
	private static final String USESTP_TRAT_ADCHG = "住所変更";
	
	/* ++++++++++ v1.01.00 追加開始 ++++++++++ */
	/** 項番 */
	private int num = 0;
	/* ++++++++++ v1.01.00 追加終了 ++++++++++ */

	/**
	 * 初期処理
	 * @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
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		JBSbatOutputItem outputBean = new JBSbatOutputItem();
		JBSbatServiceInterfaceMap outMap = new JBSbatServiceInterfaceMap();
		
		//---------------------------
		//出力情報詰め替え処理
		//---------------------------
		/* ++++++++++ v1.01.00 追加開始 ++++++++++ */
		//項番
		outMap.setString(JBSbatKKIFE083.NUM, JBSbatStringUtil.padNumFormString(String.valueOf(++num), 5));
		/* ++++++++++ v1.01.00 追加終了 ++++++++++ */
		//SYSID
		outMap.setString(JBSbatKKIFE083.SYSID,  inMap.getString(JBSbatCK_T_CUST.SYSID));
		//契約者名
		outMap.setString(JBSbatKKIFE083.KSHMEI, inMap.getString(JBSbatCK_T_CUST.CUST_NM));
		//サービス契約番号
		outMap.setString(JBSbatKKIFE083.SVCKEINO, inMap.getString(JBSbatKK_T_USE_STP_PRD.SVC_KEI_NO));
		//契約サービス
		outMap.setString(JBSbatKKIFE083.KEISVC, inMap.getString(JBSbatKK_M_PRC_GRP.PRC_GRP_NM));
		//利用停止取扱コード名称
		outMap.setString(JBSbatKKIFE083.USESTPTRATCDMEI, USESTP_TRAT_ADCHG);
		//利用停止期間登録年月日
		outMap.setString(JBSbatKKIFE083.USESTPPRDADDYMD, JKKBatStringUtil.getDateChg(inMap.getString(JBSbatKK_T_USE_STP_PRD.USE_STP_PRD_ADD_YMD), "."));
		//サービス開始日
		outMap.setString(JBSbatKKIFE083.SVCSTADAY, JKKBatStringUtil.getDateChg(inMap.getString(JBSbatKK_T_USE_STP_PRD.SVC_STAYMD), "."));
		//利用停止開始年月日
		outMap.setString(JBSbatKKIFE083.USESTPSTAYMD, JKKBatStringUtil.getDateChg(inMap.getString(JBSbatKK_T_USE_STP_PRD.USE_STP_STA_DTM), "."));
		//利用停止終了年月日
		outMap.setString(JBSbatKKIFE083.USESTPENDYMD, JKKBatStringUtil.getDateChg(inMap.getString(JBSbatKK_T_USE_STP_PRD.USE_STP_END_DTM), "."));
		/* ++++++++++ v1.01.00 修正開始 ++++++++++ */
//		//利用停止日数
//		outMap.setString(JBSbatKKIFE083.USESTPNISU, JKKBatCommon.inMap.getString(JBSbatKK_T_USE_STP_PRD.USE_STP_CNT)));
		//利用停止日数
		outMap.setString(JBSbatKKIFE083.USESTPNISU, inMap.getBigDecimal(JBSbatKK_T_USE_STP_PRD.USE_STP_CNT));
		/* ++++++++++ v1.01.00 修正終了 ++++++++++ */
		//電話番号
		outMap.setString(JBSbatKKIFE083.TELNO, inMap.getString(JBSbatCK_T_CUST.KEISHA_TELNO));
		outMap.setOutFlg(true);
		outputBean.addOutMapList(outMap);
		return outputBean;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
}
