/*********************************************************************
*	All Rights reserved,Copyright (c) K-Opticom
**********************************************************************
*＜プログラム内容＞
*	システム名		：eo顧客基幹システム
*	モジュール名	：JKKSV0674073MappingCC
*	ソースファイル名：JKKSV0674073MappingCC.java
*	作成者			：富士通
*	日付			：2012年09月05日
*＜機能概要＞
*	マッピングCCです。
*＜修正履歴＞
*	バージョン	修正日		修正者		修正内容
*	v1.00.00	2012/09/05	FJ)松枝		新規作成
*	v8.00.00	2014/05/19	FJ)寺田		ANK-1875-00-00【有償OM対応】ID登録証のＩＦ：機器送付先に契約者名の宛名で送付できない
*
**********************************************************************/
package com.fujitsu.futurity.bp.custom.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.fujitsu.futurity.bp.custom.constant.JKKAdchgConstCC;
import com.fujitsu.futurity.bp.custom.constant.JKKKojiAnkenConstCC;
import com.fujitsu.futurity.bp.x21.bpm.ServiceComponentRequestInvoker;
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 com.fujitsu.futurity.bp.x21.cc.AbstractCommonComponent;
import com.sun.enterprise.tools.common.util.StringUtils;

import eo.ejb.cbs.cbsmsg.ECK0011A010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0081A010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0251A010CBSMsg1List;
import eo.ejb.cbs.cbsmsg.EKK0341A010CBSMsg1List;

public class JKKSV0674073MappingCC extends AbstractCommonComponent
{
	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME_MSKM = "JKKAddMskmServiceCCWork";

	/** 作業マップ名 */
	private static final String CC_WORK_AREA_NAME_MSKM_LIST = "JKKAddMskmServiceCCWorkList";

	/**
	 * CCへのマッピング処理を行います
	 * <br>
	 * @param handle
	 * @param param
	 * @param fixedText
	 * @return
	 * @throws Throwable
	 */
	public IRequestParameterReadWrite execute(SessionHandle handle, IRequestParameterReadWrite param, String fixedText) throws Throwable
	{
		HashMap<String, Object> inMap = (HashMap<String, Object>) param.getData(fixedText);
		
		JKKAdchgCmnLogicCC lclCmnLogic = new JKKAdchgCmnLogicCC(handle);
		JKKAdchgMapperCC mapper = JKKAdchgMapperCC.getInstance();
		ServiceComponentRequestInvoker scCall = new ServiceComponentRequestInvoker();

		
		
		
		// お客様一意照会結果取得
		HashMap<String, Object> KKSV0674005SC = (HashMap<String, Object>) param.getData("KKSV0674005SC");
// ANK-1789-00-00対応 20140121 星野 MOD START
//		// サービス契約回線内訳登録結果取得
//		HashMap<String, Object> KKSV0674001SC = (HashMap<String, Object>)param.getData("KKSV0674001SC");
//		String kaisenUcwkNo = (String) KKSV0674001SC.get("svc_kei_kaisen_ucwk_no");
		
		// 転居元サービス契約回線内訳番号
		String kaisenUcwkNo = (String)inMap.get("adchg_itnm_svkei_kisuw_no");
// ANK-1789-00-00対応 20140121 星野 MOD END
		
		// EKK0251A010_サービス契約回線内訳一意照会
		HashMap<String, String> condMap = new HashMap<String, String>();
		condMap.put( JKKAdchgMapperCC.COND_KEY_SVC_KEI_KAIS_UCWK_NO, kaisenUcwkNo );
		condMap.put( JKKAdchgMapperCC.COND_KEY_OPEDATE, JKKAdchgConstCC.DEFAULT_RSV_APLY_YMD);
		HashMap<String, Object> reqMap = mapper.setEKK0251A010( param, fixedText, condMap );
		Map<?, ?> resMap = scCall.run( reqMap, handle );
		HashMap<String, Object> kk0251_a010_map = mapper.getEKK0251A010( param, fixedText, resMap );
		mapper.scResultCheck( param );
		
		//通知書登録ＣＣ
		HashMap<String, Object> KKSV0674073CC = (HashMap<String, Object>) param.getData("KKSV0674073CC");
		
		ArrayList<HashMap<String, Object>> kksv_work_map_list  = new ArrayList<HashMap<String, Object>>();
		
		// ｅｏ光ネット＿利用サービス変更区分取得（View層で設定）
		String jdgChgDivNet = (String) inMap.get("eoh_net_use_svc_chg_div");
		// 処理対象となる変更区分の場合
		if(isTargetChgDiv(jdgChgDivNet)){
			
			HashMap<String, Object> kksv_work_map= new HashMap<String, Object>();
			
			// View層でマッピングされたサービス契約番号を取得
			String svc_kei_no_net = (String) inMap.get("svc_kei_no_net");
			// ネットのワーク領域
			HashMap<String, Object> workMapNet = (HashMap<String, Object>) param.getMappingWorkArea().get("JKKAddSvcKeiNetCCWork");
			// サービス契約番号が新規採番されていれば差し替え
			if(workMapNet!=null && !StringUtils.isEmpty((String) workMapNet.get("svc_kei_no"))){
				svc_kei_no_net = (String) workMapNet.get("svc_kei_no");
			}
			
			// サービス契約番号
			kksv_work_map.put("svc_kei_no", svc_kei_no_net);
			
			// EKK0081A010_サービス契約一意照会
			HashMap<String, Object> kk0081_a010_map = 
				lclCmnLogic.getEKK0081A010( param, mapper, fixedText, scCall, svc_kei_no_net, JKKAdchgConstCC.DEFAULT_RSV_APLY_YMD );

			// 料金グループコード
			kksv_work_map.put("prc_grp_cd", kk0081_a010_map.get(EKK0081A010CBSMsg1List.PRC_GRP_CD) );
			// SYSID
			kksv_work_map.put("sysid", inMap.get("sysid") );
			// SEIRI_NO
			kksv_work_map.put("seiri_no", kk0081_a010_map.get(EKK0081A010CBSMsg1List.SEIRI_NO) );

			// 申込明細番号
			kksv_work_map.put("mskm_dtl_no", getMskmDtlWorkMapValue(param, "mskm_dtl_no_net"));
			// 申込書番号
			kksv_work_map.put( "mskmsho_no", getMskmDtlWorkMapValue(param, "mskmsho_no") );
			
			// 工事案件ＣＣ（ネット・新設）の処理結果取得
			HashMap<String, Object> KKSV0674063CC = (HashMap<String, Object>) param.getData("KKSV0674063CC");
			if(KKSV0674063CC!=null){
				// 工事案件番号
				kksv_work_map.put("kojiak_no", KKSV0674063CC.get(JKKKojiAnkenConstCC.NEW_KOJIAK_NO));
			}else{
				// 工事案件番号
				kksv_work_map.put("kojiak_no", "");
			}
			
// ANK-1789-00-00対応 20140121 星野 ADD START
			// 送付先住所入力ありの場合
			if( !StringUtils.isEmpty( (String)inMap.get("kiki_sohus_pcd") ) ){
// 20140519 ANK-1875-00-00 Mod Start
//				// 通知書送付先名
//				kksv_work_map.put("tchisho_sohus_nm", inMap.get("kiki_sohus_nm") );
				if (KKSV0674005SC != null) {
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
// 20140519 ANK-1875-00-00 Mod End
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", inMap.get("kiki_sohus_ad_cd"));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", inMap.get("kiki_sohus_pcd"));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", inMap.get("kiki_sohus_state_nm"));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", inMap.get("kiki_sohus_city_nm"));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", inMap.get("kiki_sohus_oaztsu_nm"));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", inMap.get("kiki_sohus_azcho_nm"));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", inMap.get("kiki_sohus_bnchigo"));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", inMap.get("kiki_sohus_adrttm"));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", inMap.get("kiki_sohus_adrrm"));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", inMap.get("kiki_shs_tln"));
				
			}else{
// ANK-1789-00-00対応 20140121 星野 ADD END
				
				if(KKSV0674005SC!=null){
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
				
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AD_CD));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_PCD));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_STATE_NM));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_CITY_NM));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_OAZTSU_NM));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AZCHO_NM));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_BNCHIGO));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRTTM));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRRM));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_TELNO));
				
// ANK-1789-00-00対応 20140121 星野 ADD START
			}
// ANK-1789-00-00対応 20140121 星野 ADD END
			kksv_work_map_list.add(kksv_work_map);
		}
		
		// ｅｏ光電話＿利用サービス変更区分取得（View層で設定）
		String jdgChgDivTel = (String) inMap.get("eoh_tel_use_svc_chg_div");
		// 処理対象となる変更区分の場合
		if(isTargetChgDiv(jdgChgDivTel)){
			
			HashMap<String, Object> kksv_work_map= new HashMap<String, Object>();
			
			// View層でマッピングされたサービス契約番号を取得
			String svc_kei_no_tel = (String) inMap.get("svc_kei_no_tel");
			// 電話のワーク領域
			HashMap<String, Object> workMapTel = (HashMap<String, Object>) param.getMappingWorkArea().get("JKKAddSvcKeiTelCCWork");
			// サービス契約番号が新規採番されていれば差し替え
			if(workMapTel!=null && !StringUtils.isEmpty((String) workMapTel.get("svc_kei_no"))){
				svc_kei_no_tel = (String) workMapTel.get("svc_kei_no");
			}
			
			// サービス契約番号
			kksv_work_map.put("svc_kei_no", svc_kei_no_tel);
			
			// EKK0081A010_サービス契約一意照会
			HashMap<String, Object> kk0081_a010_map = 
				lclCmnLogic.getEKK0081A010( param, mapper, fixedText, scCall, svc_kei_no_tel, JKKAdchgConstCC.DEFAULT_RSV_APLY_YMD );

			// 料金グループコード
			kksv_work_map.put("prc_grp_cd", kk0081_a010_map.get(EKK0081A010CBSMsg1List.PRC_GRP_CD) );
			// SYSID
			kksv_work_map.put("sysid", inMap.get("sysid") );
			// SEIRI_NO
			kksv_work_map.put("seiri_no", kk0081_a010_map.get(EKK0081A010CBSMsg1List.SEIRI_NO) );

			// 申込明細番号
			kksv_work_map.put("mskm_dtl_no", getMskmDtlWorkMapValue(param, "mskm_dtl_no_tel"));
			// 申込書番号
			kksv_work_map.put( "mskmsho_no", getMskmDtlWorkMapValue(param, "mskmsho_no") );
			
			// 工事案件ＣＣ（電話・新設）の処理結果取得
			HashMap<String, Object> KKSV0674064CC = (HashMap<String, Object>) param.getData("KKSV0674064CC");
			if(KKSV0674064CC!=null){
				// 工事案件番号
				kksv_work_map.put("kojiak_no", KKSV0674064CC.get(JKKKojiAnkenConstCC.NEW_KOJIAK_NO));
			}else{
				// 工事案件番号
				kksv_work_map.put("kojiak_no", "");
			}
			
// ANK-1789-00-00対応 20140121 星野 ADD START
			// 送付先住所入力ありの場合
			if( !StringUtils.isEmpty( (String)inMap.get("kiki_sohus_pcd") ) ){
// 20140519 ANK-1875-00-00 Mod Start
//				// 通知書送付先名
//				kksv_work_map.put("tchisho_sohus_nm", inMap.get("kiki_sohus_nm") );
				if (KKSV0674005SC != null) {
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
// 20140519 ANK-1875-00-00 Mod End
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", inMap.get("kiki_sohus_ad_cd"));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", inMap.get("kiki_sohus_pcd"));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", inMap.get("kiki_sohus_state_nm"));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", inMap.get("kiki_sohus_city_nm"));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", inMap.get("kiki_sohus_oaztsu_nm"));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", inMap.get("kiki_sohus_azcho_nm"));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", inMap.get("kiki_sohus_bnchigo"));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", inMap.get("kiki_sohus_adrttm"));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", inMap.get("kiki_sohus_adrrm"));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", inMap.get("kiki_shs_tln"));
				
			}else{
// ANK-1789-00-00対応 20140121 星野 ADD END
					
				if(KKSV0674005SC!=null){
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
				
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AD_CD));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_PCD));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_STATE_NM));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_CITY_NM));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_OAZTSU_NM));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AZCHO_NM));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_BNCHIGO));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRTTM));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRRM));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_TELNO));
				
// ANK-1789-00-00対応 20140121 星野 ADD START
			}
// ANK-1789-00-00対応 20140121 星野 ADD END
			
			kksv_work_map_list.add(kksv_work_map);
		}
		
		// ｅｏ光テレビ＿利用サービス変更区分取得（View層で設定）
		String jdgChgDivTv = (String) inMap.get("eoh_tv_use_svc_chg_div");
		// 処理対象となる変更区分の場合
		if(isTargetChgDiv(jdgChgDivTv)){
			
			HashMap<String, Object> kksv_work_map= new HashMap<String, Object>();
			
			// View層でマッピングされたサービス契約番号を取得
			String svc_kei_no_tv = (String) inMap.get("svc_kei_no_tv");
			// テレビのワーク領域
			HashMap<String, Object> workMapTv = (HashMap<String, Object>) param.getMappingWorkArea().get("JKKAddSvcKeiTvCCWork");
			// サービス契約番号が新規採番されていれば差し替え
			if(workMapTv!=null && !StringUtils.isEmpty((String) workMapTv.get("svc_kei_no"))){
				svc_kei_no_tv = (String) workMapTv.get("svc_kei_no");
			}
			
			// サービス契約番号
			kksv_work_map.put("svc_kei_no", svc_kei_no_tv);
			
			// EKK0081A010_サービス契約一意照会
			HashMap<String, Object> kk0081_a010_map = 
				lclCmnLogic.getEKK0081A010( param, mapper, fixedText, scCall, svc_kei_no_tv, JKKAdchgConstCC.DEFAULT_RSV_APLY_YMD );

			// 料金グループコード
			kksv_work_map.put("prc_grp_cd", kk0081_a010_map.get(EKK0081A010CBSMsg1List.PRC_GRP_CD) );
			// SYSID
			kksv_work_map.put("sysid", inMap.get("sysid") );
			// SEIRI_NO
			kksv_work_map.put("seiri_no", kk0081_a010_map.get(EKK0081A010CBSMsg1List.SEIRI_NO) );

			// 申込明細番号
			kksv_work_map.put("mskm_dtl_no", getMskmDtlWorkMapValue(param, "mskm_dtl_no_tv"));
			// 申込書番号
			kksv_work_map.put( "mskmsho_no", getMskmDtlWorkMapValue(param, "mskmsho_no") );
			
			// 工事案件ＣＣ（テレビ・新設）の処理結果取得
			HashMap<String, Object> KKSV0674065CC = (HashMap<String, Object>) param.getData("KKSV0674065CC");
			HashMap<String, Object> KKSV0674200CC = (HashMap<String, Object>) param.getData("KKSV0674200CC");			
			if(KKSV0674065CC!=null){
				// 工事案件番号
				kksv_work_map.put("kojiak_no", KKSV0674065CC.get(JKKKojiAnkenConstCC.NEW_KOJIAK_NO));
			}else if(KKSV0674200CC!=null){
				// 工事案件番号
				kksv_work_map.put("kojiak_no", KKSV0674200CC.get(JKKKojiAnkenConstCC.NEW_KOJIAK_NO));
			}else{
				// 工事案件番号
				kksv_work_map.put("kojiak_no", "");
			}
			
// ANK-1789-00-00対応 20140121 星野 ADD START
			// 送付先住所入力ありの場合
			if( !StringUtils.isEmpty( (String)inMap.get("kiki_sohus_pcd") ) ){
// 20140519 ANK-1875-00-00 Mod Start
//				// 通知書送付先名
//				kksv_work_map.put("tchisho_sohus_nm", inMap.get("kiki_sohus_nm") );
				if (KKSV0674005SC != null) {
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
// 20140519 ANK-1875-00-00 Mod End
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", inMap.get("kiki_sohus_ad_cd"));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", inMap.get("kiki_sohus_pcd"));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", inMap.get("kiki_sohus_state_nm"));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", inMap.get("kiki_sohus_city_nm"));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", inMap.get("kiki_sohus_oaztsu_nm"));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", inMap.get("kiki_sohus_azcho_nm"));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", inMap.get("kiki_sohus_bnchigo"));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", inMap.get("kiki_sohus_adrttm"));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", inMap.get("kiki_sohus_adrrm"));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", inMap.get("kiki_shs_tln"));
				
			}else{
// ANK-1789-00-00対応 20140121 星野 ADD END
					
				if(KKSV0674005SC!=null){
					// 通知書送付先名
					kksv_work_map.put("tchisho_sohus_nm", KKSV0674005SC.get(ECK0011A010CBSMsg1List.CUST_NM));
				}
				
				// 通知書送付先住所コード
				kksv_work_map.put("tchisho_sohus_ad_cd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AD_CD));
				// 通知書送付先郵便番号
				kksv_work_map.put("tchisho_sohus_pcd", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_PCD));
				// 通知書送付先都道府県名
				kksv_work_map.put("tchisho_sohus_state_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_STATE_NM));
				// 通知書送付先市区町村名
				kksv_work_map.put("tchisho_sohus_city_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_CITY_NM));
				// 通知書送付先大字通称名
				kksv_work_map.put("tchisho_sohus_oaztsu_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_OAZTSU_NM));
				// 通知書送付先字丁目名
				kksv_work_map.put("tchisho_sohus_azcho_nm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_AZCHO_NM));
				// 通知書送付先番地号
				kksv_work_map.put("tchisho_sohus_bnchigo", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_BNCHIGO));
				// 通知書送付先住所補記・建物名
				kksv_work_map.put("tchisho_sohus_adrttm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRTTM));
				// 通知書送付先住所補記・部屋番号
				kksv_work_map.put("tchisho_sohus_adrrm", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_ADRRM));
				// 通知書送付先電話番号
				kksv_work_map.put("tchisho_sohus_telno", kk0251_a010_map.get(EKK0251A010CBSMsg1List.KAISEN_PLACE_TELNO));
				
// ANK-1789-00-00対応 20140121 星野 ADD START
			}
// ANK-1789-00-00対応 20140121 星野 ADD END
			
			kksv_work_map_list.add(kksv_work_map);
		}
		KKSV0674073CC.put( "trgt_data_list", kksv_work_map_list );


		return param;
	}
	
	private boolean isTargetChgDiv(String jdgChgDiv){
		if ( 
				(!StringUtils.isEmpty( jdgChgDiv )) && 
				( 
					"2".equals( jdgChgDiv ) || 
					"5".equals( jdgChgDiv ) || 
					"4".equals( jdgChgDiv )
				) 
		) {
			// 契約なし・保留・解約の場合は処理を行わない
			return false;
		}else{
			return true;
		}

	}

	/**
	 * 作業マップ（申込明細）の値を取得します。
	 * 
	 * <br>
	 * @param param
	 * @param key
	 * @return 取得した値
	 * @throws RequestParameterException
	 */
	@SuppressWarnings("unchecked")
	private String getMskmDtlWorkMapValue(IRequestParameterReadWrite param, String key) throws RequestParameterException
	{
		// 作業領域の取得
		Map workMap = (Map)param.getMappingWorkArea();
		HashMap inMap = null;
		HashMap workDataMap_Mskm = null;
		String result = null;

		if (workMap != null)
		{
			workDataMap_Mskm = (HashMap)workMap.get(CC_WORK_AREA_NAME_MSKM);
			if (workDataMap_Mskm != null)
			{
				ArrayList inList1 = ((ArrayList)workDataMap_Mskm.get(CC_WORK_AREA_NAME_MSKM_LIST));
				int devCnt = inList1 != null ? inList1.size() : 0;
				for (int i = 0; i < devCnt; i++)
				{
					inMap = (HashMap)(inList1).get(i);

					if (inMap != null)
					{
						result = (String)inMap.get(key);
					}

					if ("".equals(result) || result == null)
					{
						result = null;
					}
					else
					{
						break;
					}
				}
			}
		}

		return result;
	}
}
