/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JSCEditMobOrd
*	ソースファイル名：JSCEditMobOrd.java
*	作成者			：富士通
*	日付			：2011年06月08日
*＜機能概要＞
*	モバイルオーダ受付の三層スキーマ変換時に必要項目を編集する。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2011/06/22	富士通		新規作成
*	v3.00.00	2012/08/27	FJ)前岡		getRrkData()：SPOTセッション数のフォーマットをゼロサプレス無しに変更
*
**********************************************************************/
package eo.ejb.common.edit;

import com.fujitsu.futurity.model.base.CAANMsg;
import com.fujitsu.futurity.model.ejb.common.fw.AgentDispatchContext;

import eo.common.constant.JPCModelConstant;
import eo.common.constant.JSCStrConstant;

import eo.ejb.cbm.cbmmsg.SC0031CBMMsg;
import eo.ejb.cbm.cbmmsg.SC0051CBMMsg;
import eo.ejb.cbm.cbmmsg.SC0101CBMMsg;
import eo.ejb.cbm.cbmmsg.SC0111CBMMsg;
import eo.ejb.cbm.cbmmsg.SC0131CBMMsg;
import eo.ejb.cbm.cbmmsg.SC0121CBMMsg;
import eo.ejb.cbs.cbsmsg.ESC0031D010CBSMsg;
import eo.ejb.cbs.cbsmsg.ESC0041D010CBSMsg;
import eo.ejb.cbs.cbsmsg.ESC0051D010CBSMsg;

/**
 * <p>
 * モバイルオーダ受付編集独自部品<br>
 * </p>
 * @author 富士通
 */
public class JSCEditMobOrd
{

	/**
	 * コンストラクタ
	 */
	public JSCEditMobOrd()
	{
		
	}
	
	/**
	 * <p>
	 * モバイルオーダ受付編集
	 * </p>
	 * @param inMsg 処理対象のメッセージキャリア
	 * @param inContext Agentから渡されたAgentDispatchContext
	 * @param sc0031D001Msg モバイルオーダのメッセージ
	 * @param sc0111D001Msg ＥＭオーダ送受信情報のメッセージ
	 * @param sc0131D001Msg ＵＱ送受信情報のメッセージ
	 * @param sc0121D001Msg ＳＰＯＴオーダ送受信情報のメッセージ
	 * @return ＳＯＤ送信キー
	 */
	public static String getMobOrd(CAANMsg inMsg, AgentDispatchContext inContext, CAANMsg sc0031D001Msg, CAANMsg sc0111D001Msg,
										CAANMsg sc0131D001Msg, CAANMsg sc0121D001Msg)
	{
		//モバイルオーダ ----------
		//ＳＯＤ業務連携ステータス
		String sodRnkiStat = "";
		//要求元アプリ種別コードが"C"：要求元アプリ種別(Claris)の場合、"002"：業務連携待ちSOD応答未。以外は、"001"：業務連携なし
		if(sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_MT_APL_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_CD_CLARIS))
		{
			sodRnkiStat = JSCStrConstant.SOD_RNKI_STAT_WAIT_RES;
			//要求元アプリ種別コードが"C"：要求元アプリ種別(Claris)の場合、法人サービス契約受付番号にサービス契約番号を設定
			sc0031D001Msg.set(SC0031CBMMsg.HOJIN_SVC_KEI_UK_NO, sc0031D001Msg.getObject(SC0031CBMMsg.SVC_KEI_NO));
		}
		else
		{
			sodRnkiStat = JSCStrConstant.SOD_RNKI_STAT_NO;
		}
		sc0031D001Msg.set(SC0131CBMMsg.SOD_WORK_RNKI_STAT, sodRnkiStat);
		
		//ＵＱＲＯＭ種別コード
		sc0031D001Msg.set(SC0031CBMMsg.UQ_ROM_SBT_CD, 
							getUqRomSbtCd(inMsg.getObject(ESC0031D010CBSMsg.MOBILE_ORDER_CD),inMsg.getObject(ESC0031D010CBSMsg.UQ_ROM_SBT_CD), inMsg.getObject(ESC0031D010CBSMsg.UQ_PPLAN_CD)));
		//ＳＰＯＴ＿セッション数変更有無
		sc0031D001Msg.set(SC0031CBMMsg.SPOT_SESSION_CNT_CHGUM, judgeChgUmu((String)inMsg.getObject(ESC0031D010CBSMsg.OLD_SPOT_SESSION_CNT), 
							(String)inMsg.getObject(ESC0031D010CBSMsg.SPOT_SESSION_CNT)));
		//変更有無（削除）の場合
		if(JSCStrConstant.SOD_HENKO_UMU_SAKUJYO.equals(nullToStr(sc0031D001Msg.getObject(SC0031CBMMsg.SPOT_SESSION_CNT_CHGUM))))
		{
			sc0031D001Msg.set(SC0031CBMMsg.SPOT_SESSION_CNT, nullToStr(inMsg.getObject(ESC0031D010CBSMsg.OLD_SPOT_SESSION_CNT)));
		}
		
/*
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ORDER_NO, "0000001");	//モバイルオーダ番号
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ORDER_STAT, "");			//モバイルオーダステータス
		sc0031D001Msg.set(SC0031CBMMsg.YOKYU_MT_APL_SBT_CD, "");		//要求元アプリ種別コード
		sc0031D001Msg.set(SC0031CBMMsg.YOKYU_SBT_CD, "");				//要求種別コード
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ORDER_CD, "");			//モバイルオーダコード
		sc0031D001Msg.set(SC0031CBMMsg.SVC_KEI_NO, "");				//サービス契約番号
		sc0031D001Msg.set(SC0031CBMMsg.SVC_KEI_UCWK_NO, "");			//サービス契約内訳番号
		sc0031D001Msg.set(SC0031CBMMsg.HOJIN_SVC_KEI_UK_NO, "");		//法人サービス契約受付番号
		sc0031D001Msg.set(SC0031CBMMsg.HJIN_EO_YKAE_SVKEI_NO, "");		//法人ｅｏ読替サービス契約番号
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ORDER_UK_DTM, "");		//モバイルオーダ受付年月日時分秒
		sc0031D001Msg.set(SC0031CBMMsg.SCHEDULE_YMD, "");				//スケジュール年月日
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ODR_RSLT_TRKM_DTM, "");	//モバイルオーダ結果取込年月日時分秒
		sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, "");		//モバイル要求種別コード
		sc0031D001Msg.set(SC0031CBMMsg.SOD_WORK_RNKI_STAT, "");		//ＳＯＤ業務連携ステータス
		sc0031D001Msg.set(SC0031CBMMsg.SYSID, "");						//ＳＹＳＩＤ
		sc0031D001Msg.set(SC0031CBMMsg.SPOT_SESSION_CNT_CHGUM, "");	//ＳＰＯＴ＿セッション数変更有無
		sc0031D001Msg.set(SC0031CBMMsg.SPOT_SESSION_CNT, "");			//ＳＰＯＴ＿セッション数
		sc0031D001Msg.set(SC0031CBMMsg.UQ_NINSHO_ID, "");				//ＵＱ認証ＩＤ
		sc0031D001Msg.set(SC0031CBMMsg.UQ_NINSHO_ID_PWD, "");			//ＵＱ認証ＩＤパスワード
		sc0031D001Msg.set(SC0031CBMMsg.UQ_MACAD, "");					//ＵＱＭＡＣアドレス
		sc0031D001Msg.set(SC0031CBMMsg.UQ_ROM_SBT_CD, "");				//ＵＱＲＯＭ種別コード
		sc0031D001Msg.set(SC0031CBMMsg.EM_SIJGSHA_SET_CHRG_STAYMD, "");	//ＥＭ再販事業者様設定課金開始日
*/
		//EM ----------
		//モバイルオーダコード：11、要求種別コード：02
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_CHG) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_NEW))
		{
			//モバイル要求種別コード：011
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CHRG_SHIN);
			sc0131D001Msg.set(SC0131CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CHRG_SHIN);
		}
		//モバイルオーダコード：12、要求種別コード：03
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_DSL) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_DSL))
		{
			//モバイル要求種別コード：021
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DSL_SHIN);
			sc0131D001Msg.set(SC0131CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DSL_SHIN);
		}
		//モバイルオーダコード：13、要求種別コード：10
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_STP) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_TMP_STP))
		{
			//モバイル要求種別コード：031
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_TMP_STP_SHIN);
			sc0131D001Msg.set(SC0131CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_TMP_STP_SHIN);
		}
		//モバイルオーダコード：14、要求種別コード：11
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_RLS) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_STP_KAI))
		{
			//モバイル要求種別コード：041
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_STP_RLS_SHIN);
			sc0131D001Msg.set(SC0131CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_STP_RLS_SHIN);
		}
		//ＳＯＤ連携通番
		sc0131D001Msg.set(SC0131CBMMsg.SOD_RENKEI_SEQ, sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_NO));
		
		//ＳＯＤ業務連携ステータス
		sc0131D001Msg.set(SC0131CBMMsg.SOD_WORK_RNKI_STAT, sodRnkiStat);
		/*
		sc0131D001Msg.set(SC0131CBMMsg.SRINF_KANRI_NO, "");		//送受信情報管理番号
		sc0131D001Msg.set(SC0131CBMMsg.SOD_SEND_KEY, "");			//ＳＯＤ送信キー
		sc0131D001Msg.set(SC0131CBMMsg.SOD_STAT, "");				//ＳＯＤステータス
		sc0131D001Msg.set(SC0131CBMMsg.YOKYU_MT_APL_SBT_CD, "");	//要求元アプリ種別コード
		sc0131D001Msg.set(SC0131CBMMsg.YOKYU_SBT_CD, "");			//要求種別コード
		sc0131D001Msg.set(SC0131CBMMsg.MOBILE_ORDER_CD, "");		//モバイルオーダコード
		sc0131D001Msg.set(SC0131CBMMsg.SOD_SEND_PRIORITY_CD, "");	//ＳＯＤ送信プライオリティコード
		sc0131D001Msg.set(SC0131CBMMsg.SVC_KEI_NO, "");			//サービス契約番号
		sc0131D001Msg.set(SC0131CBMMsg.SCHEDULE_YMD, "");			//スケジュール年月日
		sc0131D001Msg.set(SC0131CBMMsg.SOD_RENKEI_SEQ, "");		//ＳＯＤ連携通番
		sc0131D001Msg.set(SC0131CBMMsg.OLD_SOD_RENKEI_SEQ, "");	//旧ＳＯＤ連携通番
		sc0131D001Msg.set(SC0131CBMMsg.SOD_RRK_DATA, "");			//ＳＯＤ連絡データ
		sc0131D001Msg.set(SC0131CBMMsg.SOD_UK_DTM, "");			//ＳＯＤ受付年月日時分秒
		sc0131D001Msg.set(SC0131CBMMsg.SOD_TONYU_DTM, "");			//ＳＯＤ投入年月日時分秒
		sc0131D001Msg.set(SC0131CBMMsg.SOD_RSLT_ADD_DTM, "");		//ＳＯＤ結果登録年月日時分秒
		sc0131D001Msg.set(SC0131CBMMsg.SOD_TRAN_RSLT_CD, "");		//ＳＯＤ処理結果コード
		sc0131D001Msg.set(SC0131CBMMsg.SOD_TRAN_RSLT_DTAIL_CD, "");	//ＳＯＤ処理結果詳細コード
		sc0131D001Msg.set(SC0131CBMMsg.MOBILE_YOKYU_SBT_CD, "");	//モバイル要求種別コード
		sc0131D001Msg.set(SC0131CBMMsg.SOD_WORK_RNKI_STAT, "");	//ＳＯＤ業務連携ステータス
		sc0131D001Msg.set(SC0131CBMMsg.EM_JGYOSHA_SKBT_CD, "");	//ＥＭ事業者識別コード
		sc0131D001Msg.set(SC0131CBMMsg.EM_KEISHA_CD, "");			//ＥＭ契約者コード
		sc0131D001Msg.set(SC0131CBMMsg.EM_SET_YMD_1, "");			//ＥＭ設定年月日１
		sc0131D001Msg.set(SC0131CBMMsg.EM_SET_YMD_2, "");			//ＥＭ設定年月日２
		sc0131D001Msg.set(SC0131CBMMsg.EM_SET_YMD_3, "");			//ＥＭ設定年月日３
		*/

		//UQ ----------
		//モバイルオーダコード：01、要求種別コード：02
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_CUI) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_NEW))
		{
			//モバイル要求種別コード：110
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_NEW);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_NEW);
		}
		//モバイルオーダコード：01、要求種別コード：08 or 03
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_CUI) && 
			(sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_DEL) ||
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_DSL)))
		{
			//モバイル要求種別コード：130
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_DSL);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_DSL);
		}
		//モバイルオーダコード：01、要求種別コード：10
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_CUI) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_TMP_STP))
		{
			//モバイル要求種別コード：140
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_USE_STP);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_USE_STP);
		}
		//モバイルオーダコード：01、要求種別コード：11
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_CUI) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_STP_KAI))
		{
			//モバイル要求種別コード：150
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_STP_RLS);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_CUI_STP_RLS);
		}
		//モバイルオーダコード：02、要求種別コード：02
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_DEV) && 
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_NEW))
		{
			//モバイル要求種別コード：210
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DEV_NEW);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DEV_NEW);
		}
		//モバイルオーダコード：02、要求種別コード：08 or 03
		if(sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD).equals(JSCStrConstant.MOBILE_ODER_CD_DEV) && 
			(sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_DEL) ||
			sc0031D001Msg.getObject(SC0031CBMMsg.YOKYU_SBT_CD).equals(JSCStrConstant.YOKYU_SBT_DSL)))
		{
			//モバイル要求種別コード：230
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DEV_DSL);
			sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, JSCStrConstant.MOBILE_YOKYU_DEV_DSL);
		}
		//ＳＯＤ連携通番
		sc0111D001Msg.set(SC0111CBMMsg.SOD_RENKEI_SEQ,  sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_NO));
		/*
		sc0111D001Msg.set(SC0111CBMMsg.SRINF_KANRI_NO, "");		//送受信情報管理番号
		sc0111D001Msg.set(SC0111CBMMsg.SOD_SEND_KEY, "");			//ＳＯＤ送信キー
		sc0111D001Msg.set(SC0111CBMMsg.SOD_STAT, "");				//ＳＯＤステータス
		sc0111D001Msg.set(SC0111CBMMsg.YOKYU_MT_APL_SBT_CD, "");	//要求元アプリ種別コード
		sc0111D001Msg.set(SC0111CBMMsg.YOKYU_SBT_CD, "");			//要求種別コード
		sc0111D001Msg.set(SC0111CBMMsg.MOBILE_ORDER_CD, "");		//モバイルオーダコード
		sc0111D001Msg.set(SC0111CBMMsg.SOD_SEND_PRIORITY_CD, "");	//ＳＯＤ送信プライオリティコード
		sc0111D001Msg.set(SC0111CBMMsg.SVC_KEI_NO, "");			//サービス契約番号
		sc0111D001Msg.set(SC0111CBMMsg.SCHEDULE_YMD, "");			//スケジュール年月日
		sc0111D001Msg.set(SC0111CBMMsg.SOD_RENKEI_SEQ, "");		//ＳＯＤ連携通番
		sc0111D001Msg.set(SC0111CBMMsg.OLD_SOD_RENKEI_SEQ, "");	//旧ＳＯＤ連携通番
		sc0111D001Msg.set(SC0111CBMMsg.SOD_RRK_DATA, "");			//ＳＯＤ連絡データ
		sc0111D001Msg.set(SC0111CBMMsg.SOD_UK_DTM, "");			//ＳＯＤ受付年月日時分秒
		sc0111D001Msg.set(SC0111CBMMsg.SOD_TONYU_DTM, "");			//ＳＯＤ投入年月日時分秒
		sc0111D001Msg.set(SC0111CBMMsg.SOD_RSLT_ADD_DTM, "");		//ＳＯＤ結果登録年月日時分秒
		sc0111D001Msg.set(SC0111CBMMsg.SOD_TRAN_RSLT_CD, "");		//ＳＯＤ処理結果コード
		sc0111D001Msg.set(SC0111CBMMsg.SOD_TRAN_RSLT_DTAIL_CD, "");	//ＳＯＤ処理結果詳細コード
		sc0111D001Msg.set(SC0111CBMMsg.MOBILE_YOKYU_SBT_CD, "");	//モバイル要求種別コード
		*/

		//SPOT ----------
		//ＳＯＤ連携通番
		sc0121D001Msg.set(SC0121CBMMsg.SOD_RENKEI_SEQ, sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_NO));

		String mobileOrderCd = (String)sc0031D001Msg.getObject(SC0031CBMMsg.MOBILE_ORDER_CD);	//モバイルオーダコード
		//モバイルオーダコードが"30"
		if(JSCStrConstant.MOBILE_ODER_CD_SPOT.equals(mobileOrderCd))
		{
			sc0121D001Msg.set(SC0121CBMMsg.SOD_RRK_DATA, getRrkData(sc0031D001Msg));	//ＳＯＤ連絡データ
			
		}
		/*
		sc0121D001Msg.set(SC0121CBMMsg.SRINF_KANRI_NO, "");		//送受信情報管理番号
		sc0121D001Msg.set(SC0121CBMMsg.SOD_SEND_KEY, "");			//ＳＯＤ送信キー
		sc0121D001Msg.set(SC0121CBMMsg.SOD_STAT, "");				//ＳＯＤステータス
		sc0121D001Msg.set(SC0121CBMMsg.YOKYU_MT_APL_SBT_CD, "");	//要求元アプリ種別コード
		sc0121D001Msg.set(SC0121CBMMsg.YOKYU_SBT_CD, "");			//要求種別コード
		sc0121D001Msg.set(SC0121CBMMsg.MOBILE_ORDER_CD, "");		//モバイルオーダコード
		sc0121D001Msg.set(SC0121CBMMsg.SOD_SEND_PRIORITY_CD, "");	//ＳＯＤ送信プライオリティコード
		sc0121D001Msg.set(SC0121CBMMsg.SVC_KEI_NO, "");			//サービス契約番号
		sc0121D001Msg.set(SC0121CBMMsg.SCHEDULE_YMD, "");			//スケジュール年月日
		sc0121D001Msg.set(SC0121CBMMsg.SOD_RENKEI_SEQ, "");		//ＳＯＤ連携通番
		sc0121D001Msg.set(SC0121CBMMsg.OLD_SOD_RENKEI_SEQ, "");	//旧ＳＯＤ連携通番
		sc0121D001Msg.set(SC0121CBMMsg.SOD_RRK_DATA, "");			//ＳＯＤ連絡データ
		sc0121D001Msg.set(SC0121CBMMsg.SOD_UK_DTM, "");			//ＳＯＤ受付年月日時分秒
		sc0121D001Msg.set(SC0121CBMMsg.SOD_TONYU_DTM, "");			//ＳＯＤ投入年月日時分秒
		sc0121D001Msg.set(SC0121CBMMsg.SOD_RSLT_ADD_DTM, "");		//ＳＯＤ結果登録年月日時分秒
		sc0121D001Msg.set(SC0121CBMMsg.SOD_TRAN_RSLT_CD, "");		//ＳＯＤ処理結果コード
		sc0121D001Msg.set(SC0121CBMMsg.SOD_TRAN_RSLT_DTAIL_CD, "");	//ＳＯＤ処理結果詳細コード
		*/

		// 2012/2/2 巻取@使用追加　ANK-0077-00-00 -->
		// 機能コードが"1"(EM:チェック＆登録)または"2"(EM:チェックのみ)、
		// かつEM連携抑止フラグが"1"(EM連携抑止あり)の場合、SODステータスに"002"を設定する。（それ以外は"001"）
		if (isFuncCodeForEM(inMsg) &&  JSCStrConstant.EM_RNKI_STP_FLG_ON.equals(inMsg.getString(ESC0031D010CBSMsg.EM_RNKI_STP_FLG))) 
		{
			sc0031D001Msg.set(SC0031CBMMsg.MOBILE_ORDER_STAT, JSCStrConstant.SOD_STAT_ACK_WAIT);
			sc0131D001Msg.set(SC0131CBMMsg.SOD_STAT, JSCStrConstant.SOD_STAT_ACK_WAIT);
		}
		// <--
		
		return JSCStrConstant.MK_FLG_YUKO ;		//無効フラグ：0:有効
	}

	/**
	 * func_codeが"1"もしくは"2"（EM用のオーダ受付）の場合trueを返します。
	 * 
	 * @param inMsg inMsg
	 * @return EM用のオーダ受付の場合true
	 */
	private static boolean isFuncCodeForEM(CAANMsg inMsg)
	{
		return inMsg.getObject(ESC0031D010CBSMsg.FUNC_CODE).equals(JPCModelConstant.FUNC_CD_1)
				|| inMsg.getObject(ESC0031D010CBSMsg.FUNC_CODE).equals(JPCModelConstant.FUNC_CD_2);
	}

	/**
	 * UQ料金プランコードからUQROM種別コードの取得を行います。
	 * <br>
	 * @param uqRomSbtCd UQROM種別コード
	 *         uqPplanCd   UQ料金プランコード
	 * @return UQROM種別コード
	 */
	public static String getUqRomSbtCd(Object mobileOrderCd, Object uqRomSbtCd, Object uqPplanCd)
	{
		String sRomSbtCd = null;
		if(JSCStrConstant.MOBILE_ODER_CD_DEV.equals(mobileOrderCd))
		{
			if(JSCStrConstant.WIMAX_40M_BLACK.equals(uqPplanCd))
			{
				sRomSbtCd = JSCStrConstant.UQROM_SBT_BLACK;
			}
			else if(JSCStrConstant.WIMAX_40M_WHITE.equals(uqPplanCd))
			{
				sRomSbtCd = JSCStrConstant.UQROM_SBT_WHITE;
			}
			else if(null != uqRomSbtCd && !"".equals(uqRomSbtCd))
			{
				sRomSbtCd = uqRomSbtCd.toString();
			}
			else
			{
				sRomSbtCd = JSCStrConstant.UQROM_SBT_WHITE;
			}
		}
		else
		{
			sRomSbtCd = "";
		}
		return sRomSbtCd;
	}

	/**
	 * <p>
	 * ＳＯＤ連絡データを取得する。
	 * </p>
	 * @param sc0031D001Msg モバイルオーダのメッセージ
	 * @return ＳＯＤ連絡データ
	 */
	private static String getRrkData(CAANMsg sc0031D001Msg)
	{
		String csvString = "";
		
		csvString = nullToStr(sc0031D001Msg.getObject(SC0031CBMMsg.SYSID)) + ",";								//SYSID
		csvString = csvString + nullToStr(sc0031D001Msg.getObject(SC0031CBMMsg.SPOT_SESSION_CNT_CHGUM)) + ",";	//ＳＰＯＴ＿セッション数変更有無
		String strSpotSessionCnt = nullToStr(sc0031D001Msg.getObject(SC0031CBMMsg.SPOT_SESSION_CNT));
		if(!"".equals(strSpotSessionCnt))
		{
			long lSpotSessionCnt = Long.parseLong(strSpotSessionCnt);
			// 2012/08/27 ゼロサプレスしない
			csvString = csvString + String.format("%d", lSpotSessionCnt);	//ＳＰＯＴ＿セッション数
		}
		
		csvString = csvString + ",";
		
		csvString = csvString + " ";
		csvString = csvString + ",";	//eoID変更有無
		csvString = csvString + ",";	//eoID
		csvString = csvString + " ";
		csvString = csvString + ",";	//eoIDパスワード変更有無
										//eoIDパスワード

		return csvString;
	}

	/**
	 * <p>
	 * null文字なら""を返却する
	 * </p>
	 * @param inStr 処理対象のCBSMsg
	 * @return String 
	 */
	static String nullToStr(Object inStr)
	{
		if(null == inStr)
		{
			return "";
		}
		else
		{
			return (String)inStr;
		}
	}

	/**
	 * <p>
	 * 各項目の変更有無を判定し、変更有無コードを返す。
	 * </p>
	 * @param oldVal 旧の値
	 * @param newVal 新の値
	 * @return 変更有無コード
	 */
	static String judgeChgUmu(Object oldVal, Object newVal)
	{
		String oVal = (null == oldVal ? "" : (String)oldVal);
		String nVal = (null == newVal ? "" : (String)newVal);
		
		if("".equals(nVal) && "".equals(oVal))
		{
			return " ";		//スペース:変更なし
		}
		
		
		if(!"".equals(nVal) && "".equals(oVal))
		{
			return JSCStrConstant.SOD_HENKO_UMU_TOROKU;		//1:登録
		}
		
		if(!"".equals(nVal) && !"".equals(oVal))
		{
			return JSCStrConstant.SOD_HENKO_UMU_HENKO;		//2:変更
		}
		
		if("".equals(nVal) && !"".equals(oVal))
		{
			return JSCStrConstant.SOD_HENKO_UMU_SAKUJYO;	//3:削除
		}
		return " ";	
	}

}
