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