/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom, 2011
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：eo顧客基幹システム
 *   モジュール名    ：JKKSIFEKK0371Mapper
 *   ソースファイル名：JKKSIFEKK0371Mapper.java
 *   作成者          ：富士通
 *   日付            ：2014年02月26日
 *＜機能概要＞
 *   オプションサービス契約＜電話＞  照会・更新用マッパー
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *   v8.00.00    2014/02/26   FJ）藤田    新規作成
 *
 **********************************************************************/
package com.fujitsu.futurity.bp.custom.common;



import java.util.HashMap;

import com.fujitsu.futurity.model.base.CAANMsg;

import eo.ejb.cbs.cbsmsg.EKK0371B001CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0371C010CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0371C030CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0371C040CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0371D010CBSMsg;

public class JKKSIFEKK0371Mapper extends JKKSIFMapperBase {

	/**
	 * 共通初期処理
	 * @param template
	 */
	protected void init(CAANMsg template)
	{
		super.init(template);
	}
	
	/**
	 * オプションサービス契約＜電話＞一覧照会（サービス契約内訳番号） S-IF上りマッピング
	 * <br>
	 * @param	svc_kei_ucwk_no	サービス契約内訳番号
	 * @param	funcCode	機能コード
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0371B001(String svc_kei_ucwk_no, String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0371B001CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0371B001CBSMsg().getContents());

		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0371B001CBSMsg.TEMPLATEID, "EKK0371B001");

		// 機能コード
		template.set(EKK0371B001CBSMsg.FUNC_CODE, funcCode);

		// ＫＥＹ＿サービス契約番号
		template.set(EKK0371B001CBSMsg.KEY_SVC_KEI_UCWK_NO, svc_kei_ucwk_no);
		
		return template;
	}

	/**
	 * オプションサービス契約<電話>登録 S-IF上りマッピング
	 * @param tourokuMap テンプレートへのコピー用マップ
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0371D010(HashMap<String, Object> tourokuMap, String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0371D010CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0371D010CBSMsg().getContents());
		
		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0371D010CBSMsg.TEMPLATEID, "EKK0371D010");
		
		// 機能コード
		template.set(EKK0371D010CBSMsg.FUNC_CODE, funcCode);
		
		// 連携されたメッセージデータのコピー
		template.setMsgDataOfAll(tourokuMap);
		
		return template;
	}

	/**
	 * オプションサービス契約＜電話＞照査 S-IF上りマッピング
	 * @param op_svc_kei_no
	 * @param ido_div
	 * @param shosa_dsl_fin_cd
	 * @param n_050_op_telno
	 * @param upd_dtm_bf
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0371C010(String op_svc_kei_no
												, String ido_div
												, String shosa_dsl_fin_cd
												, String n_050_op_telno
												, String upd_dtm_bf
												, String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0371C010CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0371C010CBSMsg().getContents());

		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0371C010CBSMsg.TEMPLATEID, "EKK0371C010");

		// 機能コード
		template.set(EKK0371C010CBSMsg.FUNC_CODE, funcCode);
		
		// オプションサービス契約番号
		template.set(EKK0371C010CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// 異動区分
		template.set(EKK0371C010CBSMsg.IDO_DIV, ido_div);
		// 照査解約完了コード
		template.set(EKK0371C010CBSMsg.SHOSA_DSL_FIN_CD, shosa_dsl_fin_cd);
		// 050オプション電話番号
		template.set(EKK0371C010CBSMsg.N_050_OP_TELNO, n_050_op_telno);
		// 更新年月日時分秒(更新前)
		template.set(EKK0371C010CBSMsg.UPD_DTM_BF, upd_dtm_bf);

		return template;
	}

	/**
	 * オプションサービス契約<電話>照査締結 S-IF上りマッピング
	 * @param op_svc_kei_no
	 * @param ido_div
	 * @param n_050_op_telno
	 * @param upd_dtm_bf
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0371C030(String op_svc_kei_no
												, String ido_div
												, String n_050_op_telno
												, String upd_dtm_bf
												, String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0371C030CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0371C030CBSMsg().getContents());

		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0371C030CBSMsg.TEMPLATEID, "EKK0371C030");

		// 機能コード
		template.set(EKK0371C030CBSMsg.FUNC_CODE, funcCode);
		
		// オプションサービス契約番号
		template.set(EKK0371C030CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// 異動区分
		template.set(EKK0371C030CBSMsg.IDO_DIV, ido_div);
		// 050オプション電話番号
		template.set(EKK0371C030CBSMsg.N_050_OP_TELNO, n_050_op_telno);
		// 更新年月日時分秒(更新前)
		template.set(EKK0371C030CBSMsg.UPD_DTM_BF, upd_dtm_bf);

		return template;
	}

	/**
	 * オプションサービス契約＜電話＞開始 S-IF上りマッピング
	 * @param op_svc_kei_no
	 * @param ido_div
	 * @param n_050_op_telno
	 * @param upd_dtm_bf
	 * @param skj_ykgt
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0371C040(String op_svc_kei_no
												, String ido_div
												, String n_050_op_telno
												, String upd_dtm_bf
												, String skj_ykgt
												, String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0371C040CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0371C040CBSMsg().getContents());

		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0371C040CBSMsg.TEMPLATEID, "EKK0371C040");

		// 機能コード
		template.set(EKK0371C040CBSMsg.FUNC_CODE, funcCode);
		
		// オプションサービス契約番号
		template.set(EKK0371C040CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// 異動区分
		template.set(EKK0371C040CBSMsg.IDO_DIV, ido_div);
		// 050オプション電話番号
		template.set(EKK0371C040CBSMsg.N_050_OP_TELNO, n_050_op_telno);
		// 更新年月日時分秒(更新前)
		template.set(EKK0371C040CBSMsg.UPD_DTM_BF, upd_dtm_bf);
		// 即時/翌月
		template.set(EKK0371C040CBSMsg.SKJ_YKGT, skj_ykgt);

		return template;
	}
}
