/*********************************************************************
*  All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名			：eo顧客基幹システム
*	モジュール名		：JBSbatKKAdslKojiReqRnkiTgChsht
*	ソースファイル名	：JBSbatKKAdslKojiReqRnkiTgChsht.java
*	作成者				：富士通　
*	作成日				：2011年09月20日
*＜機能概要＞
*　ADSL工事依頼連携対象抽出部品です。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/09/20  FJ)団		新規作成
*	v5.00.00	2013/05/01  FJ)団		【IT1-2013-0001109】障害対応　抽出結果0件時のメッセージ削除
*********************************************************************/
package eo.business.service;


import eo.business.common.JBSbatBusinessService;
import eo.business.util.file.JBSbatKKIFM113;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.item.JBSbatServiceInterfaceMap;

/**
* (クラスの機能概要) <p>
*<BR>
* @author 富士通
*/
public class JBSbatKKAdslKojiReqRnkiTgChsht extends JBSbatBusinessService
{
	/**▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼*/
	/** テーブル(ＡＤＳＬ工事)*/
	private static final String D_TBL_NAME_KK_T_ADSL_KOJI = "KK_T_ADSL_KOJI";

	/** テーブルアクセスクラス(ＡＤＳＬ工事)*/
	private JBSbatSQLAccess db_KK_T_ADSL_KOJI = null;
	/**▲▲▲▲▲▲ツールから生成した宣言です 終了▲▲▲▲▲▲*/

	/**
	 * ADSL工事番号
	 */
	private String adslKojiNo = "";
	
	/**
	 * サービス契約番号
	 */
	private String svcKeiNo = "";
	
	/**
	 * 回線提供会社コード
	 */
	private String kaisenTkCompCd = "";
	
	/**
	 * ISP受付番号
	 */
	private String ispUkNo = "";
	
	/**
	 * 申込受付年月日
	 */
	private String mskmUkYmd = "";
	
	/**
	 * 連携ファイルコード
	 */
	private String renkeiFileCd = "";
	
	/**
	 * ISPコード
	 */
	private String ispCd = "";
	
	/**
	 * 契約者タイプコード
	 */
	private String keishaTypeCd = "";
	
	/**
	 * 申込者姓カナ名
	 */
	private String mskmshaSeiKana = "";
	
	/**
	 * 申込者名カナ名
	 */
	private String mskmshaFstnmKana = "";
	
	/**
	 * 申込者名(姓)
	 */
	private String mskmshaNmFmlnm = "";
	
	/**
	 *申込者名(名)
	 */
	private String mskmshaNmFstnm = "";
	
	/**
	 * お客様性別コード
	 */
	private String custSexCd = "";
	
	/**
	 * お客様生年月日
	 */
	private String custBirthd = "";
	
	/**
	 * 法人連絡先担当者名
	 */
	private String hjrrksTntshaNm = "";
	
	/**
	 * 申込者住所郵便番号
	 */
	private String mskmshaAdPcd = "";

	/**
	 * 申込者住所都道府県名
	 */
	private String mskmshaAdStateNm = "";

	/**
	 * 申込者住所市区町村番地名
	 */
	private String mskmshaAdCityBnchiNm = "";

	/**
	 * 申込者住所補記
	 */
	private String mskmshaAdHoki = "";

	/**
	 * 連絡先電話番号
	 */
	private String rrksTelno = "";

	/**
	 * 昼間連絡先電話番号
	 */
	private String dtRrksTelno = "";

	/**
	 * 連絡先FAX番号
	 */
	private String rrksFaxNo = "";

	/**
	 * 連絡先メールアドレス
	 */
	private String rrksMlad = "";

	/**
	 * ADSL料金プランコード
	 */
	private String adslPplanCd = "";

	/**
	 * ADSLタイプコード
	 */
	private String adslTypeCd = "";

	/**
	 * ADSLモデム提供コード
	 */
	private String adslModemTkCd = "";

	/**
	 * ADSL宅内工事コード
	 */
	private String adslTaknikjCd = "";

	/**
	 * eAccessキャンペーンコード
	 */
	private String eaccessCmpCd = "";

	/**
	 * 設置先郵便番号
	 */
	private String stcSakiPcd = "";

	/**
	 * 設置先都道府県名
	 */
	private String stcSakiStateNm = "";

	/**
	 * 設置先市区町村番地名
	 */
	private String stcSakiCityBnchiNm = "";

	/**
	 * 設置先住所補記
	 */
	private String stcSakiAdHoki = "";

	/**
	 * ADSL使用電話番号
	 */
	private String adslUseTelno = "";

	/**
	 * エリア判定局番
	 */
	private String areaJudgeKyokuNo = "";

	/**
	 * 設置先既設電話番号
	 */
	private String stcSakiKstTelno = "";

	/**
	 * ADSL回線種別コード
	 */
	private String adslKaisenSbtCd = "";

	/**
	 * ADSL回線名義人名
	 */
	private String adslKaisenMeiginNm = "";

	/**
	 * アナログ切替承認区分
	 */
	private String anlgSwitchShoninDiv = "";

	/**
	 * 電話番号変更承認コード
	 */
	private String telnoChgShoninCd = "";

	/**
	 * 構内配線コード
	 */
	private String konaiHaisenCd = "";

	/**
	 * ADSL認証ID
	 */
	private String adslNinshoId = "";


	/**
	 * 初期処理
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼*/
		/**▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼*/
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_KK_T_ADSL_KOJI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_KK_T_ADSL_KOJI);
		/**▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 主処理
	 * @param inMap　入力電文
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute(JBSbatServiceInterfaceMap inMap) throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼*/
		super.logPrint.printDebugLog("execute_START");
		
		// 初期検索結果情報の取得
		getKkSelect002Info(inMap);
		
		// 出力共通電文を生成する。
		JBSbatOutputItem outputBean = null;
		// 対象割引サービス対象契約確認ファイルのファイル出力
		outputBean = createKkifm113();
		super.logPrint.printDebugLog("execute_END");
		return outputBean;
	/**▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲*/
	}

	/**
	 * 業務サービス終了処理
	 * @throws Exception
	 */
	public void terminal() throws Exception
	{
	/**▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼*/
		
		/**▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼*/
		// DBアクセスクラスをクローズします
		db_KK_T_ADSL_KOJI.close();
		/**▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲*/
	/**▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲*/
	}
	
	/**
	 * 
	 * 初期検索結果情報の取得を行います。
	 * 
	 * @param inMap 初期検索結果情報。
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private void getKkSelect002Info(JBSbatServiceInterfaceMap inMap) throws Exception
	{
		// フィールド変数の初期化
		adslKojiNo            = "";
		svcKeiNo              = "";
		kaisenTkCompCd        = "";
		ispUkNo               = "";
		mskmUkYmd             = "";
		renkeiFileCd          = "";
		ispCd                 = "";
		keishaTypeCd          = "";
		mskmshaSeiKana        = "";
		mskmshaFstnmKana      = "";
		mskmshaNmFmlnm        = "";
		mskmshaNmFstnm        = "";
		custSexCd             = "";
		custBirthd            = "";
		hjrrksTntshaNm        = "";
		mskmshaAdPcd          = "";
		mskmshaAdStateNm      = "";
		mskmshaAdCityBnchiNm  = "";
		mskmshaAdHoki         = "";
		rrksTelno             = "";
		dtRrksTelno           = "";
		rrksFaxNo             = "";
		rrksMlad              = "";
		adslPplanCd           = "";
		adslTypeCd            = "";
		adslModemTkCd         = "";
		adslTaknikjCd         = "";
		eaccessCmpCd          = "";
		stcSakiPcd            = "";
		stcSakiStateNm        = "";
		stcSakiCityBnchiNm    = "";
		stcSakiAdHoki         = "";
		adslUseTelno          = "";
		areaJudgeKyokuNo      = "";
		stcSakiKstTelno       = "";
		adslKaisenSbtCd       = "";
		adslKaisenMeiginNm    = "";
		anlgSwitchShoninDiv   = "";
		telnoChgShoninCd      = "";
		konaiHaisenCd         = "";
		adslNinshoId          = "";
		
		adslKojiNo            = inMap.getString("ADSL_KOJI_NO");				// ADSL工事番号
		svcKeiNo              = inMap.getString("SVC_KEI_NO");					// サービス契約番号
		kaisenTkCompCd        = inMap.getString("KAISEN_TK_COMP_CD");			// 回線提供会社コード
		ispUkNo               = inMap.getString("ISP_UK_NO");					// ISP受付番号
		mskmUkYmd             = inMap.getString("MSKM_UK_YMD");					// 申込受付年月日
		renkeiFileCd          = inMap.getString("RENKEI_FILE_CD");				// 連携ファイルコード
		ispCd                 = inMap.getString("ISP_CD");						// ISPコード
		keishaTypeCd          = inMap.getString("KEISHA_TYPE_CD");				// 契約者タイプコード
		mskmshaSeiKana        = inMap.getString("MSKMSHA_SEI_KANA");			// 申込者姓カナ名
		mskmshaFstnmKana      = inMap.getString("MSKMSHA_FSTNM_KANA");			// 申込者名カナ名
		mskmshaNmFmlnm        = inMap.getString("MSKMSHA_NM_FMLNM");			// 申込者名(姓)
		mskmshaNmFstnm        = inMap.getString("MSKMSHA_NM_FSTNM");			// 申込者名(名)
		custSexCd             = inMap.getString("CUST_SEX_CD");					// お客様性別コード
		custBirthd            = inMap.getString("CUST_BIRTHD");					// お客様生年月日
		hjrrksTntshaNm        = inMap.getString("HJRRKS_TNTSHA_NM");			// 法人連絡先担当者名
		mskmshaAdPcd          = inMap.getString("MSKMSHA_AD_PCD");				// 申込者住所郵便番号
		mskmshaAdStateNm      = inMap.getString("MSKMSHA_AD_STATE_NM");			// 申込者住所都道府県名
		mskmshaAdCityBnchiNm  = inMap.getString("MSKMSHA_AD_CITY_BNCHI_NM");	// 申込者住所市区町村番地名
		mskmshaAdHoki         = inMap.getString("MSKMSHA_AD_HOKI");				// 申込者住所補記
		rrksTelno             = inMap.getString("RRKS_TELNO");					// 連絡先電話番号
		dtRrksTelno           = inMap.getString("DT_RRKS_TELNO");				// 昼間連絡先電話番号
		rrksFaxNo             = inMap.getString("RRKS_FAX_NO");					// 連絡先FAX番号
		rrksMlad              = inMap.getString("RRKS_MLAD");					// 連絡先メールアドレス
		adslPplanCd           = inMap.getString("ADSL_PPLAN_CD");				// ADSL料金プランコード
		adslTypeCd            = inMap.getString("ADSL_TYPE_CD");				// ADSLタイプコード
		adslModemTkCd         = inMap.getString("ADSL_MODEM_TK_CD");			// ADSLモデム提供コード
		adslTaknikjCd         = inMap.getString("ADSL_TAKNIKJ_CD");				// ADSL宅内工事コード
		eaccessCmpCd          = inMap.getString("EACCESS_CMP_CD");				// eAccessキャンペーンコード
		stcSakiPcd            = inMap.getString("STC_SAKI_PCD");				// 設置先郵便番号
		stcSakiStateNm        = inMap.getString("STC_SAKI_STATE_NM");			// 設置先都道府県名
		stcSakiCityBnchiNm    = inMap.getString("STC_SAKI_CITY_BNCHI_NM");		// 設置先市区町村番地名
		stcSakiAdHoki         = inMap.getString("STC_SAKI_AD_HOKI");			// 設置先住所補記
		adslUseTelno          = inMap.getString("ADSL_USE_TELNO");				// ADSL使用電話番号
		areaJudgeKyokuNo      = inMap.getString("AREA_JUDGE_KYOKU_NO");			// エリア判定局番
		stcSakiKstTelno       = inMap.getString("STC_SAKI_KST_TELNO");			// 設置先既設電話番号
		adslKaisenSbtCd       = inMap.getString("ADSL_KAISEN_SBT_CD");			// ADSL回線種別コード
		adslKaisenMeiginNm    = inMap.getString("ADSL_KAISEN_MEIGIN_NM");		// ADSL回線名義人名
		anlgSwitchShoninDiv   = inMap.getString("ANALOG_SWITCH_SHONIN_DIV");	// アナログ切替承認区分
		telnoChgShoninCd      = inMap.getString("TELNO_CHG_SHONIN_CD");			// 電話番号変更承認コード
		konaiHaisenCd         = inMap.getString("KONAI_HAISEN_CD");				// 構内配線コード
		adslNinshoId          = inMap.getString("ADSL_NINSHO_ID");				// ADSL認証ID
	}
	
	/**
	 * ＡＤＳＬ工事依頼連携対象ファイルの作成を行います。
	 * @return outputBean JBSbatOutputItem
	 * @throws Exception メソッド内で発生した例外全般。
	 */
	private JBSbatOutputItem createKkifm113() throws Exception
	{
		// 出力共通電文を生成する。
		JBSbatOutputItem outputBean = new JBSbatOutputItem();
		//入出力インターフェースオブジェクトを生成
		JBSbatServiceInterfaceMap outmap = new JBSbatServiceInterfaceMap();
		//項目を設定
		outmap.setString(JBSbatKKIFM113.ADSL_KOJI_NO, adslKojiNo);						// ＡＤＳＬ工事番号
		outmap.setString(JBSbatKKIFM113.SVC_KEI_NO, svcKeiNo);							// サービス契約番号
		outmap.setString(JBSbatKKIFM113.KAISEN_TK_COMP_CD, kaisenTkCompCd);				// 回線提供会社コード
		outmap.setString(JBSbatKKIFM113.ISP_UK_NO, ispUkNo);							// サービス契約状態
		outmap.setString(JBSbatKKIFM113.MSKM_UK_YMD, mskmUkYmd);						// ＩＳＰ受付番号
		outmap.setString(JBSbatKKIFM113.RENKEI_FILE_CD, renkeiFileCd);					// 連携ファイルコード
		outmap.setString(JBSbatKKIFM113.ISP_CD, ispCd);									// ＩＳＰコード
		outmap.setString(JBSbatKKIFM113.KEISHA_TYPE_CD, keishaTypeCd);					// 契約者タイプコード
		outmap.setString(JBSbatKKIFM113.MSKMSHA_SEI_KANA, mskmshaSeiKana);				// 申込者姓カナ名
		outmap.setString(JBSbatKKIFM113.MSKMSHA_FSTNM_KANA, mskmshaFstnmKana);			// 申込者名カナ名
		outmap.setString(JBSbatKKIFM113.MSKMSHA_NM_FMLNM, mskmshaNmFmlnm);				// 申込者名（姓）
		outmap.setString(JBSbatKKIFM113.MSKMSHA_NM_FSTNM, mskmshaNmFstnm);				// 申込者名（名）
		outmap.setString(JBSbatKKIFM113.CUST_SEX_CD, custSexCd);						// お客様性別コード
		outmap.setString(JBSbatKKIFM113.CUST_BIRTHD, custBirthd);						// お客様生年月日
		outmap.setString(JBSbatKKIFM113.HJRRKS_TNTSHA_NM, hjrrksTntshaNm);				// 法人連絡先担当者名
		outmap.setString(JBSbatKKIFM113.MSKMSHA_AD_PCD, mskmshaAdPcd);					// 申込者住所郵便番号
		outmap.setString(JBSbatKKIFM113.MSKMSHA_AD_STATE_NM, mskmshaAdStateNm);			// 申込者住所都道府県名
		outmap.setString(JBSbatKKIFM113.MSKMSHA_AD_CITY_BNCHI_NM, mskmshaAdCityBnchiNm);// 申込者住所市区町村番地名
		outmap.setString(JBSbatKKIFM113.MSKMSHA_AD_HOKI, mskmshaAdHoki);				// 申込者住所補記
		outmap.setString(JBSbatKKIFM113.RRKS_TELNO, rrksTelno);							// 連絡先電話番号
		outmap.setString(JBSbatKKIFM113.DT_RRKS_TELNO, dtRrksTelno);					// 昼間連絡先電話番号
		outmap.setString(JBSbatKKIFM113.RRKS_FAX_NO, rrksFaxNo);						// 連絡先ＦＡＸ番号
		outmap.setString(JBSbatKKIFM113.RRKS_MLAD, rrksMlad);							// 連絡先メールアドレス
		outmap.setString(JBSbatKKIFM113.ADSL_PPLAN_CD, adslPplanCd);					// ＡＤＳＬ料金プランコード
		outmap.setString(JBSbatKKIFM113.ADSL_TYPE_CD, adslTypeCd);						// ＡＤＳＬタイプコード
		outmap.setString(JBSbatKKIFM113.ADSL_MODEM_TK_CD, adslModemTkCd);				// ＡＤＳＬモデム提供コード
		outmap.setString(JBSbatKKIFM113.ADSL_TAKNIKJ_CD, adslTaknikjCd);				// ＡＤＳＬ宅内工事コード
		outmap.setString(JBSbatKKIFM113.EACCESS_CMP_CD, eaccessCmpCd);					// キャンペーンコード
		outmap.setString(JBSbatKKIFM113.STC_SAKI_PCD, stcSakiPcd);						// 設置先郵便番号
		outmap.setString(JBSbatKKIFM113.STC_SAKI_STATE_NM, stcSakiStateNm);				// 設置先都道府県名
		outmap.setString(JBSbatKKIFM113.STC_SAKI_CITY_BNCHI_NM, stcSakiCityBnchiNm);	// 設置先市区町村番地名
		outmap.setString(JBSbatKKIFM113.STC_SAKI_AD_HOKI, stcSakiAdHoki);				// 設置先住所補記
		outmap.setString(JBSbatKKIFM113.ADSL_USE_TELNO, adslUseTelno);					// ＡＤＳＬ使用電話番号
		outmap.setString(JBSbatKKIFM113.AREA_JUDGE_KYOKU_NO, areaJudgeKyokuNo);			// エリア判定局番
		outmap.setString(JBSbatKKIFM113.STC_SAKI_KST_TELNO, stcSakiKstTelno);			// 設置先既設電話番号
		outmap.setString(JBSbatKKIFM113.ADSL_KAISEN_SBT_CD, adslKaisenSbtCd);			// ＡＤＳＬ回線種別コード
		outmap.setString(JBSbatKKIFM113.ADSL_KAISEN_MEIGIN_NM, adslKaisenMeiginNm);		// ＡＤＳＬ回線名義人
		outmap.setString(JBSbatKKIFM113.ANALOG_SWITCH_SHONIN_DIV, anlgSwitchShoninDiv);	// アナログ切替承認区分
		outmap.setString(JBSbatKKIFM113.TELNO_CHG_SHONIN_CD, telnoChgShoninCd);			// 電話番号変更承認コード
		outmap.setString(JBSbatKKIFM113.KONAI_HAISEN_CD, konaiHaisenCd);				// 構内配線コード
		outmap.setString(JBSbatKKIFM113.ADSL_NINSHO_ID, adslNinshoId);					// ＡＤＳＬ認証ＩＤ
		//出力フラグを設定
		outmap.setOutFlg(true);
		//出力共通電文に入出力インターフェースを設定する。
		outputBean.addOutMapList(outmap);
		//出力共通電文を返却
		return outputBean;
	}
}
