/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom, 2011
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：eo顧客基幹システム
 *   モジュール名    ：JKKSIFEKK0351Mapper
 *   ソースファイル名：JKKSIFEKK0351Mapper.java
 *   作成者          ：富士通
 *   日付            ：2014年02月26日
 *＜機能概要＞
 *   オプションサービス契約  照会・更新用マッパー
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *   v8.00.00    2014/02/26   FJ）藤田    新規作成
 *
 **********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import com.fujitsu.futurity.model.base.CAANMsg;

import eo.ejb.cbs.cbsmsg.EKK0351C220CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0351C240CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0351C250CBSMsg;

public class JKKSIFEKK0351Mapper extends JKKSIFMapperBase {

	/**
	 * 共通初期処理
	 * @param template
	 */
	protected void init(CAANMsg template)
	{
		super.init(template);
	}
	
	/**
	 * オプションサービス契約キャンセル S-IF上りマッピング
	 * <br>
	 * @param op_svc_kei_no
	 * @param mskm_dtl_no
	 * @param svc_cancel_rsn_cd
	 * @param ido_div
	 * @param upd_dtm_bf
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0351C220(String op_svc_kei_no
												,String mskm_dtl_no
												,String svc_cancel_rsn_cd
												,String ido_div
												,String upd_dtm_bf
												,String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0351C220CBSMsg.class.getName());

		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0351C220CBSMsg().getContents());

		// 共通初期処理
		init(template);

		// テンプレートID
		template.set(EKK0351C220CBSMsg.TEMPLATEID, "EKK0351C220");
		// 機能コード
		template.set(EKK0351C220CBSMsg.FUNC_CODE, funcCode);
		// オプションサービス契約番号
		template.set(EKK0351C220CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// 申込明細番号
		template.set(EKK0351C220CBSMsg.MSKM_DTL_NO, mskm_dtl_no);
		// サービスキャンセル理由コード
		template.set(EKK0351C220CBSMsg.SVC_CANCEL_RSN_CD, svc_cancel_rsn_cd);
		// 異動区分
		template.set(EKK0351C220CBSMsg.IDO_DIV, ido_div);
		// 更新年月日時分秒(更新前)
		template.set(EKK0351C220CBSMsg.UPD_DTM_BF, upd_dtm_bf);

		return template;
	}

	/**
	 * オプションサービス契約解約 S-IF上りマッピング
	 * <br>
	 * @param op_svc_kei_no
	 * @param mskm_dtl_no
	 * @param rsv_tsta_kibo_ymd
	 * @param svc_endymd
	 * @param svc_chrg_endymd
	 * @param svc_dlre_cd
	 * @param svc_dlre_memo
	 * @param dsl_tnt_user_id
	 * @param pnlty_hassei_cd
	 * @param ido_div
	 * @param upd_dtm_bf
	 * @param op_hktgi_sk_svc_kei_no
	 * @param warn_flg
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0351C240(String op_svc_kei_no
												,String mskm_dtl_no
												,String rsv_tsta_kibo_ymd
												,String svc_endymd
												,String svc_chrg_endymd
												,String svc_dlre_cd
												,String svc_dlre_memo
												,String dsl_tnt_user_id
												,String pnlty_hassei_cd
												,String ido_div
												,String upd_dtm_bf
												,String op_hktgi_sk_svc_kei_no
												,String warn_flg
												,String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0351C240CBSMsg.class.getName());

		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0351C240CBSMsg().getContents());

		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0351C240CBSMsg.TEMPLATEID, "EKK0351C240");
		// 機能コード
		template.set(EKK0351C240CBSMsg.FUNC_CODE, funcCode);
		// オプションサービス契約番号
		template.set(EKK0351C240CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// 申込明細番号
		template.set(EKK0351C240CBSMsg.MSKM_DTL_NO, mskm_dtl_no);
		// 予約適用開始希望年月日
		template.set(EKK0351C240CBSMsg.RSV_TSTA_KIBO_YMD, rsv_tsta_kibo_ymd);
		// サービス終了年月日
		template.set(EKK0351C240CBSMsg.SVC_ENDYMD, svc_endymd);
		// サービス課金終了年月日
		template.set(EKK0351C240CBSMsg.SVC_CHRG_ENDYMD, svc_chrg_endymd);
		// サービス解約理由コード
		template.set(EKK0351C240CBSMsg.SVC_DLRE_CD, svc_dlre_cd);
		// サービス解約理由メモ
		template.set(EKK0351C240CBSMsg.SVC_DLRE_MEMO, svc_dlre_memo);
		// 解約担当ユーザーID
		template.set(EKK0351C240CBSMsg.DSL_TNT_USER_ID, dsl_tnt_user_id);
		// 違約金発生コード
		template.set(EKK0351C240CBSMsg.PNLTY_HASSEI_CD, pnlty_hassei_cd);
		// 異動区分
		template.set(EKK0351C240CBSMsg.IDO_DIV, ido_div);
		// 更新年月日時分秒(更新前)
		template.set(EKK0351C240CBSMsg.UPD_DTM_BF, upd_dtm_bf);
		// オプション引継先サービス契約番号
		template.set(EKK0351C240CBSMsg.OP_HKTGI_SK_SVC_KEI_NO, op_hktgi_sk_svc_kei_no);
		// 警告フラグ
		template.set(EKK0351C240CBSMsg.WARN_FLG, warn_flg);

		return template;
	}

	/**
	 * オプションサービス契約解約 S-IF上りマッピング
	 * <br>
	 * @param op_svc_kei_no
	 * @param svc_endymd
	 * @param svc_chrg_endymd
	 * @param svc_dlre_cd
	 * @param svc_dlre_memo
	 * @param dsl_tnt_user_id
	 * @param ido_div
	 * @param upd_dtm_bf
	 * @param dslji_chrg_flg
	 * @param plan_end_sbt_cd
	 * @param funcCode
	 * @return テンプレート
	 */
	public CAANMsg getMappedTemplateEKK0351C250(String op_svc_kei_no
			,String svc_endymd
			,String svc_chrg_endymd
			,String svc_dlre_cd
			,String svc_dlre_memo
			,String dsl_tnt_user_id
			,String ido_div
			,String upd_dtm_bf
			,String dslji_chrg_flg
			,String plan_end_sbt_cd
			,String funcCode)
	{
		CAANMsg template = new CAANMsg(EKK0351C250CBSMsg.class.getName());
		
		// まずは全条件のNullマッピング
		fillCAANMSGNullMapping(template, new EKK0351C250CBSMsg().getContents());
		
		// 共通初期処理
		init(template);
		
		// テンプレートID
		template.set(EKK0351C250CBSMsg.TEMPLATEID, "EKK0351C250");
		// 機能コード
		template.set(EKK0351C250CBSMsg.FUNC_CODE, funcCode);
		// オプションサービス契約番号
		template.set(EKK0351C250CBSMsg.OP_SVC_KEI_NO, op_svc_kei_no);
		// サービス終了年月日
		template.set(EKK0351C250CBSMsg.SVC_ENDYMD, svc_endymd);
		// サービス課金終了年月日
		template.set(EKK0351C250CBSMsg.SVC_CHRG_ENDYMD, svc_chrg_endymd);
		// サービス解約理由コード
		template.set(EKK0351C250CBSMsg.SVC_DLRE_CD, svc_dlre_cd);
		// サービス解約理由メモ
		template.set(EKK0351C250CBSMsg.SVC_DLRE_MEMO, svc_dlre_memo);
		// 解約担当ユーザーID
		template.set(EKK0351C250CBSMsg.DSL_TNT_USER_ID, dsl_tnt_user_id);
		// 異動区分
		template.set(EKK0351C250CBSMsg.IDO_DIV, ido_div);
		// 更新年月日時分秒(更新前)
		template.set(EKK0351C250CBSMsg.UPD_DTM_BF, upd_dtm_bf);
		// 解約時課金フラグ
		template.set(EKK0351C250CBSMsg.DSLJI_CHRG_FLG, dslji_chrg_flg);
		// プラン終了種別コード
		template.set(EKK0351C250CBSMsg.PLAN_END_SBT_CD, plan_end_sbt_cd);
		
		return template;
	}
}
