/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom						 *
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKSmtvlMskmInfoRsv
*	ソースファイル名	：JBSbatKKSmtvlMskmInfoRsv.java
*	作成者				：富士通　
*	作成日				：2012年08月25日
*＜機能概要＞
*　スマートバリュー申込情報受信部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v4.00.00	2012/08/25   富士通		新規作成
*********************************************************************/
package eo.business.service;


import eo.business.common.JBSbatBusinessService;
import eo.business.common.JKKSmtvRcvFile;
import eo.common.constant.JPCBatchMessageConstant;
import eo.framework.application.JBSbatBusinessException;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;

/**
* スマートバリュー申込情報受信 <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKSmtvlMskmInfoRsv extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/

	/** 共通部品（スマートバリュー受信ファイル部品） */
	private JKKSmtvRcvFile receiveFile = null;

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/

		// 共通部品の初期化
		receiveFile = new JKKSmtvRcvFile();
		// ログを設定
		receiveFile.setLogger(commonItem);

		/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		
		// ファイル受信ディレクトリを取得（環境依存）
		String receiveDir = commonItem.getFreeItem();
		
		// KDDIからファイルの受信を行う。
		// ファイル受信処理は共通部品により行う。
		receiveFile.invoke(receiveDir);
		if (receiveFile.existReceiveFile() && !receiveFile.validReceiveFile())
		{
			// ファイルの整合性エラーを返す。
			// OM-2013-0000423 スマートバリュー申込情報取込反映の純バッチ化対応 2013/08/26 START
//			throw new JBSbatBusinessException(JPCBatchMessageConstant.EKKB0020CE, new String[]{receiveDir});
			throw new JBSbatBusinessException(JPCBatchMessageConstant.EKKB0550AW, new String[]{receiveFile.getLastFileName()});
			// OM-2013-0000423 スマートバリュー申込情報取込反映の純バッチ化対応 2013/08/26 END
		}
		return null;
		
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/
	
}
