/*********************************************************************
 * All Rights reserved,Copyright (c) K-Opticom
 **********************************************************************
 *＜プログラム内容＞
 *   システム名      ：eo顧客基幹システム
 *   モジュール名    ：CHW02501SFLogic
 *   ソースファイル名：CHW02501SFLogic.java
 *   作成者          ：富士通
 *   日付            ：2020年04月06日
 *＜機能概要＞
 *   解約後転居先（督促）情報登録のビューロジック部品です。
 *＜修正履歴＞
 *   バージョン  修正日       修正者      修正内容
 *    v49.00.00   2020/04/06   FJ)西川     ANK-3785-00-00_解約後転居先情報の管理
 **********************************************************************/
package eo.web.webview.CHW02501SF;

import java.util.HashMap;

import com.fujitsu.futurity.model.common.check.EmsizeCharCheck;
import com.fujitsu.futurity.model.common.check.HalfCharCheck;
import com.fujitsu.futurity.model.common.check.MixCharCheck;
import com.fujitsu.futurity.web.x31.X31CWebConst;
import com.fujitsu.futurity.web.x31.X31SDataBeanAccess;

import eo.common.constant.JACStrConst;
import eo.common.constant.JPCModelConstant;
import eo.common.constant.JPCOnlineMessageConstant;
import eo.web.webview.JCCWebBusinessLogic;
import eo.web.webview.CommonInfoCF.CommonInfoCFConst;
import eo.web.webview.common.JACScreenConst;
import eo.web.webview.common.JCCWebCommon;
import eo.web.webview.common.JCHPageTransferUtil;
import eo.web.webview.common.JCHWebCommon;
import eo.web.webview.mapping.CHSV0088_CHSV0088OPDBMapper;

/**
 * 解約後転居先（督促）情報登録のビューロジックを提供します。
 * <p>
 * <BR>
 *
 * @author 富士通
 */
public class CHW02501SFLogic extends JCCWebBusinessLogic
{

	/** LF改行コード */
	private static final String LINE_LF_SEPARATOR = "\n";

	/** Bean項目和名 */
	private static final String JP_CUST_NM = "氏名";
	private static final String JP_CUST_KANA = "氏名(カナ)";
	private static final String JP_PCD = "郵便番号";
	private static final String JP_KIJI = "記事";
	private static final String JP_AD = "住所";
	private static final String JP_TELNO = "電話番号";
	private static final String JP_TELNO_SBT = "電話番号(種別)";

	/** BP連携（I/O）の各項目 */
	private static final String SEIKY_KEI_NO = "seiky_kei_no";

	/** KK3231 解約転居先情報の項目 */
	private static final String CUST_NM = "cust_nm";
	private static final String CUST_KANA = "cust_kana";
	private static final String TELNO = "telno";
	private static final String TELNO_SBT = "telno_sbt";
	private static final String PCD = "pcd";
	private static final String AD = "ad";
	private static final String MITCK_FLG = "mitck_flg";
	private static final String YK_KDNSK_NON_FLG = "yk_kdnsk_non_flg";
	private static final String KIJI = "kiji";
	private static final String UPD_DTM_BF = "upd_dtm_bf";
	private static final String SVC_KEY_JCHDSLAFTNKYSIFCC = "JCHDslAfTnkysIfCC";

	/** KK3231 解約転居先情報登録　排他エラー判断項目 */
	private static final String ERR_SIF = "err_sif";
	private static final String ERR_COL = "err_col";
	private static final String EKK3231_A010 = "EKK3231A010";
	private static final String UPD_DTM = "upd_dtm";

	/** 単項目チェック用 */
	private static final String MSG_ADD = "登録";
	private static final String LEN_CUST_NM_121 = "121";
	private static final String LEN_KOTEI_TELNO_10 = "10";
	private static final String LEN_MV_TELNO_11 = "11";
	private static final String LEN_TELNO_SBT_30 = "30";
	private static final String LEN_PCD_7 = "7";
	private static final String LEN_AD_167 = "167";
	private static final String LEN_KIJI_100 = "100";

	/** ユースケースID(解約後転居先（督促）情報登録画面情報取得／更新／登録) */
	private static final String USECASE_ID_CHSV0088 = "CHSV0088";

	/**
	 * 解約後転居先（督促）情報登録画面の初期表示処理を行います。 <br>
	 *
	 * @return 実行結果
	 * @throws Exception 例外が発生した場合
	 */
	public boolean init() throws Exception
	{
		initAddScreen();

		return true;
	}

	/**
	 * 解約後転居先（督促）情報登録確認画面に遷移します。 <br>
	 *
	 * @return 実行結果
	 * @throws Exception 例外が発生した場合
	 */
	public boolean addCfm() throws Exception
	{

		// 共有フォームBeanのアクセサを取得する
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();

		if (!isOkInputValueCheck())
		{
			return false;
		}

		// メッセージ領域の背景色の設定
		JCCWebCommon.setMessageAreaBackColor(this, "1");
		// メッセージの設定
		JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0370__I, new String[] { MSG_ADD });

		// 遷移先画面を設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JACScreenConst.SCREEN_ID_CHW02502);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JACScreenConst.SCREEN_NAME_CHW02502);

		return true;
	}

	/**
	 * 入力項目の単項目チェック
	 * 
	 * @return true:正常な入力値、false：異常な入力値
	 */
	private boolean isOkInputValueCheck()
	{
		boolean isOkInputValueCheck = true;

		// サービスフォームBeanのアクセサを取得する
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// 入力チェック

		// 必須チェック
		String kijiran = bean.sendMessageString(CHW02501SFConst.KIJIRAN, X31CWebConst.DATABEAN_GET_VALUE);
		if (!JCHWebCommon.isNotNullOrEmpty(kijiran))
		{

			// メッセージの設定（%1%は必ず入力してください。）
			JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0010_TW, new String[] { JP_KIJI }, "kijiran");
			isOkInputValueCheck = false;
		}

		// 単項目（桁数・属性）チェック
		// 氏名
		String custNm = bean.sendMessageString(CHW02501SFConst.CUST_NM, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCHWebCommon.isNotNullOrEmpty(custNm))
		{

			if (custNm.length() > 121)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0030_TW, new String[] { JP_CUST_NM, LEN_CUST_NM_121, JACStrConst.KARA_MOJI }, "cust_nm");
				isOkInputValueCheck = false;
			}

			if (!MixCharCheck.isNameAddressCheck(custNm))
			{
				// 属性エラー

				// メッセージの設定（%1%は全角文字を入力してください。(全角文字にはJIS第二水準漢字を含みます。)）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB6170_TW, new String[] { JP_CUST_NM }, "cust_nm");
				isOkInputValueCheck = false;
			}
		}

		// 氏名(カナ)
		String custKana = bean.sendMessageString(CHW02501SFConst.CUST_KANA, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCHWebCommon.isNotNullOrEmpty(custKana))
		{

			if (custKana.length() > 121)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0030_TW, new String[] { JP_CUST_KANA, LEN_CUST_NM_121, JACStrConst.KARA_MOJI }, "cust_kana");
				isOkInputValueCheck = false;
			}

			if (!EmsizeCharCheck.isEmsizeKanaCheck(custKana))
			{
				// 属性エラー

				// メッセージの設定（%1%は全角カタカナまたは、全角スペースで入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0180_TW, new String[] { JP_CUST_KANA }, "cust_kana");
				isOkInputValueCheck = false;
			}
		}

		// 電話番号
		String telNo = bean.sendMessageString(CHW02501SFConst.TELNO, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCHWebCommon.isNotNullOrEmpty(telNo))
		{

			if (telNo.length() < 10 || telNo.length() > 11)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0040_TW, new String[] { JP_TELNO, LEN_KOTEI_TELNO_10, LEN_MV_TELNO_11 }, "telno");
				isOkInputValueCheck = false;
			}

			if (!HalfCharCheck.isTelno2Check(telNo))
			{
				// 属性エラー

				// メッセージの設定（1桁目が0、2桁目が0以外、3桁目が0の場合は11桁、0でない場合は10桁）で入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0240_TW, new String[] { JP_TELNO }, "telno");
				isOkInputValueCheck = false;
			}
		}

		//電話番号(種別)
		String telNoSbt = bean.sendMessageString(CHW02501SFConst.TELNO_SBT, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCHWebCommon.isNotNullOrEmpty(telNoSbt))
		{

			if (telNoSbt.length() > 30)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0030_TW, new String[] { JP_TELNO_SBT, LEN_TELNO_SBT_30, JACStrConst.KARA_MOJI }, "telno_sbt");
				isOkInputValueCheck = false;
			}

			if (!MixCharCheck.isMix3Check(telNoSbt))
			{
				// 属性エラー

				// メッセージの設定（%1%は全角文字、半角英数字、半角記号で入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA220_TW, new String[] { JP_TELNO_SBT }, "telno_sbt");
				isOkInputValueCheck = false;
			}
		}

		//郵便番号
		String keishaPcdBf = bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_BF, X31CWebConst.DATABEAN_GET_VALUE);
		String keishaPcdAf = bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_AF, X31CWebConst.DATABEAN_GET_VALUE);
		String keishaPcd = keishaPcdBf + keishaPcdAf;
		if (JCHWebCommon.isNotNullOrEmpty(keishaPcd))
		{

			if (keishaPcd.length() != 7)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%桁で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0020_TW, new String[] { JP_PCD, LEN_PCD_7 });
				isOkInputValueCheck = false;
			}

			if (!HalfCharCheck.isNumber1Check(keishaPcd))
			{
				// 属性エラー

				// メッセージの設定（%1%は半角数字で入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0140_TW, new String[] { JP_PCD });
				isOkInputValueCheck = false;
			}
		}

		// 住所
		String ad = bean.sendMessageString(CHW02501SFConst.AD, X31CWebConst.DATABEAN_GET_VALUE);
		if (JCHWebCommon.isNotNullOrEmpty(ad))
		{

			if (ad.length() > 167)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0030_TW, new String[] { JP_AD, LEN_AD_167, JACStrConst.KARA_MOJI }, "ad");
				isOkInputValueCheck = false;
			}

			if (!MixCharCheck.isMix3Check(ad))
			{
				// 属性エラー

				// メッセージの設定（%1%は全角文字、半角英数字、半角記号で入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA220_TW, new String[] { JP_AD }, "ad");
				isOkInputValueCheck = false;
			}
		}

		// 記事
		if (JCHWebCommon.isNotNullOrEmpty(kijiran))
		{

			if (kijiran.length() > 100)
			{
				// 桁数エラーの場合

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB0030_TW, new String[] { JP_KIJI, LEN_KIJI_100, JACStrConst.KARA_MOJI }, "kijiran");
				isOkInputValueCheck = false;
			}

			if (!MixCharCheck.isMix1Check(kijiran) || !MixCharCheck.isMix3Check(delReturnCd(kijiran)))
			{
				// 属性エラー

				// メッセージの設定（%1%は全角文字、半角英数字、半角記号で入力してください。)
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKBA220_TW, new String[] { JP_KIJI }, "kijiran");
				isOkInputValueCheck = false;
			}
		}
		return isOkInputValueCheck;
	}

	/**
	 * モーダル反映画面に遷移して画面を閉じます。 <br>
	 *
	 * @return 実行結果
	 * @throws Exception 例外が発生した場合
	 */
	public boolean close() throws Exception
	{
		// 遷移先画面IDを取得し、子画面を閉じる共通処理を呼出す
		return JCHPageTransferUtil.closeTransfer(this, JCCWebCommon.getScreenId(this));
	}

	/**
	 * 修正を処理します。 <br>
	 *
	 * @return 実行結果
	 * @throws Exception 例外が発生した場合
	 */
	public boolean shusei() throws Exception
	{

		// 共有フォームBeanのアクセサを取得する
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();

		// 遷移先画面を設定する
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JACScreenConst.SCREEN_ID_CHW02501);
		commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JACScreenConst.SCREEN_NAME_CHW02501);

		return true;
	}

	/**
	 * 確定完了を処理します。 <br>
	 *
	 * @return 実行結果
	 * @throws Exception 例外が発生した場合
	 */
	public boolean fixFin() throws Exception
	{
		// 共有フォームBeanのアクセサを取得する
		X31SDataBeanAccess commoninfoBean = super.getCommonInfoBean();

		// サービスフォームBeanのアクセサを取得する
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// サービスフォームBeanのアクセサを配列化する
		X31SDataBeanAccess[] paramBeans = { bean, commoninfoBean };

		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID_CHSV0088);

		// サービスに渡すMapを生成する
		HashMap<String, Object> inMap = new HashMap<String, Object>();

		// 機能コード「2：(EKK3231C010_解約後転居先情報更新／EKK3231D010_解約後転居先情報登録)」を実行するための上りマッピング
		CHSV0088_CHSV0088OPDBMapper.setJCHDslAfTnkysIfCC(paramBeans, inMap, JPCModelConstant.FUNC_CD_2);
		CHSV0088_CHSV0088OPDBMapper.setPRCTAIOKIROKADDCC(paramBeans, inMap, JPCModelConstant.FUNC_CD_1);

		// 結果格納用マップを生成。
		HashMap<String, Object> outMap = new HashMap<String, Object>();

		// サービスの呼び出し
		invokeService(paramMap, inMap, outMap);

		if (outMap != null && outMap.containsKey(SVC_KEY_JCHDSLAFTNKYSIFCC))
		{
			HashMap<String, Object> dslAfTnkysInfoMap = (HashMap<String, Object>)outMap.get(SVC_KEY_JCHDSLAFTNKYSIFCC);

			if (EKK3231_A010.equals(dslAfTnkysInfoMap.get(ERR_SIF)) && UPD_DTM_BF.equals(dslAfTnkysInfoMap.get(ERR_COL)))
			{
				// 排他エラー

				// メッセージの設定（%1%は%2%%3%桁以内で入力してください。）
				JCCWebCommon.setMessageInfo(this, JPCOnlineMessageConstant.EKB6510_KW);

				return false;
			}
		}

		// 閉じる処理の呼出し
		this.close();

		return true;
	}

	/**
	 * 解約後転居先（督促）情報登録画面の初期表示処理を行います。 <br>
	 *
	 * @throws Exception 例外が発生した場合
	 */
	private void initAddScreen() throws Exception
	{

		// 画面間引継情報を設定する
		JCCWebCommon.getScreenInfo(this);

		// サービスフォームBeanのアクセサを取得する
		X31SDataBeanAccess bean = super.getServiceFormBean();

		// サービスフォームBeanのアクセサを配列化する
		X31SDataBeanAccess[] paramBeans = { bean };

		// ユースケースID格納用マップを生成。
		HashMap<String, Object> paramMap = new HashMap<String, Object>();
		paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID_CHSV0088);

		// サービスに渡すMapを生成する
		HashMap<String, Object> inMap = new HashMap<String, Object>();

		// 機能コード「1：(EKK3231A010_解約後転居先情報一意照会)」を実行するための上りマッピング
		CHSV0088_CHSV0088OPDBMapper.setJCHDslAfTnkysIfCC(paramBeans, inMap, JPCModelConstant.FUNC_CD_1);

		// 検索結果格納用マップを生成。
		HashMap<String, Object> outMap = new HashMap<String, Object>();

		// サービスの呼び出し
		invokeService(paramMap, inMap, outMap);

		// 下りマッピング
		outMap = CHSV0088_CHSV0088OPDBMapper.getJCHDslAfTnkysIfCC(outMap, JPCModelConstant.FUNC_CD_1); // 解約後転居先情報一意照会

		if (outMap != null)
		{
			bean.sendMessageString(CHW02501SFConst.SEIKY_KEI_NO, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(SEIKY_KEI_NO)));
			bean.sendMessageString(CHW02501SFConst.CUST_NM, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(CUST_NM)));
			bean.sendMessageString(CHW02501SFConst.CUST_KANA, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(CUST_KANA)));
			bean.sendMessageString(CHW02501SFConst.TELNO, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(TELNO)));
			bean.sendMessageString(CHW02501SFConst.TELNO_SBT, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(TELNO_SBT)));

			// 郵便番号
			String pcd = toStrVal(outMap.get(PCD));
			if (JCHWebCommon.isNotNullOrEmpty(pcd))
			{
				if (pcd.length() >= 3)
				{
					bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_BF, X31CWebConst.DATABEAN_SET_VALUE, pcd.substring(0, 3));
					bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_AF, X31CWebConst.DATABEAN_SET_VALUE, pcd.substring(3));
				}
				else
				{
					bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_BF, X31CWebConst.DATABEAN_SET_VALUE, pcd.substring(0, pcd.length()));
					bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_AF, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
				}
			}
			else
			{
				bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_BF, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
				bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_AF, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			}

			bean.sendMessageString(CHW02501SFConst.AD, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(AD)));
			bean.sendMessageString(CHW02501SFConst.UPD_DTM_BF, X31CWebConst.DATABEAN_SET_VALUE, toStrVal(outMap.get(UPD_DTM)));

			if ("0".equals(outMap.get(MITCK_FLG)))
			{
				//"0"が[あり]　→有効な送付先がある。

				//"FALSE"が[あり]　→有効な送付先がある。
				bean.sendMessageBoolean(CHW02501SFConst.MITCHK_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
			}
			else
			{
				//"１"が[なし]→有効な送付先がない。

				//"TRUE"が[なし]→有効な送付先がない。
				bean.sendMessageBoolean(CHW02501SFConst.MITCHK_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			}

			if ("0".equals(outMap.get(YK_KDNSK_NON_FLG)))
			{
				//"0"が[あり]　→有効な架電先がある。

				// "FALSE"が[あり]　→有効な架電先がある。
				bean.sendMessageBoolean(CHW02501SFConst.YK_KDNSK_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE, false);
			}
			else
			{
				//"１"が[なし]→有効な架電先がない。

				// "TRUE"が[なし]→有効な架電先がない。
				bean.sendMessageBoolean(CHW02501SFConst.YK_KDNSK_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			}
			bean.sendMessageString(CHW02501SFConst.KIJIRAN, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
		}
		else
		{
			bean.sendMessageString(CHW02501SFConst.CUST_NM, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.CUST_KANA, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.TELNO, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.TELNO_SBT, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_BF, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.KEISHA_PCD_AF, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.AD, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
			bean.sendMessageString(CHW02501SFConst.UPD_DTM_BF, JACStrConst.KARA_MOJI);

			// "TRUE"が[なし]→有効な架電先がない。
			bean.sendMessageBoolean(CHW02501SFConst.MITCHK_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);
			// "TRUE"が[なし]→有効な架電先がない。
			bean.sendMessageBoolean(CHW02501SFConst.YK_KDNSK_NON_FLG, X31CWebConst.DATABEAN_SET_VALUE, true);

			bean.sendMessageString(CHW02501SFConst.KIJIRAN, X31CWebConst.DATABEAN_SET_VALUE, JACStrConst.KARA_MOJI);
		}
	}

	/**
	 * NULLの場合空文字に変換する。
	 *
	 * @param obj 値
	 * @return 空文字又は値
	 */
	private static String toStrVal(Object obj)
	{

		if (obj == null)
		{
			return JACStrConst.KARA_MOJI;
		}
		return (String)obj;
	}

	/**
	 * 改行コード削除
	 * @param val 値
	 * @return 改行コードを半角スペースに変換した値
	 */
	private static String delReturnCd(Object val)
	{
		if (val == null)
		{

			return JACStrConst.KARA_MOJI;
		}
		return val.toString().replaceAll(JACStrConst.LINE_SEPARATOR, JACStrConst.SPACE_1).replaceAll(LINE_LF_SEPARATOR, JACStrConst.SPACE_1);
	}
}
