/*********************************************************************
* All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*   システム名      ：eo顧客基幹システム
*   モジュール名    ：JFUAdslNinshoIdPwdChgCC
*   ソースファイル名：JFUAdslNinshoIdPwdChgCC.java
*   作成者          ：富士通
*   日付            ：2012年09月30日
*＜機能概要＞
*   ADSL認証IDパスワード変更コモンコンポーネント部品です。
*＜修正履歴＞
*   バージョン  修正日       修正者      修正内容
*   v4.00       2012/09/30   FJ）中谷    変更【ANK-0350-00-00】認証ＩＤパスワード変更ログイン設定変更
*   v5.00       2013/06/12   FJ）岡井    変更【内部障害】進捗登録.異動年月日時分秒にシステム日付を設定するように修正
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

import com.fujitsu.futurity.bp.x21.bpm.db.SessionHandle;
import com.fujitsu.futurity.bp.x21.bpm.exception.RequestParameterException;
import com.fujitsu.futurity.bp.x21.bpm.parameter.IRequestParameterReadWrite;

import eo.common.constant.JFUStrConst;
import eo.common.constant.JPCModelConstant;
import eo.ejb.cbs.cbsmsg.EKK0011D020CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0011D020CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0021C060CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK0221C051CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK1091D010CBSMsg;
import eo.ejb.cbs.cbsmsg.EKK1091D010CBSMsg1List;

/**
 * ADSL認証IDパスワード変更コモンコンポーネント部品です。
 * 
 * <br>
 * @author 富士通
 */
@SuppressWarnings("unchecked")
public class JFUAdslNinshoIdPwdChgCC extends JFUBaseNetChgCommonCC
{
	/** IN項目:サービス契約番号 */
	private static final String IN_PARAM_SVC_KEI_NO = "svc_kei_no";
	/** IN項目:更新年月日時分秒 */
	private static final String IN_PARAM_UPD_DTM_BF = "upd_dtm_bf";
	/** IN項目:サービス契約内訳番号 */
	private static final String IN_PARAM_SVC_KEI_UCWK_NO = "svc_kei_ucwk_no";
	/** IN項目:ADSL認証IDパスワード */
	private static final String IN_PARAM_ADSL_NINSHO_ID_PWD = "adsl_ninsho_id_pwd";
	/** IN項目:SYSID */
	private static final String IN_PARAM_SYSID = "sysid";

	/* ■□ サービスオーダー発行CC ■□ */
	/** オーダー発行 */
	private static final String FIXED_TEXT_SOD = "FUSV025902CC";
	/** SOD(対象データリスト) */
	private static final String SOD_TRGT_DATA_LIST = "trgt_data_list";
	/** SOD(SOD基本情報) */
	private static final String SOD_KIHON_INFO = "sod_kihon_info";
	/** SOD(SYSID) */
	private static final String SOD_SYSID = "sysid";
	/** SOD(異動区分) */
	private static final String SOD_IDO_DIV = "ido_div";
	/** SOD(サービス契約情報) */
	private static final String SOD_SVC_KEI_INFO = "svc_kei_info";
	/** SOD(サービス契約番号) */
	private static final String SOD_SVC_KEI_NO = "svc_kei_no";
	/** SOD(サービス契約内訳情報) */
	private static final String SOD_SVC_KEI_UCWK_INFO = "svc_kei_ucwk_info";
	/** SOD(サービス契約内訳番号) */
	private static final String SOD_SVC_KEI_UCWK_NO = "svc_kei_ucwk_no";
	/** SOD(変更後サービス契約内訳世代登録年月日時分秒) */
	private static final String SOD_CHAF_SVCKEIUCWK_GENEADDDTM = "chaf_svc_kei_ucwk_gene_add_dtm";
	/** SOD(パスワード処理区分) */
	private static final String SOD_PASSWORD_SHORI_DIV = "password_shori_div";
	/** SOD(パスワード再発行区分) */
	private static final String SOD_PASSWORD_SAIHAKKO_DIV = "password_saihakko_div";
	/** SOD(パスワード処理区分 3:認証ID用) */
	private static final String SOD_PASSWORD_SHORI_DIV_3 = "3";
	/** SOD(パスワード再発行区分 2:再振) */
	private static final String SOD_PASSWORD_SAIHAKKO_DIV_2 = "2";

	/* ■□ 申込内容承認登録SC ■□ */
	/** テンプレートID(申込内容承認登録) */
	private static final String TEMPLATE_ID_1 = "EKK0011D020";
	/** テンプレートID(申込内容承認登録明細) */
	private static final String TEMPLATE_ID_1_DETAIL = EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST;
	/** IN項目リスト(申込内容承認登録) */
	private static final List<String> IN_COLUMN_LIST_1 =
			Arrays.asList(EKK0011D020CBSMsg.SYSID, EKK0011D020CBSMsg.MSKM_SBT_CD, EKK0011D020CBSMsg.MSKMSHO_ARIV_YMD, EKK0011D020CBSMsg.MSKM_UK_DTM,
					EKK0011D020CBSMsg.MSKM_UK_TNT_USER_ID, EKK0011D020CBSMsg.MSKM_YMD, EKK0011D020CBSMsg.TTL_BUSINESS_CENTER_UK_NO,
					EKK0011D020CBSMsg.TTL_BUSINESS_MSKM_OPT_CD, EKK0011D020CBSMsg.MSKM_RRKS_TELNO, EKK0011D020CBSMsg.MSKM_JSSIS_SBT_CD,
					EKK0011D020CBSMsg.CUST_YOBO_JIKO, EKK0011D020CBSMsg.TEL_RRK_KIBOD_SBT_CD, EKK0011D020CBSMsg.TEL_RRK_KIBO_TIME_CD,
					EKK0011D020CBSMsg.TAKCHO_KIBOD_SBT_CD, EKK0011D020CBSMsg.TAKCHO_KIBO_TIME_CD, EKK0011D020CBSMsg.KARI_MSKM_FLG,
					EKK0011D020CBSMsg.REFERER, EKK0011D020CBSMsg.KEPCO_CUSTINFO_JUJU_DOI_UM, EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO_YH,
					EKK0011D020CBSMsg.SHOSA_BF_RRK_JIKO, EKK0011D020CBSMsg.USE_SVC_KEIZK_SBT_CD, EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD,
					EKK0011D020CBSMsg.UK_TNTSHA_SKBT_CD, EKK0011D020CBSMsg.MSKM_ROUTE_SKBT_CD, EKK0011D020CBSMsg.KOJI_REQ_INFO_RRK_JIKO);
	/** IN項目リスト(申込内容承認登録・明細部) */
	private static final List<String> IN_COLUMN_LIST_1_DETAIL =
			Arrays.asList(EKK0011D020CBSMsg1List.MSKMSHO_NO, EKK0011D020CBSMsg1List.WEB_UK_NO, EKK0011D020CBSMsg1List.MSKM_FORM_CD,
					EKK0011D020CBSMsg1List.MSKM_DTL_SBT_CD, EKK0011D020CBSMsg1List.RRKS_KTAI_TELNO, EKK0011D020CBSMsg1List.RRKS_OFFC_NM,
					EKK0011D020CBSMsg1List.DT_RRKS_TELNO, EKK0011D020CBSMsg1List.NEW_MSKM_SBT_CD, EKK0011D020CBSMsg1List.MSKM_OPTNTY_CD,
					EKK0011D020CBSMsg1List.TAKCHO_KIBO_APO_KIGEN_YMD, EKK0011D020CBSMsg1List.KOJI_APO_RRKS_SHITEI_CD,
					EKK0011D020CBSMsg1List.KOJI_APO_RRKS_TELNO, EKK0011D020CBSMsg1List.RRK_JIKO_ADD_DTM, EKK0011D020CBSMsg1List.MSKM_RRKS_MLAD,
					EKK0011D020CBSMsg1List.KOJI_PRG_TCHI_MLAD, EKK0011D020CBSMsg1List.RRK_JIKO, EKK0011D020CBSMsg1List.KJSC_TCH_KTAI_MLAD,
					EKK0011D020CBSMsg1List.ML_SEND_JGI_FLG, EKK0011D020CBSMsg1List.ML_SEND_JGI_RSN_MEMO, EKK0011D020CBSMsg1List.BMP_MSKM_RRKS_TLN,
					EKK0011D020CBSMsg1List.OP_SVC_HKTGI_UM, EKK0011D020CBSMsg1List.DSL_ATICLE_SOHU_KIBO_UM, EKK0011D020CBSMsg1List.RRK_WAY_HOKI,
					EKK0011D020CBSMsg1List.NEWCONST_BUKKEN_CD, EKK0011D020CBSMsg1List.HUKKAT_ANKEN_FLG, EKK0011D020CBSMsg1List.SAME_EQUIP_RE_MSKM_CD,
					EKK0011D020CBSMsg1List.HNIN_CFM_ATICLE_SBT_CD, EKK0011D020CBSMsg1List.MSKMSHO_SBT_CD, EKK0011D020CBSMsg1List.MAP_TEMP_UM,
					EKK0011D020CBSMsg1List.KCN_STB_MSKM_CNT, EKK0011D020CBSMsg1List.KCN_STB_KIND_CD, EKK0011D020CBSMsg1List.CATID,
					EKK0011D020CBSMsg1List.KEI_HUKA_CD, EKK0011D020CBSMsg1List.MANSION_ID, EKK0011D020CBSMsg1List.MKM_UK_SBT_CD,
					EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TNTSHA_NM, EKK0011D020CBSMsg1List.MANSSBSYS_RNKI_YO_KIJIRAN,
					EKK0011D020CBSMsg1List.MSKMSHO_TRAT_IF_TELNO);
	/** 関連チェックエラー項目(申込内容承認登録) */
	private static final String ERROR_COLUMN_1 = null;
	/** SC実行結果取得キー(申込内容承認登録) */
	private static final String TEMP_TEMPLATE_KEY_1 = TEMP_TEMPLATE_PRIFIX + TEMPLATE_ID_1 + TEMP_TEMPLATE_PRIFIX_SEP + "1";

	/* ■□ サービス契約内訳<eoADSL>認証IDパスワード変更SC ■□ */
	/** テンプレートID(サービス契約内訳<eoADSL>認証IDパスワード変更) */
	private static final String TEMPLATE_ID_2 = "EKK0221C051";
	/** テンプレートID(サービス契約内訳<eoADSL>認証IDパスワード変更明細) */
	private static final String TEMPLATE_ID_2_DETAIL = null;
	/** IN項目リスト(サービス契約内訳<eoADSL>認証IDパスワード変更) */
	private static final List<String> IN_COLUMN_LIST_2 =
			Arrays.asList(EKK0221C051CBSMsg.SVC_KEI_UCWK_NO, EKK0221C051CBSMsg.ADSL_NINSHO_ID_PWD, EKK0221C051CBSMsg.UPD_DTM_BF);
	/** 関連チェックエラー項目(サービス契約内訳<eoADSL>認証IDパスワード変更) */
	private static final String ERROR_COLUMN_2 = null;
	/** SC実行結果取得キー(サービス契約内訳<eoADSL>認証IDパスワード変更) */
	private static final String TEMP_TEMPLATE_KEY_2 = TEMP_TEMPLATE_PRIFIX + TEMPLATE_ID_2 + TEMP_TEMPLATE_PRIFIX_SEP + "1";

	/* ■□ 進捗登録SC ■□ */
	/** テンプレートID(進捗登録) */
	private static final String TEMPLATE_ID_3 = "EKK1091D010";
	/** テンプレートID(進捗登録明細) */
	private static final String TEMPLATE_ID_3_DETAIL = EKK1091D010CBSMsg.EKK1091D010CBSMSG1LIST;
	/** IN項目リスト(進捗登録) */
	private static final List<String> IN_COLUMN_LIST_3 =
			Arrays.asList(EKK1091D010CBSMsg.MSKM_DTL_NO, EKK1091D010CBSMsg.SEIKY_KEI_NO, EKK1091D010CBSMsg.SEIKY_WAY_NO_KOZA,
					EKK1091D010CBSMsg.SEIKY_WAY_NO_CRECARD, EKK1091D010CBSMsg.SVC_KEI_NO, EKK1091D010CBSMsg.SVC_KEI_UCWK_NO,
					EKK1091D010CBSMsg.SVC_KEI_KAISEN_UCWK_NO, EKK1091D010CBSMsg.KKTK_SVC_KEI_NO, EKK1091D010CBSMsg.OP_SVC_KEI_NO,
					EKK1091D010CBSMsg.SEIOPSVC_KEI_NO, EKK1091D010CBSMsg.SBOP_SVC_KEI_NO, EKK1091D010CBSMsg.WRIB_SVC_KEI_NO,
					EKK1091D010CBSMsg.IDO_DIV, EKK1091D010CBSMsg.PRG_STAT, EKK1091D010CBSMsg.PRG_MEMO, EKK1091D010CBSMsg.PRG_TKJK_1,
					EKK1091D010CBSMsg.PRG_TKJK_2, EKK1091D010CBSMsg.IDO_DTM);
	/** 関連チェックエラー項目(進捗登録) */
	private static final String ERROR_COLUMN_3 = null;

	/* ■□ 申込明細照査・後続業務依頼SC ■□ */
	/** テンプレートID(申込明細照査・後続業務依頼) */
	private static final String TEMPLATE_ID_4 = "EKK0021C060";
	/** テンプレートID(申込明細照査・後続業務依頼明細) */
	private static final String TEMPLATE_ID_4_DETAIL = null;
	/** IN項目リスト(申込明細照査・後続業務依頼) */
	private static final List<String> IN_COLUMN_LIST_4 =
			Arrays.asList(EKK0021C060CBSMsg.MSKM_DTL_NO, EKK0021C060CBSMsg.RRK_JIKO_ADD_DTM, EKK0021C060CBSMsg.MSKM_DTL_SHOSA_DTM,
					EKK0021C060CBSMsg.KZKWRK_REQYMD, EKK0021C060CBSMsg.RRK_JIKO, EKK0021C060CBSMsg.UPD_DTM_BF, EKK0021C060CBSMsg.IDO_DIV,
					EKK0021C060CBSMsg.TELNO, EKK0021C060CBSMsg.DAIHYO_TELNO, EKK0021C060CBSMsg.TELNO_USE_PLACE_NO,
					EKK0021C060CBSMsg.SIP_USER_ID_DEL_ZUMI_FLG, EKK0021C060CBSMsg.TEL_BAS_HOST_ID, EKK0021C060CBSMsg.N_050_OP_TELNO,
					EKK0021C060CBSMsg.KIKI_NINSHO_ID, EKK0021C060CBSMsg.KIKI_NINSHO_ID_PWD);
	/** 関連チェックエラー項目(申込明細照査・後続業務依頼) */
	private static final String ERROR_COLUMN_4 = null;

	/**
	 * ADSL認証IDパスワード変更処理を行います。
	 * 
	 * <br>
	 * @param handle セッションハンドル
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @return リクエストパラメータ管理クラス
	 * @throws Throwable 例外
	 */
	public IRequestParameterReadWrite chgAdslNinshoIdPwd(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Throwable
	{
		try
		{
			// ユーザデータ取得
			HashMap inMap = (HashMap)param.getData(fixedText);

			// サービス契約番号 
			String inMapSvcKeiNo = (String)inMap.get(IN_PARAM_SVC_KEI_NO);
			// 更新年月日時分秒
			String inMapUpdDtmBf = (String)inMap.get(IN_PARAM_UPD_DTM_BF);
			// サービス契約内訳番号 
			String inMapSvcKeiUcwkNo = (String)inMap.get(IN_PARAM_SVC_KEI_UCWK_NO);
			// ADSL認証IDパスワード 
			String inMapAdslNinshoIdPwd = (String)inMap.get(IN_PARAM_ADSL_NINSHO_ID_PWD);
			// SYSID 
			String inMapSysid = (String)inMap.get(IN_PARAM_SYSID);

			// ●申込内容承認登録
			// ユーザデータ初期化
			initData(param, fixedText, IN_COLUMN_LIST_1);
			// 上りマッピング
			setInMapMskmRegist(param, fixedText, inMapSysid);
			// サービスIF実行
			executeSC(handle, param, fixedText, TEMPLATE_ID_1, TEMPLATE_ID_1_DETAIL, IN_COLUMN_LIST_1, ERROR_COLUMN_1);
			// 申込明細番号
			String mskmDtlNo = getTemplateListValue(inMap, TEMP_TEMPLATE_KEY_1, TEMPLATE_ID_1_DETAIL, EKK0011D020CBSMsg1List.MSKM_DTL_NO, 0);
			// 更新年月日時分秒
			String updDtmMskm = getTemplateValue(inMap, TEMP_TEMPLATE_KEY_1, EKK0011D020CBSMsg.UPD_DTM);

			// ●サービス契約内訳<eoADSL>認証IDパスワード変更
			// ユーザデータ初期化
			initData(param, fixedText, IN_COLUMN_LIST_2);
			// 上りマッピング
			setInMapAdslNnshIdPwChg(param, fixedText, inMapSvcKeiUcwkNo, inMapAdslNinshoIdPwd, inMapUpdDtmBf);
			// サービスIF実行
			executeSC(handle, param, fixedText, TEMPLATE_ID_2, TEMPLATE_ID_2_DETAIL, IN_COLUMN_LIST_2, ERROR_COLUMN_2);
			// 世代登録年月日時分秒
			String geneAddDtmAf = getTemplateValue(inMap, TEMP_TEMPLATE_KEY_2, EKK0221C051CBSMsg.KK0161_GENE_ADD_DTM);
			// SODマッピング
			sodMappingSvcKeiUcwk(param, inMapSysid, inMapSvcKeiNo, inMapSvcKeiUcwkNo, geneAddDtmAf);

			// ●進捗登録
			// ユーザデータ初期化
			initData(param, fixedText, IN_COLUMN_LIST_3);
			// 上りマッピング
			setInMapPrgRegist(param, fixedText, inMapSvcKeiNo, mskmDtlNo);
			// サービスIF実行
			executeSC(handle, param, fixedText, TEMPLATE_ID_3, TEMPLATE_ID_3_DETAIL, IN_COLUMN_LIST_3, ERROR_COLUMN_3);

			// ●申込明細照査・後続業務依頼
			// ユーザデータ初期化
			initData(param, fixedText, IN_COLUMN_LIST_4);
			// 上りマッピング
			setInMapMskmDtlShosaKzkWrk(param, fixedText, mskmDtlNo, updDtmMskm);
			// サービスIF実行
			executeSC(handle, param, fixedText, TEMPLATE_ID_4, TEMPLATE_ID_4_DETAIL, IN_COLUMN_LIST_4, ERROR_COLUMN_4);
		}
		finally
		{
			// 一時領域削除
			super.deleteTempArea(param, fixedText);
		}
		return param;
	}

	/**
	 * サービスオーダー発行CC情報マッピング(サービス契約内訳)を行います。
	 * 
	 * <br>
	 * @param param リクエストパラメータ
	 * @param sysId SYSID
	 * @param svcKeiNo サービス契約番号
	 * @param svcKeiUcwkNo サービス契約内訳番号
	 * @param geneAddDtmAf 変更後世代登録年月日時分秒
	 * @throws RequestParameterException
	 */
	private void sodMappingSvcKeiUcwk(IRequestParameterReadWrite param, String sysId, String svcKeiNo, String svcKeiUcwkNo, String geneAddDtmAf)
			throws RequestParameterException
	{
		// オーダー発行用マップ設定
		param.setData(FIXED_TEXT_SOD, new HashMap());

		// 機能コード設定(1:チェック&登録)
		setFuncCode(param, FIXED_TEXT_SOD, JPCModelConstant.FUNC_CD_1);

		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(FIXED_TEXT_SOD);

		List trgtList = new ArrayList();

		// SODマップ
		HashMap sodMap = new HashMap();

		// SOD基本情報
		HashMap sodKihonMap = new HashMap();
		// SYSID
		sodKihonMap.put(SOD_SYSID, sysId);
		// 異動区分
		sodKihonMap.put(SOD_IDO_DIV, JFUStrConst.CD00576_00052);
		// パスワード再発行区分
		sodKihonMap.put(SOD_PASSWORD_SAIHAKKO_DIV, SOD_PASSWORD_SAIHAKKO_DIV_2);
		// パスワード処理区分
		sodKihonMap.put(SOD_PASSWORD_SHORI_DIV, SOD_PASSWORD_SHORI_DIV_3);
		// SODマップへ追加
		sodMap.put(SOD_KIHON_INFO, sodKihonMap);

		// サービス契約情報
		HashMap svcKeiMap = new HashMap();
		// サービス契約番号
		svcKeiMap.put(SOD_SVC_KEI_NO, svcKeiNo);
		// SODマップへ追加
		sodMap.put(SOD_SVC_KEI_INFO, svcKeiMap);

		// サービス契約内訳情報
		HashMap svcKeiUcwkMap = new HashMap();
		// サービス契約内訳番号
		svcKeiUcwkMap.put(SOD_SVC_KEI_UCWK_NO, svcKeiUcwkNo);
		// 変更後サービス契約内訳世代登録年月日時分秒
		svcKeiUcwkMap.put(SOD_CHAF_SVCKEIUCWK_GENEADDDTM, geneAddDtmAf);
		// SODマップへ追加
		sodMap.put(SOD_SVC_KEI_UCWK_INFO, svcKeiUcwkMap);

		// 対象データリストへ追加
		trgtList.add(sodMap);

		inMap.put(SOD_TRGT_DATA_LIST, trgtList);
	}

	/**
	 * 上りマッピング項目設定(申込内容承認登録)を行います。
	 * 
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param sysId SYSID
	 * @throws RequestParameterException 例外
	 */
	private void setInMapMskmRegist(IRequestParameterReadWrite param, String fixedText, String sysId) throws RequestParameterException
	{

		// 機能コード設定(1:チェック&登録)
		setFuncCode(param, fixedText, JPCModelConstant.FUNC_CD_1);

		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(fixedText);

		// SYSID
		inMap.put(EKK0011D020CBSMsg.SYSID, sysId);
		// 申込種別コード
		inMap.put(EKK0011D020CBSMsg.MSKM_SBT_CD, JFUStrConst.KK0971_MSKM_SBT_CD_00026);
		// 申込受付年月日時分秒
		inMap.put(EKK0011D020CBSMsg.MSKM_UK_DTM, JFUBPCommon.getOpeDateTimeStamp(null));
		// 申込年月日
		inMap.put(EKK0011D020CBSMsg.MSKM_YMD, JFUBPCommon.getOpeDate(null));
		// コンシューマ営業用申込状態識別コード
		inMap.put(EKK0011D020CBSMsg.CONSMBSN_MSKM_STAT_SKBT_CD, JFUStrConst.CD00760_04);

		ArrayList list = new ArrayList();
		HashMap childMap = new HashMap();

		for (String key : IN_COLUMN_LIST_1_DETAIL)
		{
			childMap.put(key, null);
		}

		// 申込形態コード
		childMap.put(EKK0011D020CBSMsg1List.MSKM_FORM_CD, JFUStrConst.CD00591_01);
		list.add(childMap);

		inMap.put(EKK0011D020CBSMsg.EKK0011D020CBSMSG1LIST, list);
	}

	/**
	 * 上りマッピング項目設定(サービス契約内訳<eoADSL>認証IDパスワード変更)を行います。
	 * 
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param svcKeiUchwkNo サービス契約内訳番号
	 * @param adslNinshoIdPwd ADSL認証IDパスワード
	 * @param updDtmBf 更新年月日時分秒
	 * @throws RequestParameterException
	 */
	private void setInMapAdslNnshIdPwChg(IRequestParameterReadWrite param, String fixedText, String svcKeiUchwkNo, String adslNinshoIdPwd,
			String updDtmBf) throws RequestParameterException
	{
		// 機能コード設定(1:チェック&登録)
		setFuncCode(param, fixedText, JPCModelConstant.FUNC_CD_1);

		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(fixedText);

		// サービス契約内訳番号
		inMap.put(EKK0221C051CBSMsg.SVC_KEI_UCWK_NO, svcKeiUchwkNo);
		// ＡＤＳＬ認証ＩＤパスワード
		inMap.put(EKK0221C051CBSMsg.ADSL_NINSHO_ID_PWD, adslNinshoIdPwd);
		// 更新年月日時分秒（更新前）
		inMap.put(EKK0221C051CBSMsg.UPD_DTM_BF, updDtmBf);
	}

	/**
	 * 上りマッピング項目設定(進捗登録)を行います。
	 * 
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param svcKeiNo サービス契約番号
	 * @param mskmDtlNo 申込明細番号
	 * @throws RequestParameterException 例外
	 */
	private void setInMapPrgRegist(IRequestParameterReadWrite param, String fixedText, String svcKeiNo, String mskmDtlNo)
			throws RequestParameterException
	{
		// 機能コード設定(1:チェック&登録)
		setFuncCode(param, fixedText, JPCModelConstant.FUNC_CD_1);

		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(fixedText);

		// サービス契約番号
		inMap.put(EKK1091D010CBSMsg.SVC_KEI_NO, svcKeiNo);
		// 進捗ステータス
		inMap.put(EKK1091D010CBSMsg.PRG_STAT, JFUStrConst.CD00647_5401);
		// 申込明細番号
		inMap.put(EKK1091D010CBSMsg.MSKM_DTL_NO, mskmDtlNo);
		// 異動区分
		inMap.put(EKK1091D010CBSMsg.IDO_DIV, JFUStrConst.CD00576_00052);
		// 異動年月日時分秒
		inMap.put(EKK1091D010CBSMsg.IDO_DTM, JFUBPCommon.getSysDateTimeStamp());

		ArrayList list = new ArrayList();
		HashMap childMap = new HashMap();

		// 異動理由コード
		childMap.put(EKK1091D010CBSMsg1List.IDO_RSN_CD, JFUStrConst.CD00846_F3);
		// 異動理由メモ
		childMap.put(EKK1091D010CBSMsg1List.IDO_RSN_MEMO, null);
		list.add(childMap);

		inMap.put(EKK1091D010CBSMsg.EKK1091D010CBSMSG1LIST, list);
	}

	/**
	 * 上りマッピング項目設定(申込明細照査・後続業務依頼)を行います。
	 * 
	 * <br>
	 * @param param リクエストパラメータ
	 * @param fixedText サービスメッセージ
	 * @param mskmDtlNo 申込明細番号
	 * @param updDtm 更新年月日時分秒
	 * @throws RequestParameterException
	 */
	private void setInMapMskmDtlShosaKzkWrk(IRequestParameterReadWrite param, String fixedText, String mskmDtlNo, String updDtm)
			throws RequestParameterException
	{
		// 機能コード設定(1:チェック&登録)
		setFuncCode(param, fixedText, JPCModelConstant.FUNC_CD_1);

		// ユーザデータ取得
		HashMap inMap = (HashMap)param.getData(fixedText);

		// 申込明細番号
		inMap.put(EKK0021C060CBSMsg.MSKM_DTL_NO, mskmDtlNo);
		// 後続業務依頼年月日
		inMap.put(EKK0021C060CBSMsg.KZKWRK_REQYMD, JFUBPCommon.getOpeDate(null));
		// 更新年月日時分秒(更新前)
		inMap.put(EKK0021C060CBSMsg.UPD_DTM_BF, updDtm);
	}
}
