/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム構築
*   モジュール名    ：JECR0021D090TPMA
*   ソースファイル名：JECR0021D090TPMA.java
*   作成者          ：富士通
*   日付            ：2021年12月02日
*＜機能概要＞
*   対応記録登録顧客独自処理部品
*＜修正履歴＞
*   バージョン  修正日      修正者      修正内容
*   v56.00.00   2021/12/15  富士通      新規作成
*
**********************************************************************/
package eo.ejb.cbs.mainproc;

import com.fujitsu.futurity.model.base.CAANException;
import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.ejb.common.fw.AgentDispatchContext;
import com.fujitsu.futurity.model.ejb.common.fw.TemplateMainHandler;

import eo.ejb.cbm.entity.CR0021ETMsg;
import eo.ejb.cbm.entity.CR0021LE;
import eo.ejb.cbs.cbsmsg.ECR0021C050CBSMsg;
import eo.ejb.common.db.JCRejbCR0011SecProc;

/**
 * <p>
 * 対応記録明細登録（返信メール送信）顧客独自処理部品クラスです。
 * </p>
 * @author 富士通
 */
public class JECR0021C050TPMA implements TemplateMainHandler
{

	/**
	 * コンストラクタです。
	 */
	public JECR0021C050TPMA()
	{
		super();
	}

	/**
	 * <p>
	 * 対応記録副次処理を呼び出します。
	 * </p>
	 * @param inCBSMsg 概念スキーマのCBSメッセージ
	 * @param inContext Agentから渡されたAgentDispatchContext
	 * @throws CAANException 
	 */
	public static void invoke(CAANMsg inCBSMsg, AgentDispatchContext inContext) throws CAANException
	{

		// (4) 対応記録明細のETメッセージを生成し、DB更新値を引き継ぐために以下の値を設定する。
		CAANMsg cr0021ETMsg = new CAANMsg(CR0021ETMsg.class.getName());
		// ETメッセージ.対応記録番号 ← CBSメッセージ.対応記録番号
		cr0021ETMsg.set(CR0021ETMsg.TAIO_KIROK_NO, inCBSMsg.getString(ECR0021C050CBSMsg.TAIO_KIROK_NO));
		// ETメッセージ.対応記録明細番号 ← CBSメッセージ.対応記録明細番号
		cr0021ETMsg.set(CR0021ETMsg.TAIO_KIROK_DTL_NO, inCBSMsg.getString(ECR0021C050CBSMsg.TAIO_KIROK_DTL_NO));
		
		// 対応記録明細の検索
		CAANMsg cr0021ETQMsg = new CR0021LE().findByPrimaryKey(cr0021ETMsg);
		
		// ETメッセージ.メール本文 ← CBSメッセージ.メール本文
		cr0021ETQMsg.set(CR0021ETMsg.SEND_STAT_CD, inCBSMsg.getString(ECR0021C050CBSMsg.SEND_STAT_CD));
		
		// (5) 対応記録副次処理部品を呼出し、対応記録の対応記録履歴を更新する。
		new JCRejbCR0011SecProc().updTaioKirokSmsSend(inCBSMsg, inContext, cr0021ETQMsg);

	}

}
