/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKRsltInfFileHenshu
*	ソースファイル名	：JBSbatKKRsltInfFileHenshu.java
*	作成者				：富士通　
*	作成日				：2011年09月20日
*＜機能概要＞
*　結果情報ファイル編集部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/09/20   富士通		新規作成
*	v4.00 00	2013/02/07	 FJ)泉		【TAI-2012-0000143】バッチ異常終了時のログのメッセージ修正
*	v5.00		2013/05/16   FJ)米谷	【SG1-2013-0000041】受付者、担当者項目の出力値を修正
*	v6.00		2013/12/30	 FJ)管谷	【OM-2013-0005230】PCセットアップ結果情報の出力結果（作成日時・タイトル）を修正
*	v9.00		2014/07/05	 FJ)山裾    【ANK-2068-00-00】  PCセットアップデータ取り込み改善対応
*	v15.00		2015/07/30	 FJ)三宅	【OM-2015-0001899】マイナーアラーム対応
*	v19.00.01	2015/09/24	 FJ)古田	【OM-2015-0002392】作成日付の全角許容
*
*
*********************************************************************/
package eo.business.service;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCCBatCommon;
import eo.business.common.JKKBatCommon;
import eo.business.common.JKKBatConst;
import eo.business.util.file.JBSbatCRIFE016;
import eo.business.util.file.JBSbatKKIFE151;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.constant.JZM0171Constant;
import eo.common.util.JPCEditString;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatServiceInterfaceMap;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.file.JBSbatOutputFileUtil;
import eo.framework.util.JBSbatCheckUtil;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKRsltInfFileHenshu extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/

	/** ＰＣセットアップ結果データファイル */
	public static final String PC_SETUP_FILE = "ＰＣセットアップ結果データファイル";

	/** ファイル出力文字列(クローズ) */
	public static final String FILE_CLOSE = "クローズ";

	/** ファイル出力文字列(処理中) */
	public static final String FILE_TRN = "処理中";

	/** ファイル出力文字列(バッチＩＤ) */
	public static final String FILE_BATCH_ID = "KKPRC34702";

	/** ファイル出力文字列(他システム) */
	public static final String FILE_TSYS = "他システム";

	/** ファイル出力文字列(タイトル[上部]) */
	public static final String FILE_TITLE_TOP = "ＰＣセットアップ結果情報（";

	/** ファイル出力文字列(タイトル[下部]) */
	public static final String FILE_TITLE_LAST = "）";

	/** ファイル入力フォーマット(日付) */
	public static final String FILE_DATE_IN = "yyyyMMddHHmmss";

	/** ファイル出力フォーマット(日付) */
	public static final String FILE_DATE_FORMAT = "yyyy/MM/dd HH:mm:ss";

	/** 改行コード */
	private static final String CRLF  = "CR+LF";

	/** 文字コード */
	private static final String SJIS  = JKKBatConst.SJIS;

	/** 件数ファイル括り文字 */
	private static final String SCOPE  = "\"";

	/** ファイル出力文字(タイトル) */
	private String fileTitle = null;

	/** 件数ファイル */
	private String cntFileName = null;

	/** 件数ファイル出力件数 */
	private int outmapCnt = 0;

// SG1-2013-0000041 2013.05.16 ADD START
	/** 業務パラメータ(契約用対応履歴登録ユーザ) */
	private static final String WORK_PARAM_ID_KK_TAIORRK_ADD_USER = "KK_TAIORRK_ADD_USER";
	private String taioRrkAddUser = null;
// SG1-2013-0000041 2013.05.16 ADD END

	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/

		// フリー項目で渡されたファイル名を取得
		String freeNames = super.freeItem;
		if(freeNames != null && !"".equals(freeNames))
		{
			String[] fileNames = freeNames.split(JKKBatConst.S_PARAM_DELIM);
			if (fileNames.length == 2)
			{
				String code = fileNames[0];
				this.cntFileName = fileNames[1];

				// 処理対象会社コードの会社名を取得し、タイトルに設定
				StringBuffer sb = new StringBuffer();
				sb.append(FILE_TITLE_TOP);
				sb.append(JKKBatCommon.getCdDivName(commonItem, JZM0171Constant.CD00422, code));
				sb.append(FILE_TITLE_LAST);
				this.fileTitle = sb.toString();
			}
		}
		
// SG1-2013-0000041 2013.05.16 ADD START
		// 受付者、担当者用文字列を取得	
		this.taioRrkAddUser = JKKBatCommon.getWorkParamSetteValue(super.commonItem, WORK_PARAM_ID_KK_TAIORRK_ADD_USER);
// SG1-2013-0000041 2013.05.16 ADD END

	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		// 出力共通電文を生成
		JBSbatOutputItem outputItem = new JBSbatOutputItem();

		// 入力レコードに異常があった場合
		if (inMap.isInputErrorFlg())
		{
			// 業務エラーログ出力
				
			// TAI-2012-0000143 2013/02/07 MOD START
//			super.logPrint.printBusinessErrorLog(JPCBatchMessageConstant.EKKB0100AE, new String[] {PC_SETUP_FILE});
			super.logPrint.printBusinessErrorLog
				(JPCBatchMessageConstant.EKKB0100AE, new String[] {PC_SETUP_FILE + "(KKIFE151.csv)"});
			// TAI-2012-0000143 2013/02/07 MOD END
			
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			return null;
		}

		// データをHashMapに格納
		HashMap rsMap = inMap.getMap();

		// 入力情報（PCセットアップ結果データファイル）の単項目チェック
		if (!isSingleCheckKKIFE151_INF1(rsMap, getItemvalueMap()))
		{
			// エラーフラグ設定
			super.commonItem.setErrFlg(true);
			return null;
		}

		// 出力ファイルにデータを設定
		outputItem.addOutMapList(setOutFileData(inMap));

		// 処理件数をカウントアップ
		this.outmapCnt++;

		return outputItem;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/

		// 件数ファイルを作成し、処理件数を出力
		JBSbatOutputFileUtil cntFile = new JBSbatOutputFileUtil(this.cntFileName);
		cntFile.setEncode(SJIS);
		cntFile.setLine(CRLF);
		cntFile.createWriter();
		StringBuffer sb = new StringBuffer();
		sb.append(SCOPE);
		sb.append(String.valueOf(this.outmapCnt));
		sb.append(SCOPE);
		cntFile.write(sb.toString());
		cntFile.close();
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}

	/**▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼*/
	/**
	 *入力情報（ＰＣセットアップ結果データファイル）の単項目チェックを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.単項目チェックを行います。<br>
	 * 
	 * 2.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		rsMap:(項目、値)を(key、value)として、データをrsMapに入れます
	 *		itemvalueMap:埋め込み文字の値をitemvalueMapに入れます。キーの値は、以下に説明します。
	 *			 TXT-KKIFE151-INF1.KOKYAKU_TYPE			ＰＣセットアップ結果データファイル.顧客タイプ
	 *			 TXT-KKIFE151-INF1.KOKYAKU_TYPE			ＰＣセットアップ結果データファイル.顧客タイプ
	 *			 TXT-KKIFE151-INF1.KOKYAKU_TYPE			ＰＣセットアップ結果データファイル.顧客タイプ
	 *			 TXT-KKIFE151-INF1.CUST_ID			ＰＣセットアップ結果データファイル.お客様ＩＤ
	 *			 TXT-KKIFE151-INF1.CUST_ID			ＰＣセットアップ結果データファイル.お客様ＩＤ
	 *			 TXT-KKIFE151-INF1.CTGR_1			ＰＣセットアップ結果データファイル.カテゴリー１
	 *			 TXT-KKIFE151-INF1.CTGR_1			ＰＣセットアップ結果データファイル.カテゴリー１
	 *			 TXT-KKIFE151-INF1.CTGR_2			ＰＣセットアップ結果データファイル.カテゴリー２
	 *			 TXT-KKIFE151-INF1.CTGR_2			ＰＣセットアップ結果データファイル.カテゴリー２
	 *			 TXT-KKIFE151-INF1.CTGR_3			ＰＣセットアップ結果データファイル.カテゴリー３
	 *			 TXT-KKIFE151-INF1.CTGR_3			ＰＣセットアップ結果データファイル.カテゴリー３
	 *			 TXT-KKIFE151-INF1.CTGR_4			ＰＣセットアップ結果データファイル.カテゴリー４
	 *			 TXT-KKIFE151-INF1.CTGR_4			ＰＣセットアップ結果データファイル.カテゴリー４
	 *			 TXT-KKIFE151-INF1.TOIAWASE_RIREKI			ＰＣセットアップ結果データファイル.問合せ履歴
	 *			 TXT-KKIFE151-INF1.TOIAWASE_RIREKI			ＰＣセットアップ結果データファイル.問合せ履歴
	 *			 TXT-KKIFE151-INF1.SW_KOKYAKU_ID			ＰＣセットアップ結果データファイル.ＳＷ顧客ＩＤ
	 *			 TXT-KKIFE151-INF1.SW_KOKYAKU_ID			ＰＣセットアップ結果データファイル.ＳＷ顧客ＩＤ
	 * </pre>
	 * <p>
	 * @param rsMap 入力データ（TXT又はDB）を格納されたHashMap。
	 * @param itemvalueMap エラーメッセージに関する項目値を格納されたHashMap。
	 * @return  boolean trueである場合、エラーがありません。falseである場合、エラーを発生しました。
	 */
	private boolean isSingleCheckKKIFE151_INF1(HashMap rsMap, HashMap itemvalueMap)
	{
		// 単項目チェックを行います
		String strValue = null;

		// 顧客タイプ項目チェック
		strValue = (String)rsMap.get("KOKYAKU_TYPE");
		// 必須チェック
		if(strValue == null || "".equals(strValue))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0060TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.KOKYAKU_TYPE")});
			return false;
		}
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "5"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.KOKYAKU_TYPE")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"zenkaku"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.KOKYAKU_TYPE")});
			return false;
		}

		// お客様ＩＤ項目チェック
		strValue = (String)rsMap.get("CUST_ID");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CUST_ID")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakuesuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CUST_ID")});
			return false;
		}
// v15.00 ADD START
		// 作成日時項目チェック
		strValue = (String)rsMap.get("SAKUSEI_DATE");
		
// v19.00.01 ADD START
		if(strValue != null)
		{
			strValue = strValue.replaceAll("　", " ");
			// 前後の空白トリム
			strValue = JPCEditString.trim(strValue);
		}
// v19.00.01 ADD END
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"day_hour4"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0240TW", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.SAKUSEI_DATE")});
			return false;
		}
// v15.00 ADD END
		// カテゴリー１項目チェック
		strValue = (String)rsMap.get("CTGR_1");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "15"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_1")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"mix"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_1")});
			return false;
		}

		// カテゴリー２項目チェック
		strValue = (String)rsMap.get("CTGR_2");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "15"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_2")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"mix"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_2")});
			return false;
		}

		// カテゴリー３項目チェック
		strValue = (String)rsMap.get("CTGR_3");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "15"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_3")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"mix"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_3")});
			return false;
		}

		// カテゴリー４項目チェック
		strValue = (String)rsMap.get("CTGR_4");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "15"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_4")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"mix"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.CTGR_4")});
			return false;
		}

		// 問合せ履歴項目チェック
		strValue = (String)rsMap.get("TOIAWASE_RIREKI");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "2000"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.TOIAWASE_RIREKI")});
			return false;
		}
		// 属性チェック
		
		// 2014.07.05 ANK-2068-00-00 Del Start
//		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"mix"}))
//		{
//			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
//															(String)itemvalueMap.get("TXT-KKIFE151-INF1.TOIAWASE_RIREKI")});
//			return false;
//		}
		// 2014.07.05 ANK-2068-00-00 Del End

		// ＳＷ顧客ＩＤ項目チェック
		strValue = (String)rsMap.get("SW_KOKYAKU_ID");
		// 桁数チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"ketasuu2", "0", "10"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0070TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.SW_KOKYAKU_ID")});
			return false;
		}
		// 属性チェック
		if(!JBSbatCheckUtil.invoke(strValue, new String[]{"hannkakusuuji1"}))
		{
			commonItem.getLogPrint().printBusinessErrorLog("EKKB0080TE", new String[]{
															(String)itemvalueMap.get("TXT-KKIFE151-INF1.SW_KOKYAKU_ID")});
			return false;
		}

		return true;
	}
	/**▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲*/

	/**
	 * エラーメッセージに関する項目値を格納されたHashMap<String, String>を生成します。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.エラーメッセージに関する項目値を格納されたHashMapを生成する。<br>
	 *
	 * 2.エラーメッセージに関する項目値を格納されたHashMapに値を設定する。<br>
	 * </pre>
	 * <p>
	 * @return itemvalueMap エラーメッセージに関する項目値を格納されたHashMap
	 */
	private HashMap<String, String> getItemvalueMap()
	{
		// エラーメッセージに関する項目値が格納されたHashMapを設定
		HashMap<String, String> itemvalueMap = new HashMap<String, String>();
		itemvalueMap.put("TXT-KKIFE151-INF1.KOKYAKU_TYPE", "ＰＣセットアップ結果データファイル.顧客タイプ");
		itemvalueMap.put("TXT-KKIFE151-INF1.CUST_ID", "ＰＣセットアップ結果データファイル.お客様ＩＤ");
		itemvalueMap.put("TXT-KKIFE151-INF1.CTGR_1", "ＰＣセットアップ結果データファイル.カテゴリー１");
		itemvalueMap.put("TXT-KKIFE151-INF1.CTGR_2", "ＰＣセットアップ結果データファイル.カテゴリー２");
		itemvalueMap.put("TXT-KKIFE151-INF1.CTGR_3", "ＰＣセットアップ結果データファイル.カテゴリー３");
		itemvalueMap.put("TXT-KKIFE151-INF1.CTGR_4", "ＰＣセットアップ結果データファイル.カテゴリー４");
		itemvalueMap.put("TXT-KKIFE151-INF1.TOIAWASE_RIREKI", "ＰＣセットアップ結果データファイル.問合せ履歴");
		itemvalueMap.put("TXT-KKIFE151-INF1.SW_KOKYAKU_ID", "ＰＣセットアップ結果データファイル.ＳＷ顧客ＩＤ");
// v15.00 ADD START
		itemvalueMap.put("TXT-KKIFE151-INF1.SAKUSEI_DATE", "ＰＣセットアップ結果データファイル.作成日時");
// v15.00 ADD END

		return itemvalueMap;
	}

	/**
	 * 出力ファイルにデータを設定します。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.PCセットアップ結果データファイルに出力するデータを設定する。<br>
	 * </pre>
	 * <p>
	 * @param inMap 入力電文
	 * @return JBSbatServiceInterfaceMap 入出力インターフェースマップ
	 * @throws Exception 
	 */
	private JBSbatServiceInterfaceMap setOutFileData(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// 入出力インターフェースオブジェクトを生成
		JBSbatServiceInterfaceMap outMap = new JBSbatServiceInterfaceMap();
		// 日付フォーマット
		SimpleDateFormat sdf = new SimpleDateFormat(FILE_DATE_FORMAT);
		SimpleDateFormat instance = new SimpleDateFormat(FILE_DATE_IN);

		// 顧客タイプ
		outMap.setString(JBSbatCRIFE016.CUST_TYPE, inMap.getString(JBSbatKKIFE151.KOKYAKU_TYPE));
		// サービス契約番号
		outMap.setString(JBSbatCRIFE016.CUST_ID, inMap.getString(JBSbatKKIFE151.CUST_ID));
		// 顧客氏名
		outMap.setString(JBSbatCRIFE016.CUST_NM, "");
		// 顧客氏名（カナ）
		outMap.setString(JBSbatCRIFE016.CUST_NM_KANA, "");
		// 電話番号
		outMap.setString(JBSbatCRIFE016.TELNO, "");
		// 電話番号２
		outMap.setString(JBSbatCRIFE016.TELNO_2, "");
		// 郵便番号
		outMap.setString(JBSbatCRIFE016.PCD, "");
		// 住所１
		outMap.setString(JBSbatCRIFE016.AD_1, "");
		// 住所２
		outMap.setString(JBSbatCRIFE016.AD_2, "");
		// 住所３
		outMap.setString(JBSbatCRIFE016.AD_3, "");
		// 性別
		outMap.setString(JBSbatCRIFE016.SEX, "");
		// 生年月日
		outMap.setString(JBSbatCRIFE016.BIRTHD, "");
		// 状態
		outMap.setString(JBSbatCRIFE016.JOTAI, FILE_CLOSE);
		// ステータス
		outMap.setString(JBSbatCRIFE016.STAT, FILE_TRN);
// ▼▼▼ 2013.12.30【OM-2013-0005230】Mod START ▼▼▼
		// 作成日時
//		outMap.setString(JBSbatCRIFE016.SAKSEI_DATE,
//				sdf.format(instance.parse(JCCBatCommon.getSysDateTime())));

		// 2014.07.05 ANK-2068-00-00 Mod Start
//		outMap.setString(JBSbatCRIFE016.SAKSEI_DATE, inMap.getString(JBSbatKKIFE151.SAKUSEI_DATE));
		// 全角空白を半角空白に置き換える
		String dtString = inMap.getString(JBSbatKKIFE151.SAKUSEI_DATE).replaceAll("　", " ");
		Date dt = sdf.parse(dtString);
		outMap.setString(JBSbatCRIFE016.SAKSEI_DATE, sdf.format(dt));
		// 2014.07.05 ANK-2068-00-00 Mod End
		
// ▲▲▲ 2013.12.30【OM-2013-0005230】Mod END ▲▲▲
// SG1-2013-0000041 2013.05.16 MOD START
		// 受付者
		outMap.setString(JBSbatCRIFE016.UKSHA, this.taioRrkAddUser);
		// 担当者
		outMap.setString(JBSbatCRIFE016.TNTSHA, this.taioRrkAddUser);
// SG1-2013-0000041 2013.05.16 MOD END
		// キュー名
		outMap.setString(JBSbatCRIFE016.QUE_NM, "");
		// 受付種別
		outMap.setString(JBSbatCRIFE016.UK_SBT, FILE_TSYS);
// ▼▼▼ 2013.12.30【OM-2013-0005230】Mod START ▼▼▼
		// タイトル
//		outMap.setString(JBSbatCRIFE016.TITLE, this.fileTitle);
		outMap.setString(JBSbatCRIFE016.TITLE, inMap.getString(JBSbatKKIFE151.TITLE));
// ▲▲▲ 2013.12.30【OM-2013-0005230】Mod END ▲▲▲
		// カテゴリー１
		outMap.setString(JBSbatCRIFE016.CTGR_1, inMap.getString(JBSbatKKIFE151.CTGR_1));
		// カテゴリー２
		outMap.setString(JBSbatCRIFE016.CTGR_2, inMap.getString(JBSbatKKIFE151.CTGR_2));
		// カテゴリー３
		outMap.setString(JBSbatCRIFE016.CTGR_3, inMap.getString(JBSbatKKIFE151.CTGR_3));
		// カテゴリー４
		outMap.setString(JBSbatCRIFE016.CTGR_4, inMap.getString(JBSbatKKIFE151.CTGR_4));
		// カテゴリー５
		outMap.setString(JBSbatCRIFE016.CTGR_5, "");
		// カテゴリー６
		outMap.setString(JBSbatCRIFE016.CTGR_6, "");
		// カテゴリー７
		outMap.setString(JBSbatCRIFE016.CTGR_7, "");
		// カテゴリー８
		outMap.setString(JBSbatCRIFE016.CTGR_8, "");
		// カテゴリー９
		outMap.setString(JBSbatCRIFE016.CTGR_9, "");
		// カテゴリー１０
		outMap.setString(JBSbatCRIFE016.CTGR_10, "");
		// カテゴリー１１
		outMap.setString(JBSbatCRIFE016.CTGR_11, "");
		// 問合せ履歴
		outMap.setString(JBSbatCRIFE016.TOIAWASE_RIREKI, inMap.getString(JBSbatKKIFE151.TOIAWASE_RIREKI));
		// 問合せ客番号
		outMap.setString(JBSbatCRIFE016.PROSCST_ID, inMap.getString(JBSbatKKIFE151.SW_KOKYAKU_ID));
		// ｅｏＩＤ
		outMap.setString(JBSbatCRIFE016.EOID, "");
		// 申込書番号
		outMap.setString(JBSbatCRIFE016.MSKMSHO_NO, "");
		// コールバック日時
		outMap.setString(JBSbatCRIFE016.CALLBK_DATE, "");
		// コールバック時間指定タイプ
		outMap.setString(JBSbatCRIFE016.CALLBK_SHITEI_TYPE, "");

		outMap.setOutFlg(true);
		return outMap;
	}
}
