/*********************************************************************
 *  All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *	システム名			：eo顧客基幹システム
 *	モジュール名		：JBSbatFUMoveNaviData
 *	ソースファイル名	：JBSbatFUMoveNaviData.java
 *	作成者				：富士通
 *	作成日				：2012年06月28日
 *＜機能概要＞
 *　引越ナビデータ連携部品です。
 *＜修正履歴＞
 *	バージョン	修正日		修正者		修正内容
 *	v4.00   	2012/06/28   富士通		新規作成
 *	v5.00   	2013/02/01	 FJ)西川 	 ANK-1416-00-00_11月末案件
 *	v5.01   	2013/05/15   FJ)岡井	【TAI-2013-0000026】日中バッチ運用日付対応
 *	v17.00		2015/09/18   FJ)岡井	【ANK-2480-00-00】新電力対応(Step1-2)
 *	v33.00		2017/08/29   FJ)西川	【ANK-3254-00-00】引越ナビ住所変更申し込みのエスカレ先キュー変更
 *  v40.00      2018/12/10   FJ)中野    【ANK-3248-00-00】引越しNavi対応
 *  v40.01      2018/02/04   FJ)澤田    【OM-2019-0000134】タイトルがHT→HTになっている
 *  v47.00      2020/01/08   FJ)西川    【ANK-3628-00-00】マンションタイプ引越しNaviのフォロー対応
 *  v49.00      2020/04/01   FJ)大島    【ANK-3829-00-00】【eo】引越し予定の日付設定ルールの見直し
 *  v50.00      2020/09/09   FJ)西川    【ANK-3805-00-00】無線ルーター機能無料マンション対応
 *  v56.00      2021/08/16   FJ)張本    【ANK-4038-00-00】【eo定期】光ローゼット化対応
 *  v56.00      2021/10/28   FJ)大島    【ANK-4101-00-00】【eo】引越しNaviの5G･10Gコースの受付対応
 *  v56.01      2021/12/06   FJ)美濃原  【ANK-4103-00-00】マンション光コンセントタイプのWeb受付対応
 *  v56.02      2021/12/23   FJ)新谷    【ANK-4086-00-00】住変Webのeo電気オール電化対応化
 *  v56.03      2022/01/04   FJ）西川   【ANK-4018-00-00】【eo定期】5G・10Gコースの料金改訂対応
 *  v59.00      2022/05/16   FJ)張本    【ANK-4245-00-00】【eo】ローゼット化対応フォロー案件
 *  v60.00      2022/06/20   FJ）美濃原 【ANK-4244-00-00】【eo定期】MT既設賃貸対応
 *  v66.00      2023/04/19   FJ）行武   【ANK-4364-00-00】【eo】引越しNaviのMANMOS対応
 *  v72.00      2024/09/30   FJ)余野木  【ANK-4577-00-00】シンプルプラン追加対応STEP2
 *  v72.01      2024/11/26   FJ)余野木  【ANK-4610-00-00】【eo】引越しNaviへのアンケート項目追加対応
 *  v73.00      2024/11/15   FJ) 張本   【ANK-4493-00-00】【eo定期】光配線マンションのコースアップ対応
 *  v74.00      2025/03/13   FJ) 張本   【ANK-4656-00-00】eo光シンプルプラン提供(STEP3)
 *  v75.00      2025/05/16   FJ) 飯田   【ANK-4649-00-00】2025年サービス基本料値上げ対応
*********************************************************************/
package eo.business.service;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.regex.Pattern;

import eo.business.common.JBSbatBusinessService;
import eo.business.common.JCCBatCommon;
import eo.business.common.JFUBatCommon;
import eo.business.util.file.JBSbatFUIFI003001;
import eo.business.util.table.JBSbatFU_T_ADCHWMN;
import eo.business.util.table.JBSbatFU_T_ADCHWMN_STB_DTL;
import eo.business.util.table.JBSbatFU_T_ADCHWMN_TLN_DTL;
import eo.business.util.table.JBSbatZM_M_CD_NM_KANRI;
import eo.common.constant.JFUStrConst;
import eo.common.constant.JPCBatchMessageConstant;
import eo.common.util.JKKStringUtil;
import eo.common.util.JPCUtilCommon;
import eo.framework.application.JBSbatBusinessException;
import eo.framework.db.JBSbatSQLAccess;
import eo.framework.item.JBSbatCommonDBInterface;
import eo.framework.item.JBSbatCommonItem;
import eo.framework.item.JBSbatOutputItem;
import eo.framework.util.JBSbatBusinessFileUtil;

/**
 * (クラスの機能概要)
 * <p>
 *<BR>
 *
 * @author 富士通
 */
public class JBSbatFUMoveNaviData extends JBSbatBusinessService
{
	/** 置換文字列半角スペース2つ */
	private static final String REX_DOUBLE_HALF_SPACE = "  +";

	/** メッセージキー */
	private static final String EFUB0030KE = JPCBatchMessageConstant.EFUB0030KE;

	/** 受付者 */
	private static final String UKETSUKE = "OTHER_SYSTEM";

	/** 番ポ */
	private static final String BANPO = "番ポ";

	/** カテゴリ１ */
	private static final String CTGR_1 = "ｉｎｆｏメール";

	/** カテゴリ２ */
	private static final String CTGR_2 = "ユーザーサポート";

	/** カテゴリ３ */
	private static final String CTGR_3 = "引越し手続き";

	/** カテゴリ４ */
	private static final String CTGR_4 = "フォームメール";

	/** 状態 */
	private static final String JYOUTAI = "エスカレーション";

	/** 顧客タイプ */
	private static final String KOKYAKU_TYPE = "加入者";

	/** 申し込まない */
	private static final String NOT_APPLAY = "申し込まない";

	/** 2ヶ月以上 */
	// ANK-3248-00-00 MOD START
	//private static final String ONE_MONTH_GREATER = "1ヶ月以上";
	private static final String TWO_MONTH_GREATER = "2ヶ月以上";
	// ANK-3248-00-00 MOD END
	// ANK-3248-00-00 MOD START
	/** 2ヶ月未満 */
	//private static final String ONE_MONTH_LESS = "1ヶ月未満";
	private static final String TWO_MONTH_LESS = "2ヶ月未満";
	// ANK-3248-00-00 MOD END
	/** キュー名 */
	private static final String QUE_NM = "引越しWEB【受付】";

	/** ステータス */
	private static final String STATUS = "処理中";
	// ANK-3248-00-00 ADD START
	///** タイトル */
	//private static final String TITLE = "フォームメール|引越し手続き|ユーザーサポート";
	// ANK-3248-00-00 ADD END
	// ANK-3248-00-00 ADD START
	/** タイトル　HT→HT */
	private static final String TITLE_HT_HT = "フォームメール|引越し手続き（戸建て）|ユーザーサポート";
	/** タイトル　HT→MT */
	private static final String TITLE_HT_MT = "フォームメール|引越し手続き（HT⇒MT）|ユーザーサポート";
	/** タイトル　MT→MT */
	private static final String TITLE_MT_MT = "フォームメール|引越し手続き（MT⇒MT）|ユーザーサポート";
	/** タイトル　MT→HT */
	private static final String TITLE_MT_HT = "フォームメール|引越し手続き（MT⇒HT）|ユーザーサポート";
	// ANK-3248-00-00 ADD END
	/** 受付種別 */
	private static final String UKETSUKE_SBT = "他システム";

	/** 年 */
	private static final String JPN_FT_YEAR = "年";

	/** 月 */
	private static final String JPN_FT_MONTH = "月";

	/** 日 */
	private static final String JPN_FT_DAY = "日";

	/** 利用する */
	private static final String RIYO_SURU = "利用する";

	/** 予定あり */
	private static final String YOTEI_ARI = "予定あり";

	/** 契約フラグ（1:TEL） */
	private static final String KEIYAKU_FLG_TEL = "1";

	/** 契約フラグ（2:TV） */
	private static final String KEIYAKU_FLG_TV = "2";

	/** 明細番号 */
	private static final String DTL_NO = "DTL_NO";

	/** 明細番号(電話)(1番目) */
	private static final String DTL_NO_TEL_ONE = "1";

	/** 明細番号(テレビ)(1番目) */
	private static final String DTL_NO_TV_ONE = "01";

	/** 契約フラグ（1:TEL、2:TV） */
	private static final String KEIYAKU_FLG = "KEIYAKU_FLG";

	/** 担当者 */
	private static final String TANTOU = "OTHER_SYSTEM";

	/** TEL/TV情報１ */
	private static final String TEL_TV_INFO_01 = "TEL_TV_INFO_01";

	/** TEL/TV情報２ */
	private static final String TEL_TV_INFO_02 = "TEL_TV_INFO_02";

	/** TEL/TV情報３ */
	private static final String TEL_TV_INFO_03 = "TEL_TV_INFO_03";

	/** TEL/TV情報４ */
	private static final String TEL_TV_INFO_04 = "TEL_TV_INFO_04";

	/** TEL/TV情報５ */
	private static final String TEL_TV_INFO_05 = "TEL_TV_INFO_05";

	/** 同日を含む／含まないの指定(0：含まない、1：含む) */
	private static final String METHOD_FLG_ISFUTUREDATE = "1";

	/** 日付フォーマット：yyyyMMdd */
	private static final String DATE_FORMAT_YYYYMMDD = "yyyyMMdd";

	/** 日付フォーマット：yyyy年MM月dd日 */
	private static final String DATE_FORMAT_NENGAPPI = "yyyy年MM月dd日";

	/** ▼▼▼▼▼▼ツールから生成した宣言です 開始▼▼▼▼▼▼ */
	/** テーブル(住所変更Ｗｅｂ申込内容) */
	private static final String D_TBL_NAME_FU_T_ADCHWMN = "FU_T_ADCHWMN";

	/** テーブル(コード名称管理)*/
	private static final String D_TBL_NAME_ZM_M_CD_NM_KANRI = "ZM_M_CD_NM_KANRI";

	/** SQL定義キー(FU_SELECT_001) */
	private static final String FU_T_ADCHWMN_FU_SELECT_001 = "FU_SELECT_001";

	/** SQL定義キー(FU_UPDATE_001) */
	private static final String FU_T_ADCHWMN_FU_UPDATE_001 = "FU_UPDATE_001";

	/** SQL定義キー(FU_SELECT_001)*/
	private static final String ZM_M_CD_NM_KANRI_FU_SELECT_001 = "FU_SELECT_001";

	/** テーブルアクセスクラス(住所変更Ｗｅｂ申込内容) */
	private JBSbatSQLAccess db_FU_T_ADCHWMN = null;

	/** テーブルアクセスクラス(コード名称管理)*/
	private JBSbatSQLAccess db_ZM_M_CD_NM_KANRI = null;

	/** アンケート取得用コード名称 */
	private static final String CD_NM_KANRI_ENQ_CD = "CD01857";

	// ANK-3248-00-00 ADD START
	/** 冊 */
	private static final String SATU = "冊";

	/** 番号 */
	private static final String BANGO = "番号";

	/** コロン */
	private static final String KORON = "：";

	/** ハイフン */
	private static final String HAIHUN = "−−−−−−−−−−";

	/** 引越し予定 */
	private static final String RENBAN_1 = "引越し予定";
	/** 氏名 */
	private static final String RENBAN_2 = "氏名";
	/** 氏名（カナ） */
	private static final String RENBAN_3 = "氏名（カナ）";
	/** 電話番号 */
	private static final String RENBAN_4 = "電話番号";
	/** 現在の住所 */
	private static final String RENBAN_5 = "現在の住所";
	/** 引越し後の住所  */
	private static final String RENBAN_6 = "引越し後の住所";
	/** 住所番地の決定状況 */
	private static final String RENBAN_7 = "住所番地の決定状況";
	/** お引越し予定日 */
	private static final String RENBAN_8 = "お引越し予定日";
	/** MID */
	private static final String RENBAN_9 = "MID";
	/** PID */
	private static final String RENBAN_10 = "PID";
	/** CAT-ID */
	private static final String RENBAN_11 = "CAT-ID";
	/** 接続方式 */
	private static final String RENBAN_12 = "接続方式";
	/** 連絡先電話番号 */
	private static final String RENBAN_13 = "連絡先電話番号";
	/** メールアドレス */
	private static final String RENBAN_14 = "メールアドレス";
	/** サービス開始希望日（イーサ） */
	private static final String RENBAN_15 = "サービス開始希望日（イーサ／光配線−Ｃ／光配線）";
	/** 引越し先住所に同時変更する住所 */
	private static final String RENBAN_16 = "引越し先住所に同時変更する住所";
	/** お引越し手続きに関する書面の送付先（引越し前） */
	private static final String RENBAN_17 = "お引越し手続きに関する書面の送付先（引越し前）";
	/** お引越し手続きに関する書面の送付先（引越し後） */
	private static final String RENBAN_18 = "お引越し手続きに関する書面の送付先（引越し後）";
	/** 機器の送付先（引越し前） */
	private static final String RENBAN_19 = "機器の送付先（引越し前）";
	/** 機器の送付先（引越し後） */
	private static final String RENBAN_20 = "機器の送付先（引越し後）";
	/** 現在のサービス（ネット） */
	private static final String RENBAN_21 = "現在のサービス（ネット）";
	/** 引越し後のサービス（ネット） */
	private static final String RENBAN_22 = "引越し後のサービス（ネット）";
	/** お引越し後のモデム利用 */
	private static final String RENBAN_23 = "お引越し後のモデム利用";
	/** 移転元機器継続利用 */
	private static final String RENBAN_24 = "移転元機器継続利用";
	/** 長割（ホーム／メゾン） */
	private static final String RENBAN_25 = "長割（ホーム／メゾン）";
	/** 長割自動継続（ホーム／メゾン） */
	private static final String RENBAN_26 = "長割自動継続（ホーム／メゾン）";
	/** 現在のサービス（eo光電話） */
	private static final String RENBAN_27 = "現在のサービス（eo光電話）";
	/** 現在ご利用中の電話番号（1番号目） */
	private static final String RENBAN_28 = "現在ご利用中の電話番号（1番号目）";
	/** 現在ご利用中の電話番号（2番号目 */
	private static final String RENBAN_29 = "現在ご利用中の電話番号（2番号目）";
	/** 引越し後のサービス（eo光電話） */
	private static final String RENBAN_30 = "引越し後のサービス（eo光電話）";
	/** NTT番号移転手続き */
	private static final String RENBAN_31 = "NTT番号移転手続き";
	/** 現在ご利用中の電話サービスの郵便番号（1番号目）*/
	private static final String RENBAN_32 = "現在ご利用中の電話サービスの郵便番号（1番号目）";
	/** 現在ご利用中の電話サービスの設置場所住所（1番号目） */
	private static final String RENBAN_33 = "現在ご利用中の電話サービスの設置場所住所（1番号目）";
	/** 現在ご利用中の電話サービスの郵便番号（2番号目） */
	private static final String RENBAN_34 = "現在ご利用中の電話サービスの郵便番号（2番号目）";
	/** 現在ご利用中の電話サービスの設置場所住所（2番号目） */
	private static final String RENBAN_35 = "現在ご利用中の電話サービスの設置場所住所（2番号目）";
	/** 発信者番号通知 */
	private static final String RENBAN_36 = "発信者番号通知";
	/** 現在のサービス（eo光テレビ）" */
	private static final String RENBAN_37 = "現在のサービス（eo光テレビ）";
	/** 現在のSTBコース */
	private static final String RENBAN_38 = "現在のSTBコース";
	/** ガイド誌契約冊数 */
	private static final String RENBAN_39 = "ガイド誌契約冊数";
	/** 引越し後のサービス（eo光テレビ） */
	private static final String RENBAN_40 = "引越し後のサービス（eo光テレビ）";
	/** 引越し後のSTBコース */
	private static final String RENBAN_41 = "引越し後のSTBコース";
	/** 現在のご利用場所のサービス終了希望日 */
	private static final String RENBAN_42 = "現在のご利用場所のサービス終了希望日";
	/** 現住所撤去工事希望日 */
	private static final String RENBAN_43 = "現住所撤去工事希望日";
	/** 撤去工事の種類 */
	private static final String RENBAN_44 = "撤去工事の種類";
	/** 撤去費用 */
	private static final String RENBAN_57 = "撤去費用";
	/** フェムトセル契約 */
	private static final String RENBAN_45 = "フェムトセル契約";
	/** 引越し元のローゼット設置状態 */
	private static final String RENBAN_60 = "引越し元のローゼット設置状態";
	/** 引越し後のサービス（eo電気） */
	private static final String RENBAN_46 = "引越し後のサービス（eo電気）";
	/** 引越し元のeo電気のお客さまID */
	private static final String RENBAN_47 = "引越し元のeo電気のお客さまID";
	/** 引越し元の同一利用場所のeo光ネットのお客さまID */
	private static final String RENBAN_48 = "引越し元の同一利用場所のeo光ネットのお客さまID";
	/** 引越し元のeo電気のご利用終了予定日 */
	private static final String RENBAN_51 = "引越し元のeo電気のご利用終了予定日";
	/** 引越し元のeo電気の建物取り壊し予定有無 */
	private static final String RENBAN_52 = "引越し元のeo電気の建物取り壊し予定有無";
	/** 引越し元のeo電気の建物の取り壊し予定日 */
	private static final String RENBAN_53 = "引越し元のeo電気の建物の取り壊し予定日";
	/** 引越し先のeo電気の供給地点特定番号 */
	private static final String RENBAN_49 = "引越し先のeo電気の供給地点特定番号";
	/** 引越し先のeo電気のご利用開始希望日 */
	private static final String RENBAN_50 = "引越し先のeo電気のご利用開始希望日";
	/** eo電気料金プラン */
	private static final String RENBAN_54 = "引越し先のeo電気の料金プラン";
	/** 引越し先の電気のご契約先 */
	private static final String RENBAN_55 = "引越し先の電気のご契約先";
	/** 引越し先の電気のご契約種別 */
	private static final String RENBAN_56 = "引越し先の電気のご契約種別";

	/** （永年無償MT）無線ルーター機能利用 */
	private static final String RENBAN_58 = "（永年無償MT）無線ルーター機能利用";

	/** （永年無償MT）eo無線LAN中継機利用 */
	private static final String RENBAN_59 = "（永年無償MT）eo無線LAN中継機利用";

	/** オール電化機器 */
	private static final String RENBAN_61 = "オール電化機器";

	/** お引越し先の建物 */
	private static final String RENBAN_62 = "お引越し先の建物";
	/** 宅内調査方法 */
	private static final String RENBAN_63 = "宅内調査方法";

	/** 認知経路アンケート */
	private static final String RENBAN_64 = "認知経路アンケート";

	/** 現在ご利用中の電話サービスの郵便番号（1番号目） */
	private static final String BMP_TELNO_KEI_AD_PCD_1 = "BMP_TELNO_KEI_AD_PCD_1";

	/** 現在ご利用中の電話サービスの郵便番号（2番号目） */
	private static final String BMP_TELNO_KEI_AD_PCD_2 = "BMP_TELNO_KEI_AD_PCD_2";

	/** 現在ご利用中の電話サービスの住所（1番号目） */
	private static final String BMP_TELNO_KEI_AD_1 = "BMP_TELNO_KEI_AD_1";

	/** 現在ご利用中の電話サービスの住所（2番号目） */
	private static final String BMP_TELNO_KEI_AD_2 = "BMP_TELNO_KEI_AD_2";

	/** NTT番号移転手続き（1番号目） */
	private static final String DOBANITEN_TTDK_USR_JSSI_UM_1 = "DOBANITEN_TTDK_USR_JSSI_UM_1";

	/** NTT番号移転手続き（2番号目） */
	private static final String DOBANITEN_TTDK_USR_JSSI_UM_2 = "DOBANITEN_TTDK_USR_JSSI_UM_2";

	private static final String CHGE_BF_NET_SVC_MKM_NYO_CD_WK = "CHGE_BF_NET_SVC_MKM_NYO_CD_WK";

	private static final String CHAF_NET_SVC_MKM_NYO_CD_WK = "CHAF_NET_SVC_MKM_NYO_CD_WK";

	private static final String CHGE_BF_TV_SVC_MKM_NYO_CD_WK = "CHGE_BF_TV_SVC_MKM_NYO_CD_WK";

	private static final String CHAF_TV_SVC_MKM_NYO_CD_WK = "CHAF_TV_SVC_MKM_NYO_CD_WK";

	/** 提供方式コード（TK_HOSHIKI_CDに出力される名称に紐付くコード） */
	private static final String TK_HOSHIKI_CD_WK = "TK_HOSHIKI_CD_WK";

	/** 接続方式：光配線MANMOS物件（工事有） */
	private static final String CONNECT_HSK_KOJI_ARI = "光配線MANMOS物件（工事有）";

	/** 接続方式：光配線MANMOS物件（工事無） */
	private static final String CONNECT_HSK_KOJI_NASHI = "光配線MANMOS物件（工事無）";

	/** 接続方式：光配線−Ｃ */
	private static final String CONNECT_HSK_HHS_CONSNT = "光配線−Ｃ";

	/** 接続方式：光配線 */
	private static final String CONNECT_HSK_HHS = "光配線";

	/** 履歴出力：工事ありの為、聞き取り不要 */
	private static final String RK_NON_OUTPUT = "工事ありの為、聞き取り不要";

	/** お引越し先の建物：新築 */
	private static final String TTMN_NEW = "新築";
	/** お引越し先の建物：既築 */
	private static final String TTMN_MOD = "既築";
	/** 宅内調査方法：遠隔 */
	private static final String CHOSA_ENKAKU = "遠隔外内調査";
	/** 宅内調査方法：宅内 */
	private static final String CHOSA_TAKUNAI = "既通常の宅内調査";

	/** ネットタイプ：ホーム */
	private static final String NETTYPE_HOME = "ｅｏ光ネットホームタイプ";
	/** ネットタイプ：メゾン */
	private static final String NETTYPE_MEZON = "ｅｏ光ネットメゾンタイプ";
	/** ネットタイプ：マンション */
	private static final String NETTYPE_MANTION = "ｅｏ光ネットマンションタイプ";
	/** ネットタイプ：シンプルプラン */
	private static final String NETTYPE_SIMPLE = "ｅｏ光シンプルプラン";

	/** 20770707 */
	private static final String TKKJ_KIBO_DEF = "20770707";
	/** 台目 ▲ */
	private static final String TV_INFO_WORK = "台目 ▲";

	/** 撤去費用の出力文字列パターン */
	private static HashMap<String, String> tekkyoHiyouMap = new HashMap<String, String>();
	static
	{
		/** 転居元タイプ／テレビ契約有無／撤去方法 */
		/** ホームタイプ／なし／残置 */
		tekkyoHiyouMap.put("111", "0円");
		/** ホームタイプ／なし／全 */
		tekkyoHiyouMap.put("112", "16,500円");
		/** ホームタイプ／あり（継続）／残置 */
		tekkyoHiyouMap.put("121", "0円");
		/** ホームタイプ／あり（継続）／全 */
		tekkyoHiyouMap.put("122", "24,200円");
		/** ホームタイプ／あり（解約）／残置 */
		tekkyoHiyouMap.put("131", "13,200円　STB2台目以降：＋5,500円／台");
		/** ホームタイプ／あり（解約）／全 */
		tekkyoHiyouMap.put("132", "24,200円　STB2台目以降：＋5,500円／台");
		/** メゾンタイプ／なし／残置 */
		tekkyoHiyouMap.put("211", "0円");
		/** メゾンタイプ／あり（継続）／残置 */
		tekkyoHiyouMap.put("221", "0円");
		/** メゾンタイプ／あり（解約）／残置 */
		tekkyoHiyouMap.put("231", "13,200円　STB2台目以降：＋5,500円／台");
		/** マンションタイプ／なし／- */
		tekkyoHiyouMap.put("313", "0円");
		/** マンションタイプ／あり（継続）／- */
		tekkyoHiyouMap.put("323", "0円");
		/** マンションタイプ／あり（解約）／- */
		tekkyoHiyouMap.put("333", "5,500円　STB2台目以降：＋5,500円／台");
		/** シンプルプラン／なし／残置 */
		tekkyoHiyouMap.put("411", "0円");
		/** シンプルプラン／なし／全 */
		tekkyoHiyouMap.put("412", "16,500円");
	};

	// ANK-3248-00-00 ADD END
	/**
	 * 初期処理です。
	 *
	 * @param JBSbatCommonItem commonItem　バッチ共通パラメータ電文
	 * @throws Exception
	 */
	@Override
	public void initial(JBSbatCommonItem commonItem) throws Exception
	{
		/** ▼▼▼▼▼▼業務サービスの初期処理を記述してください。▼▼▼▼▼▼ */
		/** ▼▼▼▼▼▼ツールから生成した初期化のソースです 開始▼▼▼▼▼▼ */
		// 共通パラメータを設定します
		super.setCommonInfo(commonItem);

		// DBアクセスクラスを生成します
		db_FU_T_ADCHWMN = new JBSbatSQLAccess(commonItem, D_TBL_NAME_FU_T_ADCHWMN);
		db_ZM_M_CD_NM_KANRI = new JBSbatSQLAccess(commonItem, D_TBL_NAME_ZM_M_CD_NM_KANRI);
		/** ▲▲▲▲▲▲ツールから生成した初期化のソースです 終了▲▲▲▲▲▲ */
		/** ▲▲▲▲▲▲業務サービスの初期処理を記述してください。▲▲▲▲▲▲ */
	}

	/**
	 * 主処理です。
	 *
	 * @return JBSbatOutputItem　出力情報
	 * @throws Exception
	 */
	public JBSbatOutputItem execute() throws Exception
	{
		/** ▼▼▼▼▼▼業務サービスの主処理を記述してください。▼▼▼▼▼▼ */

		String strJobid = commonItem.getJobid();
		String strBatchUserId = commonItem.getBatchUserId();
		String strSqlDefFilePath = commonItem.getSqlDefFilePath();
		super.logPrint.printDebugLog(strJobid + ":" + strBatchUserId);
		super.logPrint.printDebugLog(strJobid + ":" + strSqlDefFilePath);

		// FREEパラメータ取得
		String strFreeParam = commonItem.getFreeItem();
		if (strFreeParam == null || strFreeParam.length() == 0)
		{
			throw new JBSbatBusinessException(EFUB0030KE);
		}

		// パラメータを区切り文字で分割する
		String[] lines = strFreeParam.split(JFUStrConst.S_PARAM_DELIM);
		if (lines == null || lines.length < 3)
		{
			throw new JBSbatBusinessException(EFUB0030KE);
		}

		// オンライン運用日付を取得する。
		String strOnlineOpeDate = commonItem.getOnlineOpeDate();

		// 2025年6月30日までは撤去費用は旧価格
		if("20250630".compareTo(opeDate) >= 0)
		{
			// 撤去費用の出力文字列パターンを2025年6月30日までは再設定する
			setTekkyoKojiHiyoTo20250630();
		}

		// -------- （１）住所変更Ｗｅｂ申込データ抽出処理 --------//

		// 住所変更Ｗｅｂ申込データ抽出結果格納領域を生成する。
		JBSbatCommonDBInterface selAdchwmnInfo = new JBSbatCommonDBInterface();
		selAdchwmnInfo.setValue(strOnlineOpeDate); // オンライン運用日付
		// 住所変更Ｗｅｂ申込データ抽出する。
		executeADCHWMN_FU_SELECT_001(selAdchwmnInfo.getList().toArray());

		// 更新対象の住所変更Ｗｅｂ申込内容リスト格納領域を生成する。
		LinkedHashMap<String, HashMap<String, String>> adchwmnInfoMapList = new LinkedHashMap<String, HashMap<String, String>>();
		HashMap<String, String> adchwmnInfoMap = null;

		int recordCnt = 0;

		int telAfSvcMkmNyoCnt = 1;
		int hasinshaNoTchiCnt = 1;
		int dnwachomskCnt = 1;

		int tvBfCnt = 1;
		int tvAfCnt = 1;
		Pattern trimPattern = Pattern.compile(REX_DOUBLE_HALF_SPACE);
		for (selAdchwmnInfo = db_FU_T_ADCHWMN.selectNext(); null != selAdchwmnInfo; selAdchwmnInfo = db_FU_T_ADCHWMN.selectNext())
		{
			// 取得したレコードを1件づつ読込みSQL取得項目を各変数へ格納する。
			recordCnt++;

			// 住所変更Ｗｅｂ申込内容番号
			String adchwmnNo = selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN.ADCHWMN_NO);
			if (!adchwmnInfoMapList.containsKey(adchwmnNo))
			{
				// 新しい住所変更Ｗｅｂ申込内容Map格納領域を生成する。
				adchwmnInfoMap = getNewAdchwmnInfoMap(selAdchwmnInfo);

				// カウント値をリセットする。
				telAfSvcMkmNyoCnt = 1;
				hasinshaNoTchiCnt = 1;
				dnwachomskCnt = 1;
				tvBfCnt = 1;
				tvAfCnt = 1;
			}

			String dtlNo = getString(selAdchwmnInfo, DTL_NO);
			if (!JFUBatCommon.isNotNullCheck(dtlNo))
			{
				// テレビ/電話の情報がないと判断して次の処理へ移る。
				adchwmnInfoMapList.put(adchwmnNo, adchwmnInfoMap);
				continue;
			}

			String keiyakuFlg = getString(selAdchwmnInfo, KEIYAKU_FLG);
			String telTvInfo01 = getString(selAdchwmnInfo, TEL_TV_INFO_01);
			String telTvInfo02 = getString(selAdchwmnInfo, TEL_TV_INFO_02);
			String telTvInfo03 = getString(selAdchwmnInfo, TEL_TV_INFO_03);
			String telTvInfo04 = getString(selAdchwmnInfo, TEL_TV_INFO_04);
			String telTvInfo05 = getString(selAdchwmnInfo, TEL_TV_INFO_05);
			String dnwachomskKibo = getString(selAdchwmnInfo, JBSbatFU_T_ADCHWMN_TLN_DTL.DNWACHOMSK_KIBO_CD);
			String hasinshaNoTchiKibo = getString(selAdchwmnInfo, JBSbatFU_T_ADCHWMN_TLN_DTL.HASINSHA_NO_TCHI_KIBO_CD);

			if (KEIYAKU_FLG_TEL.equals(keiyakuFlg))
			{
				StringBuffer chAfTelSvcMkmNyoSb = new StringBuffer();
				StringBuffer dnwachomskKiboSb = new StringBuffer();
				StringBuffer hasinshaNoTchiKiboSb = new StringBuffer();
				if (!DTL_NO_TEL_ONE.equals(dtlNo))
				{
					String chAfTelSvcMkmNyoCd = adchwmnInfoMap.get(JBSbatFU_T_ADCHWMN.CHAF_TEL_SVC_MKM_NYO_CD);
					String dnwachomskKiboCd = adchwmnInfoMap.get(JBSbatFU_T_ADCHWMN_TLN_DTL.DNWACHOMSK_KIBO_CD);
					String hasinshaNoTchiKiboCd = adchwmnInfoMap.get(JBSbatFU_T_ADCHWMN_TLN_DTL.HASINSHA_NO_TCHI_KIBO_CD);

					// 上位のレコード情報を取り出す。
					if (JFUBatCommon.isNotNullCheck(chAfTelSvcMkmNyoCd))
					{
						chAfTelSvcMkmNyoSb.append(chAfTelSvcMkmNyoCd).append(JFUStrConst.HALF_SPACE);
					}
					if (JFUBatCommon.isNotNullCheck(dnwachomskKiboCd))
					{
						dnwachomskKiboSb.append(dnwachomskKiboCd).append(JFUStrConst.HALF_SPACE);
					}
					if (JCCBatCommon.isNotNull(hasinshaNoTchiKiboCd))
					{
						hasinshaNoTchiKiboSb.append(hasinshaNoTchiKiboCd).append(JFUStrConst.HALF_SPACE);
					}
					// ANK-3248-00-00 ADD START
					String dobanitenTtdkUsrJssiUm = JPCUtilCommon.hyhunPcd(nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.DOBANITEN_TTDK_USR_JSSI_UM)));
					String bmpTelnoKeiAdPcd = JPCUtilCommon.hyhunPcd(nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_PCD)));
					String bmpTelnoKeiAdStateNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_STATE_NM));
					String bmpTelnoKeiAdCityNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_CITY_NM));
					String bmpTelnoKeiAdOaztsuNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_OAZTSU_NM));
					String bmpTelnoKeiAdAzchoNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_AZCHO_NM));
					String bmpTelnoKeiAdBnchigo = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_BNCHIGO));
					String bmpTelnoKeiAdAdrttm = lPadZenkakuSpace(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRTTM));
					String bmpTelnoKeiAdAdrrm = lPadZenkakuSpace(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRRM));
					//NTT番号移転手続き（2番号目）
					adchwmnInfoMap.put(DOBANITEN_TTDK_USR_JSSI_UM_2, dobanitenTtdkUsrJssiUm);

					//現在ご利用中の電話サービスの郵便番号（2番号目） 
					adchwmnInfoMap.put(BMP_TELNO_KEI_AD_PCD_2, bmpTelnoKeiAdPcd);

					// 現在ご利用中の電話サービスの設置場所住所（2番号目）
					StringBuffer bmpTelnoKeiAd = new StringBuffer();
					adchwmnInfoMap.put(BMP_TELNO_KEI_AD_2, (bmpTelnoKeiAd.append(bmpTelnoKeiAdStateNm).append(bmpTelnoKeiAdCityNm).append(bmpTelnoKeiAdOaztsuNm).append(bmpTelnoKeiAdAzchoNm).append(
							bmpTelnoKeiAdBnchigo).append(bmpTelnoKeiAdAdrttm).append(bmpTelnoKeiAdAdrrm).toString().trim()));
				}
				else
				{
					String dobanitenTtdkUsrJssiUm = JPCUtilCommon.hyhunPcd(nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.DOBANITEN_TTDK_USR_JSSI_UM)));
					String bmpTelnoKeiAdPcd = JPCUtilCommon.hyhunPcd(nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_PCD)));
					String bmpTelnoKeiAdStateNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_STATE_NM));
					String bmpTelnoKeiAdCityNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_CITY_NM));
					String bmpTelnoKeiAdOaztsuNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_OAZTSU_NM));
					String bmpTelnoKeiAdAzchoNm = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_AZCHO_NM));
					String bmpTelnoKeiAdBnchigo = nullToBlank(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_BNCHIGO));
					String bmpTelnoKeiAdAdrttm = lPadZenkakuSpace(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRTTM));
					String bmpTelnoKeiAdAdrrm = lPadZenkakuSpace(selAdchwmnInfo.getString(JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRRM));

					//NTT番号移転手続き（1番号目）
					adchwmnInfoMap.put(DOBANITEN_TTDK_USR_JSSI_UM_1, dobanitenTtdkUsrJssiUm);

					//現在ご利用中の電話サービスの郵便番号（1番号目） 
					adchwmnInfoMap.put(BMP_TELNO_KEI_AD_PCD_1, bmpTelnoKeiAdPcd);

					// 現在ご利用中の電話サービスの設置場所住所（1番号目）
					StringBuffer bmpTelnoKeiAd = new StringBuffer();
					adchwmnInfoMap.put(BMP_TELNO_KEI_AD_1, (bmpTelnoKeiAd.append(bmpTelnoKeiAdStateNm).append(bmpTelnoKeiAdCityNm).append(bmpTelnoKeiAdOaztsuNm).append(bmpTelnoKeiAdAzchoNm).append(
							bmpTelnoKeiAdBnchigo).append(bmpTelnoKeiAdAdrttm).append(bmpTelnoKeiAdAdrrm).toString().trim()));
					// ANK-3248-00-00 ADD END
				}

				if (BANPO.equals(telTvInfo01))
				{
					StringBuffer banpoSb = new StringBuffer();
					String banpoInfo =
							trimPattern.matcher(
									banpoSb.append(telTvInfo02).append(JFUStrConst.HALF_SPACE).append(telTvInfo03).append(JFUStrConst.HALF_SPACE).append(telTvInfo04).append(JFUStrConst.HALF_SPACE)
											.append(telTvInfo05).toString().trim()).replaceAll(JFUStrConst.HALF_SPACE);

					if (JFUBatCommon.isNotNullCheck(banpoInfo))
					{
						chAfTelSvcMkmNyoSb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(telAfSvcMkmNyoCnt).append(BANGO + KORON).append(telTvInfo01).append(JFUStrConst.KIGOU_KAKKO_STA).append(
								banpoInfo).append(JFUStrConst.KIGOU_KAKKO_END).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
						telAfSvcMkmNyoCnt++;
					}
					else
					{
						chAfTelSvcMkmNyoSb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(telAfSvcMkmNyoCnt).append(BANGO + KORON).append(telTvInfo01).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
						telAfSvcMkmNyoCnt++;
					}
				}
				else
				{
					if (JFUBatCommon.isNotNullCheck(telTvInfo01))
					{
						if (JFUBatCommon.isNotNullCheck(telTvInfo02))
						{
							chAfTelSvcMkmNyoSb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(telAfSvcMkmNyoCnt).append(BANGO + KORON).append(telTvInfo01).append(JFUStrConst.KIGOU_KAKKO_STA)
									.append(telTvInfo02).append(JFUStrConst.KIGOU_KAKKO_END).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
							telAfSvcMkmNyoCnt++;
						}
						else
						{
							chAfTelSvcMkmNyoSb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(telAfSvcMkmNyoCnt).append(BANGO + KORON).append(telTvInfo01)
									.append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
							telAfSvcMkmNyoCnt++;
						}
					}
				}
				adchwmnInfoMap.put(JBSbatFU_T_ADCHWMN.CHAF_TEL_SVC_MKM_NYO_CD, chAfTelSvcMkmNyoSb.toString());

				if (JFUBatCommon.isNotNullCheck(dnwachomskKibo))
				{
					dnwachomskKiboSb.append(dnwachomskCnt).append(JFUStrConst.KIGOU_KAKKO_STA).append(dnwachomskKibo).append(JFUStrConst.KIGOU_KAKKO_END);
					dnwachomskCnt++;
				}
				adchwmnInfoMap.put(JBSbatFU_T_ADCHWMN_TLN_DTL.DNWACHOMSK_KIBO_CD, dnwachomskKiboSb.toString());

				if (JFUBatCommon.isNotNullCheck(hasinshaNoTchiKibo))
				{
					hasinshaNoTchiKiboSb.append(hasinshaNoTchiCnt).append(BANGO).append(JFUStrConst.KIGOU_KAKKO_STA).append(hasinshaNoTchiKibo).append(JFUStrConst.KIGOU_KAKKO_END);
					hasinshaNoTchiCnt++;
				}
				adchwmnInfoMap.put(JBSbatFU_T_ADCHWMN_TLN_DTL.HASINSHA_NO_TCHI_KIBO_CD, hasinshaNoTchiKiboSb.toString());
			}
			else if (KEIYAKU_FLG_TV.equals(keiyakuFlg))
			{
				StringBuffer chBfTvCoursePcrsNmSb = new StringBuffer();
				StringBuffer chAfTvCoursePcrsNmSb = new StringBuffer();
				if (!DTL_NO_TV_ONE.equals(dtlNo))
				{
					String chBfTvCoursePcrsNm = adchwmnInfoMap.get(JBSbatFU_T_ADCHWMN_STB_DTL.CHBF_TV_COURSE_PCRS_NM);
					String chAfTvCoursePcrsNm = adchwmnInfoMap.get(JBSbatFU_T_ADCHWMN_STB_DTL.CHAF_TV_COURSE_PCRS_NM);

					// 上位のレコード情報を取り出す。
					if (JFUBatCommon.isNotNullCheck(chBfTvCoursePcrsNm))
					{
						chBfTvCoursePcrsNmSb.append(chBfTvCoursePcrsNm).append(JFUStrConst.TOUTEN);
					}

					if (JFUBatCommon.isNotNullCheck(chAfTvCoursePcrsNm))
					{
						chAfTvCoursePcrsNmSb.append(chAfTvCoursePcrsNm).append(JFUStrConst.TOUTEN);
					}
				}

				if (JFUBatCommon.isNotNullCheck(telTvInfo01))
				{
					chBfTvCoursePcrsNmSb.append(String.valueOf(tvBfCnt)).append(TV_INFO_WORK).append(telTvInfo01);
					tvBfCnt++;
				}

				if (JFUBatCommon.isNotNullCheck(telTvInfo03))
				{
					chBfTvCoursePcrsNmSb.append(JFUStrConst.SPACE).append(JFUStrConst.KIGOU_KAKKO_STA).append(telTvInfo03).append(JFUStrConst.KIGOU_KAKKO_END);
				}
				adchwmnInfoMap.put(JBSbatFU_T_ADCHWMN_STB_DTL.CHBF_TV_COURSE_PCRS_NM, trimStr(chBfTvCoursePcrsNmSb.toString(), JFUStrConst.TOUTEN));

				if (JFUBatCommon.isNotNullCheck(telTvInfo02))
				{

					chAfTvCoursePcrsNmSb.append(String.valueOf(tvAfCnt)).append(TV_INFO_WORK).append(telTvInfo02);
					tvAfCnt++;
				}

				if (JFUBatCommon.isNotNullCheck(telTvInfo04))
				{
					chAfTvCoursePcrsNmSb.append(JFUStrConst.SPACE).append(JFUStrConst.KIGOU_KAKKO_STA).append(telTvInfo04).append(JFUStrConst.KIGOU_KAKKO_END);
				}
				adchwmnInfoMap.put(JBSbatFU_T_ADCHWMN_STB_DTL.CHAF_TV_COURSE_PCRS_NM, trimStr(chAfTvCoursePcrsNmSb.toString(), JFUStrConst.TOUTEN));
			}
			adchwmnInfoMapList.put(adchwmnNo, adchwmnInfoMap);
		}

		if (recordCnt == 0)
		{
			super.logPrint.printDebugLog(strJobid + ":対象データが0件の為、後続処理を行わずに終了。");
			return null;
		}

		// ======= ▼▼▼ 整形した情報をCASEファイルへ出力する。 ▼▼▼ =======

		// CASECSVファイル
		String caseCvsFile = lines[0];
		// CASE件数
		String caseCntFile = lines[1];
		// CASEフラグファイル
		String caseFlgFile = lines[2];

		JBSbatBusinessFileUtil caseCvsFileObj = null;
		JBSbatBusinessFileUtil caseCntFileObj = null;
		JBSbatBusinessFileUtil caseFlgFileObj = null;

		try
		{
			// コード名称マスタからアンケートコードに対応する名称を取得する
			JBSbatCommonDBInterface cd_nm_dbList = new JBSbatCommonDBInterface();
			JBSbatCommonDBInterface cd_nm_map = null;
			HashMap<String, String> cdDivNmMap = new HashMap<String, String>();

			cd_nm_dbList. setValue(CD_NM_KANRI_ENQ_CD);
			executeZM_M_CD_NM_KANRI_FU_SELECT_001(cd_nm_dbList.getList().toArray());

			for(cd_nm_map = db_ZM_M_CD_NM_KANRI.selectNext(); null != cd_nm_map; cd_nm_map = db_ZM_M_CD_NM_KANRI.selectNext())
			{
				cdDivNmMap.put(cd_nm_map.getString(JBSbatZM_M_CD_NM_KANRI.CD_DIV),cd_nm_map.getString(JBSbatZM_M_CD_NM_KANRI.CD_DIV_NM));
			}

			// CASECSVファイルを生成する。
			caseCvsFileObj = JCCBatCommon.createBusinessFileUtil(caseCvsFile, JFUStrConst.SJIS, JFUStrConst.RETURN_CODE, JFUStrConst.S_SEP_CAM);
			super.logPrint.printDebugLog(strJobid + ":CASECSVファイル名:" + caseCvsFile);

			Collection<HashMap<String, String>> adchwmnInfoMapCol = adchwmnInfoMapList.values();
			Iterator<HashMap<String, String>> adchwmnInfoMapColIt = adchwmnInfoMapCol.iterator();
			while (adchwmnInfoMapColIt.hasNext())
			{
				HashMap<String, String> outMap = adchwmnInfoMapColIt.next();

				String svcKeiNo = outMap.get(JBSbatFUIFI003001.SVC_KEI_NO);
				String webMskmUkDtm = outMap.get(JBSbatFU_T_ADCHWMN.WEB_MSKM_UK_DTM);
				String hikkoshiRsvYmd = outMap.get(JBSbatFU_T_ADCHWMN.HIKKOSHI_RSV_YMD);
				String chBfNetSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHGE_BF_NET_SVC_MKM_NYO_CD);
				// ANK-3248-00-00 ADD START
				String chBfNetSvcMkmNyoWork = outMap.get(CHGE_BF_NET_SVC_MKM_NYO_CD_WK);
				// ANK-3248-00-00 ADD END
				String chBfTvSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHGE_BF_TV_SVC_MKM_NYO_CD);
				String chBfTelSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHGE_BF_TEL_SVC_MKM_NYO_CD);
				// ANK-3248-00-00 ADD START
				String chAfNetSvcMkmNyoWork = outMap.get(CHAF_NET_SVC_MKM_NYO_CD_WK);
				// ANK-3248-00-00 ADD END

				String chBfTvSvcMkmNyoWork = outMap.get(CHGE_BF_TV_SVC_MKM_NYO_CD_WK);
				String chAfTvSvcMkmNyoWork = outMap.get(CHAF_TV_SVC_MKM_NYO_CD_WK);

				String chAfNetSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHAF_NET_SVC_MKM_NYO_CD);
				String chAfTvSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHAF_TV_SVC_MKM_NYO_CD);
				String chAfTelSvcMkmNyo = outMap.get(JBSbatFU_T_ADCHWMN.CHAF_TEL_SVC_MKM_NYO_CD);
				String tekkyoKojiKind = outMap.get(JBSbatFU_T_ADCHWMN.TEKKYO_KOJI_KIND_CD);
				String custNm = outMap.get(JBSbatFU_T_ADCHWMN.CUST_NM);
				String custKana = outMap.get(JBSbatFU_T_ADCHWMN.CUST_KANA);
				String mskmJiCustRrksTln = outMap.get(JBSbatFU_T_ADCHWMN.MSKM_JI_CUST_RRKS_TLN);
				String rrksTelno = outMap.get(JBSbatFU_T_ADCHWMN.RRKS_TELNO);
				String mlad = outMap.get(JBSbatFU_T_ADCHWMN.MLAD);
				String itnmPcd = JPCUtilCommon.hyhunPcd(outMap.get(JBSbatFU_T_ADCHWMN.ITNM_PCD));
				String itnmStateNm = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_STATE_NM);
				String itnmCityNm = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_CITY_NM);
				String itnmOaztsuNm = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_OAZTSU_NM);
				String itnmAzchoNm = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_AZCHO_NM);
				String itnmBnchigo = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_BNCHIGO);
				String itnmAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ITNM_ADRTTM));
				String itnmAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ITNM_ADRRM));
				String itensPcd = JPCUtilCommon.hyhunPcd(outMap.get(JBSbatFU_T_ADCHWMN.ITENS_PCD));
				String itensStateNm = outMap.get(JBSbatFU_T_ADCHWMN.ITENS_STATE_NM);
				String itensCityNm = outMap.get(JBSbatFU_T_ADCHWMN.ITENS_CITY_NM);
				String itensOaztsuNm = outMap.get(JBSbatFU_T_ADCHWMN.ITENS_OAZTSU_NM);
				String itensAzchoNm = outMap.get(JBSbatFU_T_ADCHWMN.ITENS_AZCHO_NM);
				String itensBnchigo = outMap.get(JBSbatFU_T_ADCHWMN.ITENS_BNCHIGO);
				String itensAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ITENS_ADRTTM));
				String itensAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ITENS_ADRRM));
				String takchoKiboYmd = outMap.get(JBSbatFU_T_ADCHWMN.TAKCHO_KIBO_YMD);
				String tkkjKiboYmd = outMap.get(JBSbatFU_T_ADCHWMN.TKKJ_KIBO_YMD);
				String chAfCableGuideMskmCnt = outMap.get(JBSbatFU_T_ADCHWMN.CHAF_CABLE_GUIDE_MSKM_CNT);
				String areaChk = outMap.get(JBSbatFU_T_ADCHWMN.AREA_CHK_CD);
				String fmtcelKeiUm = outMap.get(JBSbatFU_T_ADCHWMN.FMTCEL_KEI_UM);
				String itnmRzStcStat = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_ROZETT_STC_STAT_CD);
				String kshadChgUm = outMap.get(JBSbatFU_T_ADCHWMN.KSHAD_CHG_UM);
				String itnmKikiKeizkUseKbum = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_KIKI_KEIZK_USE_KBUM);
				String eoelecKeiUm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_KEI_UM);
				String eoelecKeiKeizkCd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_KEI_KEIZK_CD);
				String eoelecSvcKeiNo = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_SVC_KEI_NO);
				String eoelecRrksMlad = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_MLAD);
				String kkyuChtnTokutNo = outMap.get(JBSbatFU_T_ADCHWMN.KKYU_CHTN_TOKUT_NO);
				String eoelecRrksSkbtCd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_SKBT_CD);
				String eoelecRrksNm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_NM);
				String eoelecRrkskana = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_KANA);
				String eoelecRrksTelno = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_TELNO);
				String eoelecRrksTelnoSbtCd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_TELNO_SBT_CD);
				String eoelecRrksPcd = JPCUtilCommon.hyhunPcd(outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_PCD));
				String eoelecRrksStateNm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_STATE_NM);
				String eoelecRrksCityNm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_CITY_NM);
				String eoelecRrksOaztsuNm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_OAZTSU_NM);
				String eoelecRrksAzchoNm = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_AZCHO_NM);
				String eoelecRrksBnchigo = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_BNCHIGO);
				String eoelecRrksAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_ADRTTM));
				String eoelecRrksAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_RRKS_ADRRM));
				String eoelecItensUestKiboymd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_ITENS_UEST_KIBOYMD);
				String eoelecItensUestKbtmzCd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_ITENS_UEST_KBTMZ_CD);
				String eoelecItnmUseEndRsymd = outMap.get(JBSbatFU_T_ADCHWMN.EOELEC_ITNM_USE_END_RSYMD);
				String itnmTtdemlRsvUm = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSV_UM);
				String itnmTtdemlRsymd = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSYMD);
				String itnmTtdemlRsvTimezCd = outMap.get(JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSV_TIMEZ_CD);
				boolean eoelecRiyoFlg = RIYO_SURU.equals(eoelecKeiKeizkCd);
				boolean itnmTtdemlRsvUmFlg = YOTEI_ARI.equals(itnmTtdemlRsvUm);

				if (kshadChgUm != null && (kshadChgUm.startsWith(JFUStrConst.TOUTEN) || kshadChgUm.endsWith(JFUStrConst.TOUTEN)))
				{
					kshadChgUm = kshadChgUm.replace(JFUStrConst.TOUTEN, JFUStrConst.EMPTY);
				}
				String chBfTvCoursePcrsNm = outMap.get(JBSbatFU_T_ADCHWMN_STB_DTL.CHBF_TV_COURSE_PCRS_NM);
				String chAfTvCoursePcrsNm = outMap.get(JBSbatFU_T_ADCHWMN_STB_DTL.CHAF_TV_COURSE_PCRS_NM);
				String dnwachomskKibo = outMap.get(JBSbatFU_T_ADCHWMN_TLN_DTL.DNWACHOMSK_KIBO_CD);
				String hasinshaNoTchiKibo = outMap.get(JBSbatFU_T_ADCHWMN_TLN_DTL.HASINSHA_NO_TCHI_KIBO_CD);
				// ANK-3248-00-00 ADD START
				String kisnPlcAdMiFixFlg = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KISN_PLC_AD_MI_FIX_FLG));
				String mansionId = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.MANSION_ID));
				String pairId = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.PAIRID));
				String pid = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.PID));
				String catId = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.CATID));
				String tkHoshikiCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.TK_HOSHIKI_CD));
				String tkHoshikiCdWk = nullToBlank(outMap.get(TK_HOSHIKI_CD_WK));
				String svcStaKiboYmd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.SVC_STA_KIBO_YMD));
				String aticleSohusItenmDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_DIV));
				String aticleSohusItenmAdCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_AD_CD));
				String aticleSohusItenmPcd = JPCUtilCommon.hyhunPcd(nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_PCD)));
				String aticleSohusItenmStateNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_STATE_NM));
				String aticleSohusItenmCityNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_CITY_NM));
				String aticleSohusItenmOaztsuNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_OAZTSU_NM));
				String aticleSohusItenmAzchoNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_AZCHO_NM));
				String aticleSohusItenmBnchigo = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_BNCHIGO));
				String aticleSohusItenmAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_ADRTTM));
				String aticleSohusItenmAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_ADRRM));

				String aticleSohusItensDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_DIV));
				String aticleSohusItensAdCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_AD_CD));
				String aticleSohusItensPcd = JPCUtilCommon.hyhunPcd(nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_PCD)));
				String aticleSohusItensStateNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_STATE_NM));
				String aticleSohusItensCityNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_CITY_NM));
				String aticleSohusItensOaztsuNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_OAZTSU_NM));
				String aticleSohusItensAzchoNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_AZCHO_NM));
				String aticleSohusItensBnchigo = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_BNCHIGO));
				String aticleSohusItensAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_ADRTTM));
				String aticleSohusItensAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_ADRRM));

				String kikiSohusItenmDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_DIV));
				String kikiSohusItenmAdCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_AD_CD));
				String kikiSohusItenmPcd = JPCUtilCommon.hyhunPcd(nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_PCD)));
				String kikiSohusItenmStateNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_STATE_NM));
				String kikiSohusItenmCityNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_CITY_NM));
				String kikiSohusItenmOaztsuNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_OAZTSU_NM));
				String kikiSohusItenmAzchoNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_AZCHO_NM));
				String kikiSohusItenmBnchigo = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_BNCHIGO));
				String kikiSohusItenmAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_ADRTTM));
				String kikiSohusItenmAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_ADRRM));

				String kikiSohusItensDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_DIV));
				String kikiSohusItensAdCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_AD_CD));
				String kikiSohusItensPcd = JPCUtilCommon.hyhunPcd(nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_PCD)));
				String kikiSohusItensStateNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_STATE_NM));
				String kikiSohusItensCityNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_CITY_NM));
				String kikiSohusItensOaztsuNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_OAZTSU_NM));
				String kikiSohusItensAzchoNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_AZCHO_NM));
				String kikiSohusItensBnchigo = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_BNCHIGO));
				String kikiSohusItensAdrttm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_ADRTTM));
				String kikiSohusItensAdrrm = lPadZenkakuSpace(outMap.get(JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_ADRRM));

				String itensModemUseDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITENS_MODEM_USE_DIV));
				String chokzuwriMskmUm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.CHOKZUWRI_MSKM_UM));
				String chokzuwriAtKeizkMskmUm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.CHOKZUWRI_AT_KEIZK_MSKM_UM));
				String itenmTelno1 = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITENM_TELNO_1));
				String itenmTelno2 = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITENM_TELNO_2));
				String dobanitenTtdkUsrJssiUm1 = nullToBlank(outMap.get(DOBANITEN_TTDK_USR_JSSI_UM_1));
				String dobanitenTtdkUsrJssiUm2 = nullToBlank(outMap.get(DOBANITEN_TTDK_USR_JSSI_UM_2));
				String nowGuideKeiCnt = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.NOW_GUIDE_KEI_CNT));
				String svcEndKiboymd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.SVC_END_KIBO_YMD));

				String itnsEoelecPplanDiv = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITNS_EOELEC_PPLAN_DIV));
				String itnmEoelecKeiCompCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITNM_EOELEC_KEI_COMP_CD));
				String itnmEoelecKeiSbtCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ITNM_EOELEC_KEI_SBT_CD));
				String alldenkaKikiNm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ALLDENKA_KIKI_NM));
				String bmpTelnoKeiAdPcd = nullToBlank(outMap.get(BMP_TELNO_KEI_AD_PCD_1));
				String bmpTelnoKeiAd = nullToBlank(outMap.get(BMP_TELNO_KEI_AD_1));
				String bmp2TelnoKeiAdPcd = nullToBlank(outMap.get(BMP_TELNO_KEI_AD_PCD_2));
				String bmp2TelnoKeiAd = nullToBlank(outMap.get(BMP_TELNO_KEI_AD_2));

// ANK-3829-00-00 ADD START
				String mskmFinYmd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.MSKM_FIN_YMD));
// ANK-3829-00-00 ADD END
				String tknrtMusenKinoMskmUm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.TKNRT_MUSEN_KINO_MSKM_UM));				
				String mlanChkekiMskmUm = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.MLAN_CHKEKI_MSKM_UM));

				String newconstBukkenCd = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.NEWCONST_BUKKEN_CD));
				String chsinVsitKbun = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.CHSIN_VSIT_KBUM));

				String enqueteCdIcrn = nullToBlank(outMap.get(JBSbatFU_T_ADCHWMN.ENQUETE_CD_ICRN));

				// ANK-3248-00-00 ADD END
				// CASEファイル出力リスト
				ArrayList<String> adchwmnDataList = new ArrayList<String>();
				outputVal(KOKYAKU_TYPE, adchwmnDataList);
				outputVal(svcKeiNo, adchwmnDataList);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				outputVal(JYOUTAI, adchwmnDataList);
				outputVal(STATUS, adchwmnDataList);
				outputVal(JPCUtilCommon.formatDatetimeSS(webMskmUkDtm), adchwmnDataList);
				outputVal(UKETSUKE, adchwmnDataList);
				outputVal(TANTOU, adchwmnDataList);
				outputVal(QUE_NM, adchwmnDataList);
				outputVal(UKETSUKE_SBT, adchwmnDataList);
				outputVal(setAdFormDiv(chBfNetSvcMkmNyoWork, chAfNetSvcMkmNyoWork), adchwmnDataList);
				outputVal(CTGR_1, adchwmnDataList);
				outputVal(CTGR_2, adchwmnDataList);
				outputVal(CTGR_3, adchwmnDataList);
				outputVal(CTGR_4, adchwmnDataList);
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ５
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ６
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ７
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ８
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ９
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ１０
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true); // カテゴリ１１

				StringBuffer sb = new StringBuffer();
				int cnt = 0;

				// 引越し予定
// ANK-3829-00-00 MOD START 引越し予定の差異計算基準日を、運用日付から引越し申込完了日付に変更
//				String strOpeDateAgoOneMonth = JPCUtilCommon.addMonth(strOnlineOpeDate, 2);
				if (mskmFinYmd == null || mskmFinYmd.length() == 0)
				{
					mskmFinYmd = webMskmUkDtm.substring(0, 8);
				}
				String strOpeDateAgoOneMonth = JPCUtilCommon.addMonth(mskmFinYmd, 2);
// ANK-3829-00-00 MOD END
				if (!JPCUtilCommon.isFutureDate(hikkoshiRsvYmd, strOpeDateAgoOneMonth, METHOD_FLG_ISFUTUREDATE))
				{
					sb = outputSubVal(TWO_MONTH_LESS, RENBAN_1, sb, ++cnt);
				}
				else
				{
					sb = outputSubVal(TWO_MONTH_GREATER, RENBAN_1, sb, ++cnt);
				}
				// 氏名
				sb = outputSubVal(custNm, RENBAN_2, sb, ++cnt);
				// 氏名(カナ)
				sb = outputSubVal(custKana, RENBAN_3, sb, ++cnt);
				// 電話番号
				sb = outputSubVal(mskmJiCustRrksTln, RENBAN_4, sb, ++cnt);

				// 現在の住所
				StringBuffer addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(itnmPcd).append(JFUStrConst.HALF_SPACE).append(itnmStateNm).append(itnmCityNm).append(itnmOaztsuNm).append(itnmAzchoNm).append(itnmBnchigo)
								.append(itnmAdrttm).append(itnmAdrrm).toString().trim(), RENBAN_5, sb, ++cnt);

				// 引越し後の住所
				addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(itensPcd).append(JFUStrConst.HALF_SPACE).append(itensStateNm).append(itensCityNm).append(itensOaztsuNm).append(itensAzchoNm).append(itensBnchigo)
								.append(itensAdrttm).append(itensAdrrm).toString().trim(), RENBAN_6, sb, ++cnt);

				// 住所番地の決定状況
				sb = outputSubVal(kisnPlcAdMiFixFlg, RENBAN_7, sb, ++cnt);

				// お引越し予定日
				sb = chgYmd(hikkoshiRsvYmd, RENBAN_8, sb, ++cnt);
				// MID
				if (JFUBatCommon.isNotNullCheck(pairId))
				{
					// MID pairId
					sb = outputPairIdVal(mansionId, RENBAN_9, pairId, sb, ++cnt);
				}
				else
				{
					// MID 
					sb = outputSubVal(mansionId, RENBAN_9, sb, ++cnt);
				}

				// PID
				sb = outputSubVal(pid, RENBAN_10, sb, ++cnt);

				// catId
				sb = outputSubVal(catId, RENBAN_11, sb, ++cnt);

				// 提供方式コード
				boolean manmosKojiAri = false;
				if (JFUStrConst.CD00590_008.equals(tkHoshikiCdWk) && JFUStrConst.CD01438_58.equals(chAfNetSvcMkmNyoWork))
				{
					sb = outputSubVal(CONNECT_HSK_HHS, RENBAN_12, sb, ++cnt);
				}
				else if (JFUStrConst.CD00590_008.equals(tkHoshikiCdWk) && 
						(JFUStrConst.CD01438_59.equals(chAfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5A.equals(chAfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5B.equals(chAfNetSvcMkmNyoWork)))
				{
					sb = outputSubVal(CONNECT_HSK_HHS_CONSNT, RENBAN_12, sb, ++cnt);
				}
				else if (JFUStrConst.CD00590_008.equals(tkHoshikiCdWk) && 
						(JFUStrConst.CD01438_5C.equals(chAfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5D.equals(chAfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5E.equals(chAfNetSvcMkmNyoWork) 
								|| JFUStrConst.CD01438_5F.equals(chAfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5G.equals(chAfNetSvcMkmNyoWork)))
				{
					if (JFUBatCommon.isNotNullCheck(svcStaKiboYmd)) {
						// サービス開始希望日：入力あり(工事無)
						sb = outputSubVal(CONNECT_HSK_KOJI_NASHI, RENBAN_12, sb, ++cnt);
					}
					else
					{
						// サービス開始希望日：入力なし(工事有)
						sb = outputSubVal(CONNECT_HSK_KOJI_ARI, RENBAN_12, sb, ++cnt);
						manmosKojiAri = true;
					}
				}
				else
				{
					sb = outputSubVal(tkHoshikiCd, RENBAN_12, sb, ++cnt);
				}

				// 連絡先電話番号
				sb = outputSubVal(rrksTelno, RENBAN_13, sb, ++cnt);
				// メールアドレス
				sb = outputSubVal(mlad, RENBAN_14, sb, ++cnt);

				// お引越し先の建物 //
				if (newconstBukkenCd.equals(JFUStrConst.S_ZERO))
				{
					sb = outputSubVal(TTMN_MOD, RENBAN_62, sb, ++cnt);
				}
				else if (newconstBukkenCd.equals(JFUStrConst.S_ONE))
				{
					sb = outputSubVal(TTMN_NEW, RENBAN_62, sb, ++cnt);
				}
				else
				{
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_62, sb, ++cnt);
				}
				// 引込の調査方法 //
				if (chsinVsitKbun.equals(JFUStrConst.S_ZERO))
				{
					sb = outputSubVal(CHOSA_ENKAKU, RENBAN_63, sb, ++cnt);
				}
				else if (chsinVsitKbun.equals(JFUStrConst.S_ONE))
				{
					sb = outputSubVal(CHOSA_TAKUNAI, RENBAN_63, sb, ++cnt);
				}
				else
				{
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_63, sb, ++cnt);
				}

				// サービス開始希望日（イーサ）
				if (manmosKojiAri) {
					// MANMOS管理物件（工事有）時の出力
					sb = outputSubVal(RK_NON_OUTPUT, RENBAN_15, sb, ++cnt);
					
				}
				else
				{
					sb = chgYmd(svcStaKiboYmd, RENBAN_15, sb, ++cnt);
				}

				// 引越し先住所に同時変更する住所
				sb = outputSubVal(kshadChgUm, RENBAN_16, sb, ++cnt);

				// お引越し手続きに関する書面の送付先（引越し前）
				addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(aticleSohusItenmDiv).append(JFUStrConst.HALF_SPACE).append(aticleSohusItenmPcd).append(JFUStrConst.HALF_SPACE).append(aticleSohusItenmStateNm)
								.append(aticleSohusItenmCityNm).append(aticleSohusItenmOaztsuNm).append(aticleSohusItenmAzchoNm).append(aticleSohusItenmBnchigo).append(aticleSohusItenmAdrttm).append(
										aticleSohusItenmAdrrm).toString().trim(), RENBAN_17, sb, ++cnt);

				// お引越し手続きに関する書面の送付先（引越し後）
				addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(aticleSohusItensDiv).append(JFUStrConst.HALF_SPACE).append(aticleSohusItensPcd).append(JFUStrConst.HALF_SPACE).append(aticleSohusItensStateNm)
								.append(aticleSohusItensCityNm).append(aticleSohusItensOaztsuNm).append(aticleSohusItensAzchoNm).append(aticleSohusItensBnchigo).append(aticleSohusItensAdrttm).append(
										aticleSohusItensAdrrm).toString().trim(), RENBAN_18, sb, ++cnt);

				// 機器の送付先（引越し前）
				addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(kikiSohusItenmDiv).append(JFUStrConst.HALF_SPACE).append(kikiSohusItenmPcd).append(JFUStrConst.HALF_SPACE).append(kikiSohusItenmStateNm).append(
								kikiSohusItenmCityNm).append(kikiSohusItenmOaztsuNm).append(kikiSohusItenmAzchoNm).append(kikiSohusItenmBnchigo).append(kikiSohusItenmAdrttm).append(
								kikiSohusItenmAdrrm).toString().trim(), RENBAN_19, sb, ++cnt);

				// 機器の送付先（引越し後）
				addressSb = new StringBuffer();
				sb =
						outputSubVal(addressSb.append(kikiSohusItensDiv).append(JFUStrConst.HALF_SPACE).append(kikiSohusItensPcd).append(JFUStrConst.HALF_SPACE).append(kikiSohusItensStateNm).append(
								kikiSohusItensCityNm).append(kikiSohusItensOaztsuNm).append(kikiSohusItensAzchoNm).append(kikiSohusItensBnchigo).append(kikiSohusItensAdrttm).append(
								kikiSohusItensAdrrm).toString().trim(), RENBAN_20, sb, ++cnt);

				//[−−−−−−−−−−]
				sb = outputSubVal(HAIHUN, sb, ++cnt);

				// 現在のサービス(ネット)
				sb = outputSubVal(getNetTypeName(getHkksMtNetTypeKbn(chBfNetSvcMkmNyoWork)) + JFUStrConst.KIGOU_KAKKO_STA + chBfNetSvcMkmNyo + JFUStrConst.KIGOU_KAKKO_END, RENBAN_21, sb, ++cnt);

				// 引越し後のサービス(ネット)
				sb = outputSubVal(getNetTypeName(getHkksMtNetTypeKbn(chAfNetSvcMkmNyoWork)) + JFUStrConst.KIGOU_KAKKO_STA + chAfNetSvcMkmNyo + JFUStrConst.KIGOU_KAKKO_END, RENBAN_22, sb, ++cnt);

				// お引越し後のモデム利用
				sb = outputSubVal(itensModemUseDiv, RENBAN_23, sb, ++cnt);

				// 移転元機器継続利用
				sb = outputSubVal(itnmKikiKeizkUseKbum, RENBAN_24, sb, ++cnt);

				// お引越し後の無線ルーター機能利用（無料マンション） 
				sb = outputSubVal(tknrtMusenKinoMskmUm, RENBAN_58, sb, ++cnt);

				// お引越し後のeo無線LAN中継機利用（無料マンション） 
				sb = outputSubVal(mlanChkekiMskmUm, RENBAN_59, sb, ++cnt);

				// 長割（ホーム／メゾン）
				sb = outputSubVal(chokzuwriMskmUm, RENBAN_25, sb, ++cnt);

				// 長割自動継続（ホーム／メゾン）
				sb = outputSubVal(chokzuwriAtKeizkMskmUm, RENBAN_26, sb, ++cnt);

				// 現在のサービス(eo光電話)
				sb = outputSubVal(chBfTelSvcMkmNyo, RENBAN_27, sb, ++cnt);

				// 現在ご利用中の電話番号（1番号目）
				sb = outputSubVal(itenmTelno1, RENBAN_28, sb, ++cnt);

				// 現在ご利用中の電話番号（2番号目）
				sb = outputSubVal(itenmTelno2, RENBAN_29, sb, ++cnt);

				// 引越し後のサービス(eo光電話)
				sb = outputSubVal(chAfTelSvcMkmNyo, RENBAN_30, sb, ++cnt);

				// NTT番号移転手続き
				StringBuffer dobanitenTtdkUsrJssiUm = new StringBuffer();
				if (JFUBatCommon.isNotNullCheck(dobanitenTtdkUsrJssiUm1))
				{
					if (JFUStrConst.CD00002_1.equals(dobanitenTtdkUsrJssiUm1))
					{
						dobanitenTtdkUsrJssiUm.append("1番号（お客さまにて手続きを実施）");
					}
					else
					{
						dobanitenTtdkUsrJssiUm.append("1番号（お客さまにて手続きを実施しない）");
					}
				}
				if (JFUBatCommon.isNotNullCheck(dobanitenTtdkUsrJssiUm2))
				{
					if (JFUStrConst.CD00002_1.equals(dobanitenTtdkUsrJssiUm2))
					{
						dobanitenTtdkUsrJssiUm.append(JFUStrConst.HALF_SPACE).append("2番号（お客さまにて手続きを実施）");
					}
					else
					{
						dobanitenTtdkUsrJssiUm.append(JFUStrConst.HALF_SPACE).append("2番号（お客さまにて手続きを実施しない）");
					}
				}

				sb = outputSubVal(dobanitenTtdkUsrJssiUm.toString().trim(), RENBAN_31, sb, ++cnt);

				// 現在ご利用中の電話サービスの郵便番号（1番号目）
				sb = outputSubVal(bmpTelnoKeiAdPcd, RENBAN_32, sb, ++cnt);
				// 現在ご利用中の電話サービスの設置場所住所（1番号目）
				sb = outputSubVal(bmpTelnoKeiAd, RENBAN_33, sb, ++cnt);

				// 現在ご利用中の電話サービスの郵便番号（2番号目）
				sb = outputSubVal(bmp2TelnoKeiAdPcd, RENBAN_34, sb, ++cnt);
				// 現在ご利用中の電話サービスの設置場所住所（2番号目）
				sb = outputSubVal(bmp2TelnoKeiAd, RENBAN_35, sb, ++cnt);

				// 発信者番号通知
				sb = outputSubVal(hasinshaNoTchiKibo, RENBAN_36, sb, ++cnt);

				// 現在のサービス(eo光テレビ)
				sb = outputSubVal(chBfTvSvcMkmNyo, RENBAN_37, sb, ++cnt);
				// 現在のSTBコース
				sb = outputSubVal(chBfTvCoursePcrsNm, RENBAN_38, sb, ++cnt);

				// 現在のガイド誌の契約冊数
				if (JFUBatCommon.isNotNullCheck(nowGuideKeiCnt))
				{
					sb = outputSubVal(nowGuideKeiCnt + SATU, RENBAN_39, sb, ++cnt);
				}
				else
				{
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_39, sb, ++cnt);
				}

				// 引越し後のサービス(eo光テレビ)
				sb = outputSubVal(chAfTvSvcMkmNyo, RENBAN_40, sb, ++cnt);
				// 引越し後のSTBコース
				sb = outputSubVal(chAfTvCoursePcrsNm, RENBAN_41, sb, ++cnt);

				// 現在のご利用場所のサービス終了希望日
				sb = chgYmd(svcEndKiboymd, RENBAN_42, sb, ++cnt);

				// 現住所撤去工事希望日
				if (TKKJ_KIBO_DEF.equals(tkkjKiboYmd))
				{
					String yyyy = JPCUtilCommon.toYearFromYmd(tkkjKiboYmd);
					String mm = JPCUtilCommon.toMonthFromYmd(tkkjKiboYmd);
					String dd = JPCUtilCommon.toDayFromYmd(tkkjKiboYmd);
					StringBuffer ymdSb = new StringBuffer();
					ymdSb.append(yyyy).append(JPN_FT_YEAR).append(mm).append(JPN_FT_MONTH).append(dd).append(JPN_FT_DAY);
					sb = outputSubVal(ymdSb.append("　　◆指示があるまで撤去工事アポ保留（住変先開通後に撤去工事希望）").toString().trim(), RENBAN_43, sb, ++cnt);
				}
				else if ("設置済".equals(itnmRzStcStat) && JFUStrConst.CD01440_01.equals(chBfTvSvcMkmNyoWork))
				{
					// 「転居元がローゼット設置済」かつ「テレビ申込なし」
					if (!"3".equals(getHkksMtNetTypeKbn(chBfNetSvcMkmNyoWork)))
					{
						// マンション以外：ローゼット設置済の場合
						String yyyy = JPCUtilCommon.toYearFromYmd(tkkjKiboYmd);
						String mm = JPCUtilCommon.toMonthFromYmd(tkkjKiboYmd);
						String dd = JPCUtilCommon.toDayFromYmd(tkkjKiboYmd);
						StringBuffer ymdSb = new StringBuffer();
						ymdSb.append(yyyy).append(JPN_FT_YEAR).append(mm).append(JPN_FT_MONTH).append(dd).append(JPN_FT_DAY);
						sb = outputSubVal(ymdSb.append("（転居元利用終了日）").toString().trim(), RENBAN_43, sb, ++cnt);
					}
					else
					{
						//マンションの場合
						sb = outputSubVal("", RENBAN_43, sb, ++cnt);
					}
				}
				else if ((JFUStrConst.CD01438_5A.equals(chBfNetSvcMkmNyoWork) || JFUStrConst.CD01438_59.equals(chBfNetSvcMkmNyoWork) || JFUStrConst.CD01438_5B.equals(chBfNetSvcMkmNyoWork))
						&& JFUStrConst.CD01440_01.equals(chBfTvSvcMkmNyoWork))
				{
					sb = outputSubVal("ローゼット化のため撤去工事なし", RENBAN_43, sb, ++cnt);
				}
				else
				{
					sb = chgYmd(tkkjKiboYmd, RENBAN_43, sb, ++cnt);
				}

				// 撤去工事の種類
				sb = outputSubVal(tekkyoKojiKind, RENBAN_44, sb, ++cnt);

				// ================================================
				// 撤去費用
				// ------------------------------------------------
				// ●転居元タイプ区分（引越し元のeo光ネット契約タイプを取得）
				// ------------------------------------------------
				//  ホーム    ：「1」
				//  メゾン    ：「2」
				//  マンション：「3」
				//  シンプルプラン：「4」
				String hkksMtNetTypeKbn = getHkksMtNetTypeKbn(chBfNetSvcMkmNyoWork);

				// ●テレビ契約区分
				//   なし        ：「1」
				//   あり（継続）：「2」
				//   あり（解約）：「3」
				String hkksMtTvkeiyakuKbn = getTvKeiyakuJokyoKbn(chBfTvSvcMkmNyoWork, chAfTvSvcMkmNyoWork);

				// ●撤去方法区分
				//   残置撤去：「1」
				//   全撤去  ：「2」
				//   対象外  ：「3」

				String tkkyoWayKbn = null;
				if ("1".equals(hkksMtNetTypeKbn) || "4".equals(hkksMtNetTypeKbn))
				{
					// ホーム

					if ("残置".equals(tekkyoKojiKind))
					{
						// 残置撤去の場合
						tkkyoWayKbn = "1";
					}
					else if ("全".equals(tekkyoKojiKind))
					{
						// 全撤去の場合
						tkkyoWayKbn = "2";
					}
					else
					{
						// 空白の場合（残置）
						tkkyoWayKbn = "1";

					}
				}
				else if ("2".equals(hkksMtNetTypeKbn))
				{
					// メゾン

					// 残置撤去の場合
					tkkyoWayKbn = "1";
				}
				else
				{
					// マンション

					// 残置撤去の場合
					tkkyoWayKbn = "3";
				}
				sb = outputSubVal(tekkyoHiyouMap.get(hkksMtNetTypeKbn + hkksMtTvkeiyakuKbn + tkkyoWayKbn), RENBAN_57, sb, ++cnt);
				// ================================================

				// フェムトセル契約
				sb = outputSubVal(fmtcelKeiUm, RENBAN_45, sb, ++cnt);

				// 引越し元のローゼット設置状態
				sb = outputSubVal(itnmRzStcStat, RENBAN_60, sb, ++cnt);

				//[−−−−−−−−−−]
				sb = outputSubVal(HAIHUN, sb, ++cnt);

				// 引越し後のサービス(eo電気)
				if (JFUStrConst.CD00002_1.equals(eoelecKeiUm))
				{
					if (eoelecRiyoFlg)
					{
						sb = outputSubVal("引越し元あり→引越し先で利用する（住変）", RENBAN_46, sb, ++cnt);
					}
					else
					{
						sb = outputSubVal("引越し元あり→引越し先で利用しない（解約）", RENBAN_46, sb, ++cnt);
					}
				}
				else
				{
					if (eoelecRiyoFlg)
					{
						sb = outputSubVal("引越し元なし→引越し先で利用する（追加）", RENBAN_46, sb, ++cnt);
					}
					else
					{
						sb = outputSubVal("引越し元なし→引越し先で利用しない", RENBAN_46, sb, ++cnt);
					}
				}

				// 引越し元のeo電気のお客さまID
				sb = outputSubVal(eoelecSvcKeiNo, RENBAN_47, sb, ++cnt);

				if (eoelecSvcKeiNo != null && !JFUStrConst.EMPTY.equals(eoelecSvcKeiNo))
				{
					// 引越し元の同一利用場所のeo光ネットのお客さまID
					sb = outputSubVal(svcKeiNo, RENBAN_48, sb, ++cnt);
				}
				else
				{
					// 引越し元の同一利用場所のeo光ネットのお客さまID
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_48, sb, ++cnt);
				}

				// 引越し元のeo電気のご利用終了予定日
				sb = chgYmd(eoelecItnmUseEndRsymd, RENBAN_51, sb, ++cnt);
				// 引越し元のeo電気の建物取り壊し予定有無
				sb = outputSubVal(itnmTtdemlRsvUm, RENBAN_52, sb, ++cnt);

				// お引越し元建物の取り壊し予定日
				if (itnmTtdemlRsvUmFlg)
				{
					// お引越し元建物の取り壊し予定有り
					StringBuffer dateStr = new StringBuffer();

					// 引越し元のeo電気の建物の取り壊し予定日
					sb =
							outputSubVal(dateStr.append(JFUBatCommon.toFormatDate(itnmTtdemlRsymd, DATE_FORMAT_YYYYMMDD, DATE_FORMAT_NENGAPPI)).append(JFUStrConst.HALF_SPACE).append(
									JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(itnmTtdemlRsvTimezCd).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).toString().trim(), RENBAN_53, sb, ++cnt);
				}
				else
				{
					// 引越し元のeo電気の建物の取り壊し予定日
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_53, sb, ++cnt);
				}

				if (eoelecRiyoFlg)
				{
					// 引越し先のeo電気の供給地点特定番号
					sb = outputSubVal(kkyuChtnTokutNo, RENBAN_49, sb, ++cnt);
					// 引越し先のeo電気のご利用開始希望日
					StringBuffer dateStr = new StringBuffer();
					sb =
							outputSubVal(dateStr.append(JFUBatCommon.toFormatDate(eoelecItensUestKiboymd, DATE_FORMAT_YYYYMMDD, DATE_FORMAT_NENGAPPI)).append(JFUStrConst.HALF_SPACE).append(
									JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(eoelecItensUestKbtmzCd).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).toString().trim(), RENBAN_50, sb, ++cnt);
				}
				else
				{
					// 引越し先のeo電気の供給地点特定番号
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_49, sb, ++cnt);
					// 引越し先のeo電気のご利用開始希望日
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_50, sb, ++cnt);
				}

				// eo電気料金プラン
				sb = outputSubVal(itnsEoelecPplanDiv, RENBAN_54, sb, ++cnt);
				// 引越し先の電気のご契約先
				sb = outputSubVal(itnmEoelecKeiCompCd, RENBAN_55, sb, ++cnt);
				// 引越し先の電気のご契約種別
				sb = outputSubVal(itnmEoelecKeiSbtCd, RENBAN_56, sb, ++cnt);
				// オール電化機器
				sb = outputSubVal(alldenkaKikiNm, RENBAN_61, sb, ++cnt);

				// 認知経路アンケート
				String[] enqCdList = enqueteCdIcrn.split(JFUStrConst.COMMA);
				if (enqCdList.length == 0)
				{
					sb = outputSubVal(JFUStrConst.EMPTY, RENBAN_64, sb, ++cnt);
				}
				else
				{
					String cdDivNm = JFUStrConst.EMPTY;
					for (int i = 0; i < enqCdList.length; i++)
					{
						if (cdDivNm.isEmpty())
						{
							cdDivNm = cdDivNmMap.get(enqCdList[i]);
						}
						else
						{
							cdDivNm = cdDivNm + JFUStrConst.COMMA + cdDivNmMap.get(enqCdList[i]);
						}
					}
					sb = outputSubVal(cdDivNm, RENBAN_64, sb, ++cnt);
				}

				// 出力文字列作成(問合せ履歴)
				outputVal(sb.toString(), adchwmnDataList);

				// 問合せ客ID
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				// eoID
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				// 申込書番号
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				// エスカレーション日時
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);
				// コールバック時間指定タイプ
				outputVal(JFUStrConst.EMPTY, adchwmnDataList, true);

				// CASECSVファイルへ出力する。
				JCCBatCommon.printBusinessFileUtil(caseCvsFileObj, adchwmnDataList);
			}

			// CASE件数ファイルを生成する。
			caseCntFileObj = JCCBatCommon.createBusinessFileUtil(caseCntFile, JFUStrConst.SJIS, JFUStrConst.RETURN_CODE, JFUStrConst.EMPTY);
			super.logPrint.printDebugLog(strJobid + ":CASE件数ファイル名:" + caseCntFile);

			// CASE件数ファイルへ出力する。
			JCCBatCommon.printBusinessFileUtil(caseCntFileObj, String.valueOf(adchwmnInfoMapList.size()));

			// ======= ▼▼▼ 抽出対象データに対して対応履歴連携年月日、対応履歴連携済フラグを更新を行う。 ▼▼▼ =======

			Iterator<String> adchwmnInfoKeyIt = adchwmnInfoMapList.keySet().iterator();
			while (adchwmnInfoKeyIt.hasNext())
			{
				String adchwmnNo = adchwmnInfoKeyIt.next();

				super.logPrint.printDebugLog(strJobid + ":住所変更Web申込内容の対応履歴連携年月日、対応履歴連携済フラグを更新する。");
				super.logPrint.printDebugLog(strJobid + ":オンライン運用日付:" + strOnlineOpeDate);
				super.logPrint.printDebugLog(strJobid + ":住所変更Ｗｅｂ申込内容番号:" + adchwmnNo);

				// 住所変更Ｗｅｂ申込内容
				JBSbatCommonDBInterface updAdchwmnInfo = new JBSbatCommonDBInterface();
				updAdchwmnInfo.setValue(strOnlineOpeDate); // オンライン運用日付
				updAdchwmnInfo.setValue(adchwmnNo); // 住所変更Ｗｅｂ申込内容番号
				executeADCHWMN_FU_UPDATE_001(updAdchwmnInfo.getList().toArray());
			}

			// CASEフラグファイルを生成する。
			caseFlgFileObj = JCCBatCommon.createBusinessFileUtil(caseFlgFile, JFUStrConst.SJIS, JFUStrConst.EMPTY, JFUStrConst.EMPTY);
			super.logPrint.printDebugLog(strJobid + ":CASEフラグファイル名:" + caseFlgFile);
		}
		catch (Exception e)
		{

			super.logPrint.printDebugLog(strJobid + ":例外発生の為、生成ファイルのクローズ処理を行う。");

			// 生成ファイルのクローズ処理
			if (null != caseCvsFileObj)
			{
				JCCBatCommon.closeBusinessFileUtil(caseCvsFileObj);
			}
			if (null != caseCntFileObj)
			{
				JCCBatCommon.closeBusinessFileUtil(caseCntFileObj);
			}
			if (null != caseFlgFileObj)
			{
				JCCBatCommon.closeBusinessFileUtil(caseFlgFileObj);
			}

			super.logPrint.printDebugLog(strJobid + ":例外発生の為、更新データがある場合はロールバックを行う。");

			throw e;
		}

		if (null != caseCvsFileObj)
		{
			JCCBatCommon.closeBusinessFileUtil(caseCvsFileObj);
		}
		if (null != caseCntFileObj)
		{
			JCCBatCommon.closeBusinessFileUtil(caseCntFileObj);
		}
		if (null != caseFlgFileObj)
		{
			JCCBatCommon.closeBusinessFileUtil(caseFlgFileObj);
		}

		return null;

		/** ▲▲▲▲▲▲業務サービスの主処理を記述してください。▲▲▲▲▲▲ */
	}

	/**
	 * 業務サービス終了処理です。
	 *
	 * @throws Exception
	 */
	@Override
	public void terminal() throws Exception
	{
		/** ▼▼▼▼▼▼業務サービスの終了処理を記述してください。▼▼▼▼▼▼ */
		/** ▼▼▼▼▼▼ツールから生成した終了処理のソースです 開始▼▼▼▼▼▼ */
		// DBアクセスクラスをクローズします
		db_FU_T_ADCHWMN.close();
		db_ZM_M_CD_NM_KANRI.close();
		/** ▲▲▲▲▲▲ツールから生成した終了処理のソースです 終了▲▲▲▲▲▲ */
		/** ▲▲▲▲▲▲業務サービスの終了処理を記述してください。▲▲▲▲▲▲ */
	}

	/** ▼▼▼▼▼▼ツールから生成したメソッドです 開始▼▼▼▼▼▼ */

	/**
	 * SQLKEY(FU_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 *
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	オンライン運用日付
	 *		 	オンライン運用日付
	 *		 	オンライン運用日付
	 *		 	オンライン運用日付
	 * </pre>
	 * <p>
	 *
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeADCHWMN_FU_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();

		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		// ANK-3248-00-00 ADD START
		paramList.setValue(param[0].toString());
		// ANK-3248-00-00 ADD END
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		paramList.setValue(param[0].toString());
		// DBアクセスを実行します
		db_FU_T_ADCHWMN.selectBySqlDefine(paramList, FU_T_ADCHWMN_FU_SELECT_001);
	}

	/**
	 * SQLKEY(FU_UPDATE_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 *
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	オンライン運用日付
	 *		 	住所変更Web申込内容番号
	 * </pre>
	 * <p>
	 *
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeADCHWMN_FU_UPDATE_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());
		paramList.setValue(param[1].toString());

		// DBアクセスを実行します
		db_FU_T_ADCHWMN.executeBySqlDefine(paramList, FU_T_ADCHWMN_FU_UPDATE_001);
	}

	/**
	 * SQLKEY(FU_SELECT_001)でDBアクセスを行います。<br>
	 * <p>
	 * <b>処理フロー</b><br>
	 * <pre>
	 * 1.引数でバイント変数を設定します。<br>
	 *
	 * 2.DBアクセスを実行します。<br>
	 *
	 * 3.メソッドの呼び出し方です。<br>
	 *		引数:
	 *		param:順にバイント変数の値をparam配列に入れます。バイント変数は以下に説明します。
	 *		 	コード種別コード
	 * </pre>
	 * <p>
	 * @param param バイント変数の値配列。
	 * @throws Exception 業務サービス内で発生した例外全般。
	 */
	private void executeZM_M_CD_NM_KANRI_FU_SELECT_001(Object[] param) throws Exception
	{
		// バイント変数のリストを生成します
		JBSbatCommonDBInterface paramList = new JBSbatCommonDBInterface();
		paramList.setValue(param[0].toString());

		// DBアクセスを実行します
		db_ZM_M_CD_NM_KANRI.selectBySqlDefine(paramList, ZM_M_CD_NM_KANRI_FU_SELECT_001);
	}

	/** ▲▲▲▲▲▲ツールから生成したメソッドです 終了▲▲▲▲▲▲ */

	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param list 出力用文字列リスト
	 * @return 出力用文字列リスト
	 */
	private static List<String> outputVal(String value, List<String> list)
	{
		return outputVal(value, list, false);
	}

	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param list 出力用文字列リスト
	 * @param isDispEmpty true:値が存在しない場合に""を出力する。false：出力しない。
	 * @return 出力用文字列リスト
	 */
	private static List<String> outputVal(String value, List<String> list, boolean isDispEmpty)
	{
		if (JFUBatCommon.isNotNullCheck(value) || isDispEmpty)
		{
			list.add(JFUStrConst.S_DUBLLEQ + value + JFUStrConst.S_DUBLLEQ);
		}
		else
		{
			list.add(JFUStrConst.EMPTY);
		}
		return list;
	}

	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputSubVal(String value, StringBuffer sb, int i)
	{
		return outputSubVal(value, sb, i, true);
	}

	/**
	 *
	 * 出力用文字列の作成処理です。
	 *
	 * @param args 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @param flg 　最終の結合対象文字列：false、それ以外：true
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputSubVal(String args, StringBuffer sb, int i, boolean flg)
	{

		String value = args;
		if (!JFUBatCommon.isNotNullCheck(value))
		{
			value = JFUStrConst.EMPTY;
		}
		sb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(JPCUtilCommon.fillZero(String.valueOf(i), 2, false)).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF)
				.append(value.trim()).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
		return flg ? sb.append(JFUStrConst.RETURN_CODE) : sb;
	}

	// ANK-3248-00-00 ADD START
	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param renban 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputSubVal(String value, String renban, StringBuffer sb, int i)
	{
		return outputSubVal2(value, renban, sb, i, true);
	}

	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param renban 連番
	 * @param pairId pairId
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputPairIdVal(String value, String renban, String pairId, StringBuffer sb, int i)
	{
		return outputPairVal(value, renban, pairId, sb, i, true);
	}

	/**
	 *
	 * 出力用文字列の作成処理です。
	 *
	 * @param args 対象文字列
	 * @param renban 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @param flg 　最終の結合対象文字列：false、それ以外：true
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputSubVal2(String args, String renban, StringBuffer sb, int i, boolean flg)
	{

		String value = args;
		if (!JFUBatCommon.isNotNullCheck(value))
		{
			value = JFUStrConst.EMPTY;
		}
		sb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(JPCUtilCommon.fillZero(String.valueOf(i), 2, false)).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF)
				.append(renban.trim()).append("：").append(value.trim()).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF);
		return flg ? sb.append(JFUStrConst.RETURN_CODE) : sb;
	}

	/**
	 *
	 * 出力用文字列の作成処理です。
	 *
	 * @param args 対象文字列
	 * @param renban 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @param flg 　最終の結合対象文字列：false、それ以外：true
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputPairVal(String args, String renban, String pairId, StringBuffer sb, int i, boolean flg)
	{

		String value = args;
		if (!JFUBatCommon.isNotNullCheck(value))
		{
			value = JFUStrConst.EMPTY;
		}
		if (!JFUBatCommon.isNotNullCheck(pairId))
		{
			pairId = JFUStrConst.EMPTY;
		}
		sb.append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF).append(JPCUtilCommon.fillZero(String.valueOf(i), 2, false)).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).append(JFUStrConst.KIGOU_B_KAKKO_STA_HALF)
				.append(renban.trim()).append("：").append(value.trim()).append(JFUStrConst.KIGOU_B_KAKKO_END_HALF).append(JFUStrConst.KIGOU_KAKKO_STA).append(pairId.trim()).append(
						JFUStrConst.KIGOU_KAKKO_END);
		return flg ? sb.append(JFUStrConst.RETURN_CODE) : sb;
	}

	/**
	 * null又は空文字の場合、空を返却する
	 * 
	 * @param str 検査対象文字列
	 * @return true:null、又は空文字／false:左記以外
	 */
	public static String nullToBlank(String str)
	{
		if (str == null || JFUStrConst.EMPTY.equals(str))
		{
			return JFUStrConst.EMPTY;
		}
		return str;
	}

	// ANK-3248-00-00 ADD END

	public static String lPadZenkakuSpace(String str)
	{
		if (str == null || JFUStrConst.EMPTY.equals(str))
		{
			return JFUStrConst.EMPTY;
		}
		return "　" + str;
	}

	/**
	 * 出力用文字列の作成処理です。
	 *
	 * @param value 対象文字列
	 * @param sb 対象文字列の結合情報
	 * @param i 
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer outputSubLastVal(String value, StringBuffer sb, int i)
	{
		return outputSubVal(value, sb, i, false);
	}

	/**
	 * DB取得データの空文字変換処理です。
	 *
	 * @param dbIf ＤＢアクセス時にバインド変数に値を設定するインターフェース
	 * @param value 対象文字列
	 * @return 置換文字列
	 * @throws Exception 例外
	 */
	private static String getString(JBSbatCommonDBInterface dbIf, String value) throws Exception
	{
		String val = dbIf.getString(value);
		return val == null ? JFUStrConst.EMPTY : val;
	}

	/**
	 * yyyy年MM月dd日への変換処理です。
	 *
	 * @param ymd 日付文字列
	 * @param argsSb 対象文字列の結合情報
	 * @param i 
	 * @return 対象文字列の結合情報
	 */
	private static StringBuffer chgYmd(String ymd, String renban, StringBuffer argsSb, int i)
	{
		StringBuffer sb = argsSb;
		if (JFUBatCommon.isNotNullCheck(ymd))
		{
			String yyyy = JPCUtilCommon.toYearFromYmd(ymd);
			String mm = JPCUtilCommon.toMonthFromYmd(ymd);
			String dd = JPCUtilCommon.toDayFromYmd(ymd);
			StringBuffer ymdSb = new StringBuffer();
			ymdSb.append(yyyy).append(JPN_FT_YEAR).append(mm).append(JPN_FT_MONTH).append(dd).append(JPN_FT_DAY);
			sb = outputSubVal(ymdSb.toString(), renban, sb, i);
		}
		else
		{
			sb = outputSubVal(null, renban, sb, i);
		}
		return sb;
	}

	/**
	 * 住所変更Ｗｅｂ申込内容Mapへの格納処理です。
	 *
	 * @param map 住所変更Ｗｅｂ申込内容Map
	 * @param key 住所変更Ｗｅｂ申込内容格納Key
	 * @param dbIf ＤＢアクセス時にバインド変数に値を設定するインターフェース
	 * @return 住所変更Ｗｅｂ申込内容Map
	 * @throws Exception
	 */
	private static HashMap<String, String> put(HashMap<String, String> map, String key, JBSbatCommonDBInterface dbIf) throws Exception
	{
		map.put(key, getString(dbIf, key));
		return map;
	}

	/**
	 * 新しい住所変更Ｗｅｂ申込内容Mapの生成処理です。
	 *
	 * @param dbIf ＤＢアクセス時にバインド変数に値を設定するインターフェース
	 * @return 住所変更Ｗｅｂ申込内容Map
	 * @throws Exception
	 */
	private static HashMap<String, String> getNewAdchwmnInfoMap(JBSbatCommonDBInterface dbIf) throws Exception
	{
		String[] keyArray =
				{ JBSbatFUIFI003001.SVC_KEI_NO, JBSbatFU_T_ADCHWMN.WEB_MSKM_UK_DTM, JBSbatFU_T_ADCHWMN.HIKKOSHI_RSV_YMD, JBSbatFU_T_ADCHWMN.CHGE_BF_NET_SVC_MKM_NYO_CD,
						JBSbatFU_T_ADCHWMN.CHGE_BF_TV_SVC_MKM_NYO_CD, JBSbatFU_T_ADCHWMN.CHGE_BF_TEL_SVC_MKM_NYO_CD, JBSbatFU_T_ADCHWMN.CHAF_NET_SVC_MKM_NYO_CD,
						JBSbatFU_T_ADCHWMN.CHAF_TV_SVC_MKM_NYO_CD, JBSbatFU_T_ADCHWMN.CHAF_TEL_SVC_MKM_NYO_CD, JBSbatFU_T_ADCHWMN.TEKKYO_KOJI_KIND_CD, JBSbatFU_T_ADCHWMN.CUST_NM,
						JBSbatFU_T_ADCHWMN.CUST_KANA, JBSbatFU_T_ADCHWMN.MSKM_JI_CUST_RRKS_TLN, JBSbatFU_T_ADCHWMN.RRKS_TELNO, JBSbatFU_T_ADCHWMN.MLAD, JBSbatFU_T_ADCHWMN.ITNM_PCD,
						JBSbatFU_T_ADCHWMN.ITNM_STATE_NM, JBSbatFU_T_ADCHWMN.ITNM_CITY_NM, JBSbatFU_T_ADCHWMN.ITNM_OAZTSU_NM, JBSbatFU_T_ADCHWMN.ITNM_AZCHO_NM, JBSbatFU_T_ADCHWMN.ITNM_BNCHIGO,
						JBSbatFU_T_ADCHWMN.ITNM_ADRTTM, JBSbatFU_T_ADCHWMN.ITNM_ADRRM, JBSbatFU_T_ADCHWMN.ITENS_PCD, JBSbatFU_T_ADCHWMN.ITENS_STATE_NM, JBSbatFU_T_ADCHWMN.ITENS_CITY_NM,
						JBSbatFU_T_ADCHWMN.ITENS_OAZTSU_NM, JBSbatFU_T_ADCHWMN.ITENS_AZCHO_NM, JBSbatFU_T_ADCHWMN.ITENS_BNCHIGO, JBSbatFU_T_ADCHWMN.ITENS_ADRTTM, JBSbatFU_T_ADCHWMN.ITENS_ADRRM,
						JBSbatFU_T_ADCHWMN.TAKCHO_KIBO_YMD, JBSbatFU_T_ADCHWMN.TKKJ_KIBO_YMD, JBSbatFU_T_ADCHWMN.CHAF_CABLE_GUIDE_MSKM_CNT, JBSbatFU_T_ADCHWMN.AREA_CHK_CD,
						JBSbatFU_T_ADCHWMN.FMTCEL_KEI_UM, JBSbatFU_T_ADCHWMN.KSHAD_CHG_UM,
						JBSbatFU_T_ADCHWMN.ITNM_KIKI_KEIZK_USE_KBUM,
						JBSbatFU_T_ADCHWMN.EOELEC_KEI_UM,
						JBSbatFU_T_ADCHWMN.EOELEC_KEI_KEIZK_CD,
						JBSbatFU_T_ADCHWMN.EOELEC_SVC_KEI_NO,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_MLAD,
						JBSbatFU_T_ADCHWMN.KKYU_CHTN_TOKUT_NO,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_SKBT_CD,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_NM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_KANA,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_TELNO,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_TELNO_SBT_CD,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_PCD,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_STATE_NM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_CITY_NM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_OAZTSU_NM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_AZCHO_NM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_BNCHIGO,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_ADRTTM,
						JBSbatFU_T_ADCHWMN.EOELEC_RRKS_ADRRM,
						JBSbatFU_T_ADCHWMN.EOELEC_ITENS_UEST_KIBOYMD,
						JBSbatFU_T_ADCHWMN.EOELEC_ITENS_UEST_KBTMZ_CD,
						JBSbatFU_T_ADCHWMN.EOELEC_ITNM_USE_END_RSYMD,
						JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSV_UM,
						JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSYMD,
						JBSbatFU_T_ADCHWMN.ITNM_TTDEML_RSV_TIMEZ_CD,
						// ANK-3248-00-00 ADD START
						JBSbatFU_T_ADCHWMN.KISN_PLC_AD_MI_FIX_FLG, JBSbatFU_T_ADCHWMN.MANSION_ID, JBSbatFU_T_ADCHWMN.PAIRID, JBSbatFU_T_ADCHWMN.PID, JBSbatFU_T_ADCHWMN.CATID,
						JBSbatFU_T_ADCHWMN.TK_HOSHIKI_CD, JBSbatFU_T_ADCHWMN.SVC_STA_KIBO_YMD, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_DIV, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_AD_CD,
						JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_PCD, JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_STATE_NM, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_CITY_NM,
						JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_OAZTSU_NM, JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENM_AZCHO_NM, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_BNCHIGO,
						JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_ADRTTM, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENM_ADRRM, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_DIV,
						JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_AD_CD, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_PCD, JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_STATE_NM,
						JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_CITY_NM, JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_OAZTSU_NM, JBSbatFU_T_ADCHWMN.ATICLE_SHS_ITENS_AZCHO_NM,
						JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_BNCHIGO, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_ADRTTM, JBSbatFU_T_ADCHWMN.ATICLE_SOHUS_ITENS_ADRRM,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_DIV, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_AD_CD, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_PCD, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_STATE_NM,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_CITY_NM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_OAZTSU_NM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_AZCHO_NM,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_BNCHIGO, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_ADRTTM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENM_ADRRM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_DIV,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_AD_CD, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_PCD, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_STATE_NM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_CITY_NM,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_OAZTSU_NM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_AZCHO_NM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_BNCHIGO,
						JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_ADRTTM, JBSbatFU_T_ADCHWMN.KIKI_SOHUS_ITENS_ADRRM, JBSbatFU_T_ADCHWMN.ITENS_MODEM_USE_DIV, JBSbatFU_T_ADCHWMN.CHOKZUWRI_MSKM_UM,
						JBSbatFU_T_ADCHWMN.CHOKZUWRI_AT_KEIZK_MSKM_UM, JBSbatFU_T_ADCHWMN.ITENM_TELNO_1, JBSbatFU_T_ADCHWMN.ITENM_TELNO_2, JBSbatFU_T_ADCHWMN_TLN_DTL.DOBANITEN_TTDK_USR_JSSI_UM,
						JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_DIV, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_CD, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_PCD,
						JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_STATE_NM, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_CITY_NM, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_OAZTSU_NM,
						JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_AZCHO_NM, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_BNCHIGO, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRTTM,
						JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KEI_AD_ADRRM, JBSbatFU_T_ADCHWMN_TLN_DTL.BMP_TELNO_KSH_NM_DIV, JBSbatFU_T_ADCHWMN.NOW_GUIDE_KEI_CNT, JBSbatFU_T_ADCHWMN.SVC_END_KIBO_YMD,
						JBSbatFU_T_ADCHWMN.ITNS_EOELEC_PPLAN_DIV, JBSbatFU_T_ADCHWMN.ITNM_EOELEC_KEI_COMP_CD, JBSbatFU_T_ADCHWMN.ITNM_EOELEC_KEI_SBT_CD, JBSbatFU_T_ADCHWMN.EOHNT_SVKEI_NO,
						CHGE_BF_NET_SVC_MKM_NYO_CD_WK, CHAF_NET_SVC_MKM_NYO_CD_WK,
						// ANK-3248-00-00 ADD END
						CHGE_BF_TV_SVC_MKM_NYO_CD_WK, CHAF_TV_SVC_MKM_NYO_CD_WK , JBSbatFU_T_ADCHWMN.TKNRT_MUSEN_KINO_MSKM_UM, JBSbatFU_T_ADCHWMN.MLAN_CHKEKI_MSKM_UM,
						JBSbatFU_T_ADCHWMN.ITNM_ROZETT_STC_STAT_CD, JBSbatFU_T_ADCHWMN.ALLDENKA_KIKI_NM,
						JBSbatFU_T_ADCHWMN.NEWCONST_BUKKEN_CD, JBSbatFU_T_ADCHWMN.CHSIN_VSIT_KBUM,
						JBSbatFU_T_ADCHWMN.ENQUETE_CD_ICRN,
						TK_HOSHIKI_CD_WK};

		HashMap<String, String> map = new HashMap<String, String>();
		for (int i = 0; i < keyArray.length; i++)
		{
			String key = keyArray[i];
			map = put(map, key, dbIf);
		}
		return map;
	}

	/**
	 * 値の前後に指定文字列が存在する場合は削除する。 <br>
	 *
	 * @param value チェック対象の文字列
	 * @param rep 取り除き対象の文字列
	 * @return 値の前後の指定文字列を削除しトリムした文字列。
	 */
	public static String trimStr(String value, String rep)
	{
		if (value == null || value.trim().length() == 0)
		{
			return value;
		}

		String strTrim = value.trim();
		if (strTrim.startsWith(rep))
		{
			strTrim = strTrim.substring(1);
		}
		if (strTrim.endsWith(rep))
		{
			strTrim = strTrim.substring(0, strTrim.length() - 1);
		}
		return strTrim.trim();
	}

	// ANK-3248-00-00 ADD START
	/**
	 * ネットサービス申込内容コードから引越し先住所形態区分を取得します。
	 * <br>
	 * @param netmkmCd ネットサービス申込内容コード
	 */
	private String setAdFormDiv(String chBfNetSvcMkmNyoCd, String chAfNetSvcMkmNyoCd)
	{
		if (!JKKStringUtil.isNullBlank(chBfNetSvcMkmNyoCd))
		{
			// OM-2019-0000134 MOD START
			//if(chBfNetSvcMkmNyoCd.startsWith("4") || chBfNetSvcMkmNyoCd.startsWith("5") || chBfNetSvcMkmNyoCd.startsWith("6"))
			if (chBfNetSvcMkmNyoCd.startsWith("4") || chBfNetSvcMkmNyoCd.startsWith("5") || chBfNetSvcMkmNyoCd.startsWith("6") || chBfNetSvcMkmNyoCd.startsWith("7"))
			// OM-2019-0000134 MOD END
			{
				// OM-2019-0000134 MOD START
				//if(chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6"))
				if (chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6") || chAfNetSvcMkmNyoCd.startsWith("7"))
				// OM-2019-0000134 MOD END
				{
					//マンションの場合
					return TITLE_MT_MT;
				}
				else if (chAfNetSvcMkmNyoCd.startsWith("2") || chAfNetSvcMkmNyoCd.startsWith("3"))
				{
					//メゾンの場合
					return TITLE_MT_HT;
				}
				else
				{
					//ホームの場合
					return TITLE_MT_HT;
				}
			}
			else if (chBfNetSvcMkmNyoCd.startsWith("2") || chBfNetSvcMkmNyoCd.startsWith("3"))
			{
				// OM-2019-0000134 MOD START
				//if(chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6"))
				if (chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6") || chAfNetSvcMkmNyoCd.startsWith("7"))
				// OM-2019-0000134 MOD END
				{
					//マンションの場合
					return TITLE_HT_MT;
				}
				else if (chAfNetSvcMkmNyoCd.startsWith("2") || chAfNetSvcMkmNyoCd.startsWith("3"))
				{
					//メゾンの場合
					return TITLE_HT_HT;
				}
				else
				{
					//ホームの場合
					return TITLE_HT_HT;
				}
			}
			else
			{
				// OM-2019-0000134 MOD START
				//if(chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6"))
				if (chAfNetSvcMkmNyoCd.startsWith("4") || chAfNetSvcMkmNyoCd.startsWith("5") || chAfNetSvcMkmNyoCd.startsWith("6") || chAfNetSvcMkmNyoCd.startsWith("7"))
				// OM-2019-0000134 MOD END
				{
					//マンションの場合
					return TITLE_HT_MT;
				}
				else if (chAfNetSvcMkmNyoCd.startsWith("2") || chAfNetSvcMkmNyoCd.startsWith("3"))
				{
					//メゾンの場合
					return TITLE_HT_HT;
				}
				else
				{
					//ホームの場合
					return TITLE_HT_HT;
				}
			}
		}
		return TITLE_HT_HT;
	}

	// ANK-3248-00-00 ADD END

	/**
	 * ネットサービス申込内容コードから引越し元のeo光ネット契約タイプを取得
	 * <br>
	 * @param chBfNetSvcMkmNyoCd ネットサービス申込内容コード
	 */
	private String getHkksMtNetTypeKbn(String chBfNetSvcMkmNyoCd)
	{
		// eo光ネット契約タイプ（初期値：1(ホームタイプ)）
		// 「1:ホーム」
		// 「2:メゾン」
		// 「3:マンション」
		String hkksMtNetTypeKbn = "1";
		if (!JKKStringUtil.isNullBlank(chBfNetSvcMkmNyoCd))
		{
			if (chBfNetSvcMkmNyoCd.startsWith("2") || chBfNetSvcMkmNyoCd.startsWith("3"))
			{
				// 「2:メゾン」
				hkksMtNetTypeKbn = "2";
			}
			else if (chBfNetSvcMkmNyoCd.startsWith("4") || chBfNetSvcMkmNyoCd.startsWith("5") || chBfNetSvcMkmNyoCd.startsWith("6") || chBfNetSvcMkmNyoCd.startsWith("7"))
			{
				// 「3:マンション」
				hkksMtNetTypeKbn = "3";
			}
			else if (chBfNetSvcMkmNyoCd.startsWith("8"))
			{
				// 「4:シンプルプラン」
				hkksMtNetTypeKbn = "4";
			}
		}
		return hkksMtNetTypeKbn;
	}

	// ●テレビ契約有無
	//   なし：「1」
	//   あり（継続）：「2」
	//   あり（解約）：「3」
	private String getTvKeiyakuJokyoKbn(String chBfTvSvcMkmNyoCd, String chAfTvSvcMkmNyoCd)
	{
		// ●引越し元テレビ契約有無（初期値：1(利用なし)）
		//   なし：「1」
		//   あり（継続）：「2」
		//   あり（解約）：「3」
		String hkksMtTvKeiyakuJokyoKbn = "1";

		// 変更前テレビサービス申込内容コード
		if (!(chBfTvSvcMkmNyoCd == null || JFUStrConst.EMPTY.equals(chBfTvSvcMkmNyoCd) || "01".equals(chBfTvSvcMkmNyoCd)))
		{
			// 引越し元TV契約中

			if (chAfTvSvcMkmNyoCd == null || JFUStrConst.EMPTY.equals(chAfTvSvcMkmNyoCd) || "01".equals(chAfTvSvcMkmNyoCd))
			{
				// 引越し元TV契約中で引越し先TV利用なしの場合

				// テレビ契約有無 あり（解約）：「3」
				hkksMtTvKeiyakuJokyoKbn = "3";
			}
			else
			{
				// 引越し元TV契約中で引越し先TV利用ありの場合

				// テレビ契約有無 あり（継続）：「2」
				hkksMtTvKeiyakuJokyoKbn = "2";
			}
		}
		return hkksMtTvKeiyakuJokyoKbn;
	}

	/**
	 * ネット契約タイプからネットタイプ名称を取得
	 * <br>
	 * @param netTypeKbn ネットタイプ区分
	 */
	private String getNetTypeName(String netTypeKbn)
	{
		String netTypeName = "";
		if ("1".equals(netTypeKbn))
		{
			netTypeName = NETTYPE_HOME;
		}
		else if ("2".equals(netTypeKbn))
		{
			netTypeName = NETTYPE_MEZON;
		}
		else if ("3".equals(netTypeKbn))
		{
			netTypeName = NETTYPE_MANTION;
		}
		else if ("4".equals(netTypeKbn))
		{
			netTypeName = NETTYPE_SIMPLE;
		}
		return netTypeName;
	}
	
	/**
	 * 撤去費用の出力文字列パターンの時限式に対応する
	 * 
	 * @param opeDate 運用日付
	 */
	private void setTekkyoKojiHiyoTo20250630()
	{
		/** 転居元タイプ／テレビ契約有無／撤去方法 */
		/** ホームタイプ／なし／全 */
		tekkyoHiyouMap.put("112", "11,000円");
		/** ホームタイプ／あり（継続）／全 */
		tekkyoHiyouMap.put("122", "18,700円");
		/** ホームタイプ／あり（解約）／全 */
		tekkyoHiyouMap.put("132", "18,700円　STB2台目以降：＋5,500円／台");
	}
}
