/** * メソッド概要 ・初期化をコントロールする * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionInitializeCtl() { /* 承認者 */ fEtexExecuteRecognitionSetStaffName(); /* 承認日 */ fEtexExecuteRecognitionSetDate(); /* 対象者 */ fEtexExecuteRecognitionSetTargetStaffCode(); /* 社員名一覧作成 */ fEtexExecuteRecognitionSetAllStaffName(); /* 対象年月 */ fEtexExecuteRecognitionSetTargetDate(); /* 起動種別によるswitch */ switch (Integer.parseInt(clsRecognitionCtlBean.getRecognitionBootMode())) { case ETEX_RECOGNITION_BOOT_UPDATE: /* 更新呼び出し */ case ETEX_RECOGNITION_BOOT_SELECT_MONTH_CNV: /* 対象年月変更呼び出し */ case ETEX_RECOGNITION_BOOT_BEFORE_MONTH: /* 前月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_NEXT_MONTH: /* 次月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_SELECT_STAFF_CNV: /* 対象者変更呼び出 */ case ETEX_RECOGNITION_BOOT_SELECT_RETIRE_CNV: /* 退職者チェック呼び出し */ /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_CHK); return; default: /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_READ); return; } }
/** * メソッド概要 ・承認日を設定する * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetDate() { /* 承認日が既に取得済かチェック */ if (clsRecognitionCtlBean.getRecognitionDate() == null) { /* システム年/月/日を取得設定する */ clsRecognitionCtlBean.setRecognitionDate( fEtexGeneralDateUtilGetYMD(ETEX_GENERAL_DATE_MODE_YMD, ETEX_RECOGNITION_STRING_SLASH)); } }
/** * メソッド概要 ・対象者を設定する * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetTargetStaffCode() { /* 画面の対象者を対象者設定する */ clsRecognitionCtlBean.setRecognitionSerchStaffCode( fEtexGeneralStringUtilEqualsOppositeChk( fEtexGeneralSessionUtilGetRequestParam( clsRecognitionCtlBean.getRecognitionRequest(), "staff"), ETEX_GENERAL_STRING_EMPTY, "000-0000")); }
/** * メソッド概要 ・ユーザー名を設定する(セッションから) * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetStaffName() { /* 名前設定 */ clsRecognitionCtlBean.setRecognitionStaffName( fEtexGeneralStringUtilEqualsOppositeChk( fEtexGeneralDbUtilGetStaffName( fEtexGeneralSessionUtilSessionGetSessionBean( clsRecognitionCtlBean.getRecognitionRequest()) .getStaffCode()), ETEX_GENERAL_STRING_EMPTY, ETEX_GENERAL_STRING_SPACE)); }
/** * メソッド概要 ・引数ありコンストラクタ * * @param ・acParamMapping マッピング情報 * @param ・acParamForm フォーム情報 * @param ・hpParamRequest リクエスト情報 * @param ・hpParamResponse レスポンス情報 * @return ・なし */ public CEtexRecognitionExecute( ActionMapping acParamMapping, ActionForm acParamForm, HttpServletRequest hpParamRequest, HttpServletResponse hpParamResponse) { clsRecognitionCtlBean = (CEtexRecognitionCtlBean) acParamForm; clsRecognitionCtlBean.setRecognitionMapping(acParamMapping); clsRecognitionCtlBean.setRecognitionForm(acParamForm); clsRecognitionCtlBean.setRecognitionRequest(hpParamRequest); clsRecognitionCtlBean.setRecognitionResponse(hpParamResponse); clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_SESSION); }
/** * メソッド概要 ・処理終了(Action)のコントロールを行う * * @param ・なし * @return ・なし */ public ActionForward fEtexExecuteRecognitionEndCtl() throws Exception { /* 例外をコンテナ投げるかチェック(デバッグ) */ if (ETEX_RECOGNITION_DEBUG_EXCEPTION == true) { /* 例外処理が存在すれば例外を派生する */ fEtexGeneralExceptionUtilThrow( false, fEtexGeneralExceptionUtilGetRequest(clsRecognitionCtlBean.getRecognitionRequest())); } /* 遷移先パラメータ設定 */ return clsRecognitionCtlBean .getRecognitionMapping() .findForward(clsRecognitionCtlBean.getRecognitionScreen()); }
/** * メソッド概要 ・解除チェックボックスでチェックされたデータを取り出す * * @param ・intParamIndex チェックされたデータの先頭からのインデックス位置 * @param ・intParamMode 取得するモード ETEX_RECOGNITION_CHKBOX_GET_KUBUN:区分 * ETEX_RECOGNITION_CHKBOX_GET_CODE :社員コード ETEX_RECOGNITION_CHKBOX_GET_DATE :日付 * ETEX_RECOGNITION_CHKBOX_GET_INDEX:インデックス * @return ・成功:「""」以外 失敗:「""」 */ public String fEtexExecuteRecognitionGetcancellationChkBox(int intParamIndex, int intParamMode) { /* 戻り値 */ String stgResult = ETEX_GENERAL_STRING_EMPTY; /* 編集エリア */ String stgBuf = ETEX_GENERAL_STRING_EMPTY; /* 解除チェックしたカラム情報取得 */ stgBuf = clsRecognitionCtlBean.getRecognitionChkAllReSet()[intParamIndex]; /* 取得モードによるswitch */ switch (intParamMode) { case ETEX_RECOGNITION_CHKBOX_GET_KUBUN: /* 更新区分 */ stgResult = stgBuf.substring(0, 1); break; case ETEX_RECOGNITION_CHKBOX_GET_DATE: /* 年月日 */ stgResult = stgBuf.substring(2, 12); break; case ETEX_RECOGNITION_CHKBOX_GET_INDEX: /* データインデックス */ stgResult = stgBuf.substring(13, 14); break; case ETEX_RECOGNITION_CHKBOX_GET_CODE: /* 社員番号 */ stgResult = stgBuf.substring(15, 23); break; default: /* 例外情報表示 */ System.err.println("CEtexRecognitionExecute:fEtexExecuteRecognitionGetcancellationChkBox:"); break; } return stgResult; }
/** * メソッド概要 ・セッションチェックをコントロールする * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSessionChkCtl() { /* リクエストオブジェクト */ HttpServletRequest hpRequest = null; /* リクエスト情報取得 */ hpRequest = clsRecognitionCtlBean.getRecognitionRequest(); /* セッションチェック */ if (fEtexGeneralSessionUtilSessionChk(hpRequest) == true) { /* 権限チェック */ if (fEtexGeneralSessionUtilSessionGetSessionBean(hpRequest).getGrant().equals("0")) { /* 画面設定 */ clsRecognitionCtlBean.setRecognitionScreen(ETEX_RECOGNITION_SCREEN_TOP); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_END); } else { /* 次フェーズ設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_INITIALIZE); } } else { /* エラー */ /* 画面設定 */ clsRecognitionCtlBean.setRecognitionScreen(ETEX_RECOGNITION_SCREEN_LOGOUT); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_END); } }
/** * メソッド概要 ・対象年月を設定する * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetTargetDate() { /* 日付 */ String stgYM = clsRecognitionCtlBean.getRecognitionSerchDate(); /* 起動モード振り分け */ switch (Integer.parseInt(clsRecognitionCtlBean.getRecognitionBootMode())) { case ETEX_RECOGNITION_BOOT_BEFORE_MONTH: /* 前月遷移呼び出し */ clsRecognitionCtlBean.setRecognitionSerchDate( fEtexGeneralStringUtilEqualsOppositeChk( fEtexGeneralDateUtilGetAdjustYMD( ETEX_GENERAL_DATE_BEFORE, ETEX_GENERAL_DATE_MODE_YM, stgYM, "/"), ETEX_GENERAL_STRING_EMPTY, stgYM)); break; case ETEX_RECOGNITION_BOOT_NEXT_MONTH: /* 次月遷移呼び出し */ clsRecognitionCtlBean.setRecognitionSerchDate( fEtexGeneralStringUtilEqualsOppositeChk( fEtexGeneralDateUtilGetAdjustYMD( ETEX_GENERAL_DATE_NEXT, ETEX_GENERAL_DATE_MODE_YM, stgYM, "/"), ETEX_GENERAL_STRING_EMPTY, stgYM)); break; default: /* 対象年月があるかチェック */ if (clsRecognitionCtlBean.getRecognitionSerchDate() == null) { /* システム年/月を対象年月に設定 */ clsRecognitionCtlBean.setRecognitionSerchDate( fEtexGeneralDateUtilGetYMD(ETEX_GENERAL_DATE_MODE_YM, ETEX_RECOGNITION_STRING_SLASH)); } break; } }
/** * メソッド概要 ・データベース操作に使用するSQLを生成する * * @param ・intParamMode データベースを操作する種別 * @param ・objParam 上位からの任意パラメータ * @return ・成功:「""」以外 失敗:「""」 */ public String fEtexExecuteRecognitionPublishSql(int intParamMode, Object objParam) { /* SQLデータ */ String stgResultSql = null; /* SQLバッファ */ StringBuffer stgBufSql = null; /* 更新者 */ String upd_id = null; /* 社員コード */ String MD010010V = null; /* 年月日 */ String TD100020V = null; /* index */ int TD100030I = 0; /* 精算区分 */ String TD100170C = null; /* データベース操作種別による、swithc分岐 */ switch (intParamMode) { case ETEX_RECOGNITION_DB_SELECT_EITD100: /* 交通費精算トランザクション検索 */ /* 対象社員コード*/ MD010010V = clsRecognitionCtlBean.getRecognitionSerchStaffCode(); /* 対象年月 */ TD100020V = clsRecognitionCtlBean.getRecognitionSerchDate(); /* 対象年月チェック */ if (fEtexGeneralDateUtilFormatChk(ETEX_GENERAL_DATE_MODE_YM, TD100020V) != true) { TD100020V = "0000/00"; } /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_150); if (MD010010V.equals("000-0000") == true) { /* 全社員検索 */ stgBufSql.append("SELECT EITD100.*, EIMD010.MD010110V, EIMD010.MD010120V FROM "); stgBufSql.append("EITD100, EIMD010 "); stgBufSql.append("WHERE "); stgBufSql.append("EITD100.MD010010V = EIMD010.MD010010V "); stgBufSql.append("AND "); stgBufSql.append("EITD100.TD100020V "); stgBufSql.append("LIKE '"); stgBufSql.append(TD100020V); stgBufSql.append("%' "); stgBufSql.append("ORDER BY "); stgBufSql.append("EIMD010.MD010120V "); stgBufSql.append(","); stgBufSql.append("EITD100.TD100020V "); stgBufSql.append(","); stgBufSql.append("EITD100.TD100030I "); stgBufSql.append("ASC"); } else { /* 指定社員検索 */ stgBufSql.append("SELECT EITD100.*, EIMD010.MD010110V FROM "); stgBufSql.append("EITD100, EIMD010 "); stgBufSql.append("WHERE "); stgBufSql.append("EITD100.MD010010V = EIMD010.MD010010V "); stgBufSql.append("AND "); stgBufSql.append("EITD100.MD010010V "); stgBufSql.append("= '"); stgBufSql.append(MD010010V); stgBufSql.append("' "); stgBufSql.append("AND "); stgBufSql.append("EITD100.TD100020V "); stgBufSql.append("LIKE '"); stgBufSql.append(TD100020V); stgBufSql.append("%' "); stgBufSql.append("ORDER BY "); stgBufSql.append("EITD100.TD100020V "); stgBufSql.append(","); stgBufSql.append("EITD100.TD100030I "); stgBufSql.append("ASC"); } stgResultSql = stgBufSql.toString(); break; case ETEX_RECOGNITION_DB_SELECT_EITD100_EX: /* 交通費精算トランザクション検索(承認チェック) */ /* 対象社員コード*/ MD010010V = fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_CODE); /* 対象年月 */ TD100020V = fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_DATE); /* index */ TD100030I = Integer.parseInt( fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_INDEX)); /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_100); stgBufSql.append("SELECT * FROM "); stgBufSql.append("EITD100 "); stgBufSql.append("WHERE "); stgBufSql.append("MD010010V "); stgBufSql.append("= '"); stgBufSql.append(MD010010V); stgBufSql.append("' "); stgBufSql.append("AND "); stgBufSql.append("TD100020V "); stgBufSql.append("= '"); stgBufSql.append(TD100020V); stgBufSql.append("' and "); stgBufSql.append("TD100030I "); stgBufSql.append("= "); stgBufSql.append(TD100030I); stgBufSql.append(" AND "); stgBufSql.append("TD100170C "); stgBufSql.append("= '"); stgBufSql.append("0"); stgBufSql.append("'"); stgResultSql = stgBufSql.toString(); break; case ETEX_RECOGNITION_DB_SELECT_EITD100_EX2: /* 交通費精算トランザクション検索(解除チェック) */ /* 対象社員コード*/ MD010010V = fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_CODE); /* 対象年月 */ TD100020V = fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_DATE); /* index */ TD100030I = Integer.parseInt( fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_INDEX)); /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_100); stgBufSql.append("SELECT * FROM "); stgBufSql.append("EITD100 "); stgBufSql.append("WHERE "); stgBufSql.append("MD010010V "); stgBufSql.append("= '"); stgBufSql.append(MD010010V); stgBufSql.append("' "); stgBufSql.append("AND "); stgBufSql.append("TD100020V "); stgBufSql.append("= '"); stgBufSql.append(TD100020V); stgBufSql.append("' AND "); stgBufSql.append("TD100030I "); stgBufSql.append("= "); stgBufSql.append(TD100030I); stgBufSql.append(" AND "); stgBufSql.append("TD100170C "); stgBufSql.append("= '"); stgBufSql.append("1"); stgBufSql.append("'"); stgResultSql = stgBufSql.toString(); break; case ETEX_RECOGNITION_DB_SELECT_EIMD010_EX: /* 社員マスタ検索(社員名:退職者除く) */ /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_100); if (clsRecognitionCtlBean.getRecognitionChkRetirement()) { /* 退職者含む */ stgBufSql.append("SELECT * FROM "); stgBufSql.append("EIMD010 "); stgBufSql.append("ORDER BY "); stgBufSql.append("MD010120V "); stgBufSql.append("ASC"); } else { /* 退職者含まない */ stgBufSql.append("SELECT * FROM "); stgBufSql.append("EIMD010 "); stgBufSql.append("WHERE "); stgBufSql.append("MD010220C "); stgBufSql.append("= '0' "); stgBufSql.append("ORDER BY "); stgBufSql.append("MD010120V "); stgBufSql.append("ASC"); } stgResultSql = stgBufSql.toString(); break; case ETEX_RECOGNITION_DB_UPDATE_EITD100: /* 交通費精算トランザクション更新(承認チェック)*/ /* 更新者 */ upd_id = fEtexGeneralSessionUtilSessionGetSessionBean( clsRecognitionCtlBean.getRecognitionRequest()) .getStaffCode(); /* 精算区分 */ TD100170C = fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_KUBUN); /* 対象社員コード*/ MD010010V = fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_CODE); /* 年月日 */ TD100020V = fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_DATE); /* index */ TD100030I = Integer.parseInt( fEtexExecuteRecognitionGetChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_INDEX)); /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_150); stgBufSql.append("UPDATE "); stgBufSql.append("EITD100 "); stgBufSql.append("SET "); stgBufSql.append("TD100170C "); stgBufSql.append("= '"); stgBufSql.append(TD100170C); stgBufSql.append("', "); stgBufSql.append("upd_id = '"); stgBufSql.append(upd_id); stgBufSql.append("', "); stgBufSql.append("upd_date = now() "); stgBufSql.append(", "); stgBufSql.append("TD100200V "); stgBufSql.append("= '"); stgBufSql.append(upd_id); stgBufSql.append("', "); stgBufSql.append("TD100210D "); stgBufSql.append("= "); stgBufSql.append("now() "); stgBufSql.append("WHERE "); stgBufSql.append("MD010010V "); stgBufSql.append("= '"); stgBufSql.append(MD010010V); stgBufSql.append("' AND "); stgBufSql.append("TD100020V "); stgBufSql.append("= '"); stgBufSql.append(TD100020V); stgBufSql.append("' AND "); stgBufSql.append("TD100030I "); stgBufSql.append("= "); stgBufSql.append(TD100030I); stgResultSql = stgBufSql.toString(); break; case ETEX_RECOGNITION_DB_UPDATE_EITD100_EX: /* 交通費精算トランザクション更新(解除チェック)*/ /* 更新者 */ upd_id = fEtexGeneralSessionUtilSessionGetSessionBean( clsRecognitionCtlBean.getRecognitionRequest()) .getStaffCode(); /* 精算区分 */ TD100170C = fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_KUBUN); /* 対象社員コード*/ MD010010V = fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_CODE); /* 年月日 */ TD100020V = fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_DATE); /* index */ TD100030I = Integer.parseInt( fEtexExecuteRecognitionGetcancellationChkBox( Integer.parseInt(((String) objParam)), ETEX_RECOGNITION_CHKBOX_GET_INDEX)); /* SQL生成 */ stgBufSql = new StringBuffer(ETEX_GENERAL_DB_SQL_BUF_150); stgBufSql.append("UPDATE "); stgBufSql.append("EITD100 "); stgBufSql.append("SET "); stgBufSql.append("TD100170C "); stgBufSql.append("= '"); stgBufSql.append(TD100170C); stgBufSql.append("', "); stgBufSql.append("upd_id = '"); stgBufSql.append(upd_id); stgBufSql.append("', "); stgBufSql.append("upd_date = now() "); stgBufSql.append(", "); stgBufSql.append("TD100200V "); stgBufSql.append("= '"); stgBufSql.append(""); stgBufSql.append("', "); stgBufSql.append("TD100210D "); stgBufSql.append("= "); stgBufSql.append("NULL "); stgBufSql.append("WHERE "); stgBufSql.append("MD010010V "); stgBufSql.append("= '"); stgBufSql.append(MD010010V); stgBufSql.append("' AND "); stgBufSql.append("TD100020V "); stgBufSql.append("= '"); stgBufSql.append(TD100020V); stgBufSql.append("' AND "); stgBufSql.append("TD100030I "); stgBufSql.append("= "); stgBufSql.append(TD100030I); stgResultSql = stgBufSql.toString(); break; default: stgResultSql = ETEX_GENERAL_STRING_EMPTY; break; } return stgResultSql; }
/** * メソッド概要 ・画面調整のコントロールを行う * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionDispAdjustCtl() { /* 起動種別によるswitch */ switch (Integer.parseInt(clsRecognitionCtlBean.getRecognitionBootMode())) { case ETEX_RECOGNITION_BOOT_SELECT_MONTH_CNV: /* 対象年月変更呼び出し */ case ETEX_RECOGNITION_BOOT_BEFORE_MONTH: /* 前月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_NEXT_MONTH: /* 次月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_SELECT_STAFF_CNV: /* 対象者変更呼び出 */ case ETEX_RECOGNITION_BOOT_SELECT_RETIRE_CNV: /* 退職者チェック呼び出し */ switch (clsRecognitionCtlBean.getRecognitionErr()) { case ETEX_RECOGNITION_ERR_INPUT_TARGET_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0310)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; case ETEX_RECOGNITION_ERR_FORMAT_TARGET_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0320)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; default: /* 各種チェックボックス初期化設定 */ fEtexExecuteRecognitionSetChkBox(); /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString(ETEX_GENERAL_STRING_SPACE); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("black"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; } break; case ETEX_RECOGNITION_BOOT_UPDATE: /* 更新呼び出し */ switch (clsRecognitionCtlBean.getRecognitionErr()) { case ETEX_RECOGNITION_ERR_INPUT_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0330)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionDate"); break; case ETEX_RECOGNITION_ERR_FORMAT_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0340)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionDate"); break; case ETEX_RECOGNITION_ERR_INPUT_TARGET_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0310)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; case ETEX_RECOGNITION_ERR_FORMAT_TARGET_DATE: /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_INP_0320)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; case ETEX_RECOGNITION_ERR_SELECT: /* 各種チェックボックス初期化設定 */ fEtexExecuteRecognitionSetChkBox(); /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_CMN_0080)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("red"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionDate"); break; default: /* 各種チェックボックス初期化設定 */ fEtexExecuteRecognitionSetChkBox(); /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString( fEtexGeneralDbUtilGetErrMassage(ETEX_MSG_CODE_STRING_CMN_0070)); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("black"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionDate"); break; } break; default: /* 各種チェックボックス初期化設定 */ fEtexExecuteRecognitionSetChkBox(); /* 画面表示文字列設定 */ clsRecognitionCtlBean.setRecognitionDispString(ETEX_GENERAL_STRING_SPACE); /* 画面表示文字列カラー設定 */ clsRecognitionCtlBean.setRecognitionFontColor("black"); /* フォーカス位置 */ clsRecognitionCtlBean.setRecognitionFocus("recognitionSerchDate"); break; } /* 更新ボタンダークアウト設定 */ if ((clsRecognitionCtlBean.getRecognitionArrayDataBean() == null) || (clsRecognitionCtlBean.getRecognitionArrayDataBean().size() == 0)) { clsRecognitionCtlBean.setRecognitionUpdateDisabled(true); } /* 画面設定 */ clsRecognitionCtlBean.setRecognitionScreen(ETEX_RECOGNITION_SCREEN_RECOGNITION); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_END); }
/** * メソッド概要 ・データ(精算情報表示用)の読み込みコントロール * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionReadCtl() { /* DB接続ハンドル */ CEtexGeneralDbHandle clsParamDbHandle = null; /* データ情報 */ CEtexRecognitionDataBean clsDataBean = null; /* データ情報格納リスト */ ArrayList arraData = null; /* 編集バッファ */ String stgbuf = null; /* DB接続ハンドル生成 */ clsParamDbHandle = new CEtexGeneralDbHandle(); /* リストデータ生成 */ arraData = new ArrayList(); /* DBオープン */ fEtexGeneralDbUtilOpen(clsParamDbHandle); /* DBのExceptionエラー用のtry */ try { /* DB検索 */ fEtexGeneralDbUtilSelect( clsParamDbHandle, fEtexExecuteRecognitionPublishSql(ETEX_RECOGNITION_DB_SELECT_EITD100, null)); /* データ読み込み */ for (int intCnt = 0; fEtexGeneralDbUtilSeek(clsParamDbHandle); intCnt++) { clsDataBean = new CEtexRecognitionDataBean(); /* 承認チェックボックス */ clsDataBean.setRecognitionDark_1( fEtexExecuteRecognitionGetDark_1( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100170C"))); /* 解除チェックボックス */ clsDataBean.setRecognitionDark_2( fEtexExecuteRecognitionGetDark_2( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100170C"))); /* 社員コード */ clsDataBean.setRecognitionDataStaff( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "MD010010V")); /* 社員名 */ clsDataBean.setRecognitionDataName( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "MD010110V")); /* 年/月/日(yyyy/mm/dd) */ stgbuf = fEtexGeneralStringUtilFormatChk( ETEX_RECOGNITION_FORMAT_YYYYMMDD, fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100020V"), ETEX_RECOGNITION_STRING_EMPTY_YYYYMMDD); clsDataBean.setRecognitionDataDate(stgbuf); /* 月/日(mm/dd) */ stgbuf = fEtexGeneralStringUtilFormatChk( ETEX_RECOGNITION_FORMAT_MMDD, fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100020V").substring(5, 10), ETEX_RECOGNITION_STRING_EMPTY_MMDD); clsDataBean.setRecognitionDataMMDD( fEtexGeneralStringUtilReplace( stgbuf, 2, ETEX_RECOGNITION_STRING_SLASH, ETEX_RECOGNITION_STRING_EMPTY_MMDD)); /* 曜日(d) */ stgbuf = fEtexGeneralStringUtilFormatChk( ETEX_RECOGNITION_FORMAT_YYYYMMDD, fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100020V"), ETEX_RECOGNITION_STRING_EMPTY_YYYYMMDD); clsDataBean.setRecognitionDataToday("(" + fEtexGeneralDbUtilGetDayOfWeek(stgbuf) + ")"); /* 曜日(カラー)*/ clsDataBean.setRecognitionDataTodayColor(fEtexGeneralDbUtilGetDayOfWeekColor(stgbuf)); /* index */ clsDataBean.setRecognitionDataIndex( ETEX_GENERAL_STRING_EMPTY + fEtexGeneralDbUtilGetDataInt(clsParamDbHandle, "TD100030I")); /* 精算区分 */ clsDataBean.setRecognitionDataClassify( fEtexExecuteRecognitionGetClassify( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100170C"))); /* 訪問先 */ clsDataBean.setRecognitionDataVisit( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100100V")); /* 用件 */ clsDataBean.setRecognitionDataMatter( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100110V")); /* from */ clsDataBean.setRecognitionDataFrom( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100120V")); /* きごう*/ clsDataBean.setRecognitionDataArrow( fEtexExecuteRecognitionGetArrow( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100130C"))); /* to */ clsDataBean.setRecognitionDataTo( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "TD100140V")); /* 機関 */ clsDataBean.setRecognitionDataFacility( fEtexGeneralDbUtilGetFacility( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "MD120010C"))); /* 金額*/ clsDataBean.setRecognitionDataMoney( fEexGeneralNumericalUtilCnvStringMoney( fEtexGeneralDbUtilGetDataInt(clsParamDbHandle, "TD100150N"))); /* リスト追加 */ arraData.add(clsDataBean); } } catch (Exception e) { /* DBのExceptionエラーをCatchする為のcatch */ /* 例外情報設定 */ fEtexGeneralExceptionUtilSetRequest(clsRecognitionCtlBean.getRecognitionRequest(), e); /* 例外情報表示 */ System.err.println("CEtexRecognitionExecute:fEtexExecuteRecognitionReadCtl:" + e.toString()); } /* DBクローズ */ fEtexGeneralDbUtilClose(clsParamDbHandle); /* リストデータ格納 */ clsRecognitionCtlBean.setRecognitionArrayDataBean(arraData); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_SCREEN_ADJUST); }
/** * メソッド概要 ・データベース登録コントロールを行う * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionEntryCtl() { /* DB接続ハンドル */ CEtexGeneralDbHandle clsParamDbHandle = null; /* DB接続ハンドル生成 */ clsParamDbHandle = new CEtexGeneralDbHandle(); /* DBオープン */ fEtexGeneralDbUtilOpen(clsParamDbHandle); /* DBのExceptionエラー用のtry */ try { /* 承認チェックボックスにチェックが存在するかチェック */ if ((clsRecognitionCtlBean.getRecognitionChkAllSet() != null) && (clsRecognitionCtlBean.getRecognitionChkAllSet().length != 0)) { /* 承認チェック数ループする */ for (int intCnt = 0; intCnt < clsRecognitionCtlBean.getRecognitionChkAllSet().length; intCnt++) { /* 承認チェックした内容でDBを検索 */ fEtexGeneralDbUtilSelect( clsParamDbHandle, fEtexExecuteRecognitionPublishSql( ETEX_RECOGNITION_DB_SELECT_EITD100_EX, ETEX_GENERAL_STRING_EMPTY + intCnt)); /* 検索結果が存在するかチェック */ if (fEtexGeneralDbUtilSeek(clsParamDbHandle)) { /* データが存在するので更新を行う */ fEtexGeneralDbUtilUpdate( clsParamDbHandle, fEtexExecuteRecognitionPublishSql( ETEX_RECOGNITION_DB_UPDATE_EITD100, ETEX_GENERAL_STRING_EMPTY + intCnt)); } else { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_SELECT); } } } /* 解除チェックボックスにチェックが存在するかチェック */ if ((clsRecognitionCtlBean.getRecognitionChkAllReSet() != null) && (clsRecognitionCtlBean.getRecognitionChkAllReSet().length != 0)) { /* 解除チェック数ループする */ for (int intCnt = 0; intCnt < clsRecognitionCtlBean.getRecognitionChkAllReSet().length; intCnt++) { /* 解除チェックした内容でDBを検索 */ fEtexGeneralDbUtilSelect( clsParamDbHandle, fEtexExecuteRecognitionPublishSql( ETEX_RECOGNITION_DB_SELECT_EITD100_EX2, ETEX_GENERAL_STRING_EMPTY + intCnt)); /* 検索結果が存在するかチェック */ if (fEtexGeneralDbUtilSeek(clsParamDbHandle)) { /* データが存在するので更新を行う */ fEtexGeneralDbUtilUpdate( clsParamDbHandle, fEtexExecuteRecognitionPublishSql( ETEX_RECOGNITION_DB_UPDATE_EITD100_EX, ETEX_GENERAL_STRING_EMPTY + intCnt)); } else { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_SELECT); } } } } catch (Exception e) { /* DBのExceptionエラーをCatchする為のcatch */ /* 例外情報設定 */ fEtexGeneralExceptionUtilSetRequest(clsRecognitionCtlBean.getRecognitionRequest(), e); /* 例外情報表示 */ System.err.println("CEtexRecognitionExecute:fEtexExecuteRecognitionEntryCtl:" + e.toString()); } /* DBクローズ */ fEtexGeneralDbUtilClose(clsParamDbHandle); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_READ); }
/** * メソッド概要 ・入力データのチェックを行う * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionDataCtl() { /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_READ); /* 起動種別によるswitch */ switch (Integer.parseInt(clsRecognitionCtlBean.getRecognitionBootMode())) { case ETEX_RECOGNITION_BOOT_SELECT_MONTH_CNV: /* 対象年月変更呼び出し */ case ETEX_RECOGNITION_BOOT_BEFORE_MONTH: /* 前月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_NEXT_MONTH: /* 次月遷移変更呼び出し */ case ETEX_RECOGNITION_BOOT_SELECT_STAFF_CNV: /* 対象者変更呼び出 */ case ETEX_RECOGNITION_BOOT_SELECT_RETIRE_CNV: /* 退職者チェック呼び出し */ /* 対象年月入力チェック */ if ((clsRecognitionCtlBean.getRecognitionSerchDate() == null) || (clsRecognitionCtlBean.getRecognitionSerchDate().equals("") == true)) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_INPUT_TARGET_DATE); return; } /* 対象年月形式/対象年月有効範囲チェック */ if (fEtexGeneralDateUtilYYYYMMMMDDChk( ETEX_GENERAL_DATE_MODE_YM, clsRecognitionCtlBean.getRecognitionSerchDate()) != true) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_FORMAT_TARGET_DATE); return; } break; default: /* 承認日付入力チェック */ if ((clsRecognitionCtlBean.getRecognitionDate() == null) || (clsRecognitionCtlBean.getRecognitionDate().equals("") == true)) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_INPUT_DATE); return; } /* 承認日付形式/承認日付有効範囲チェック */ if (fEtexGeneralDateUtilYYYYMMMMDDChk( ETEX_GENERAL_DATE_MODE_YMD, clsRecognitionCtlBean.getRecognitionDate()) != true) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_FORMAT_DATE); return; } /* 対象年月入力チェック */ if ((clsRecognitionCtlBean.getRecognitionSerchDate() == null) || (clsRecognitionCtlBean.getRecognitionSerchDate().equals("") == true)) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_INPUT_TARGET_DATE); return; } /* 対象年月形式/対象年月有効範囲チェック */ if (fEtexGeneralDateUtilYYYYMMMMDDChk( ETEX_GENERAL_DATE_MODE_YM, clsRecognitionCtlBean.getRecognitionSerchDate()) != true) { /* エラー */ clsRecognitionCtlBean.setRecognitionErr(ETEX_RECOGNITION_ERR_FORMAT_TARGET_DATE); return; } /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_ENYRY); break; } }
/** * メソッド概要 ・画面の各種チェックボックスを設定する * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetChkBox() { /* 全承認チェック */ clsRecognitionCtlBean.setRecognitionChkMainAllSet(ETEX_GENERAL_STRING_EMPTY); /* 全解除チェック */ clsRecognitionCtlBean.setRecognitionChkMainAllReSet(ETEX_GENERAL_STRING_EMPTY); /* 承認チェックボックスにチェックが存在するかチェック */ if ((clsRecognitionCtlBean.getRecognitionChkAllSet() != null) && (clsRecognitionCtlBean.getRecognitionChkAllSet().length != 0)) { /* 承認チェックボックスの初期化用エリア生成 */ String stgClear[] = new String[clsRecognitionCtlBean.getRecognitionChkAllSet().length]; /* 承認チェック数ループする */ for (int intCnt = 0; intCnt < clsRecognitionCtlBean.getRecognitionChkAllSet().length; intCnt++) { /* クリア */ stgClear[intCnt] = ETEX_GENERAL_STRING_EMPTY; } /* 設定 */ clsRecognitionCtlBean.setRecognitionChkAllSet(stgClear); } /* 解除チェックボックスにチェックが存在するかチェック */ if ((clsRecognitionCtlBean.getRecognitionChkAllReSet() != null) && (clsRecognitionCtlBean.getRecognitionChkAllReSet().length != 0)) { /* 解除チェックボックスの初期化用エリア生成 */ String stgClear[] = new String[clsRecognitionCtlBean.getRecognitionChkAllReSet().length]; /* 解除チェック数ループする */ for (int intCnt = 0; intCnt < clsRecognitionCtlBean.getRecognitionChkAllReSet().length; intCnt++) { /* クリア */ stgClear[intCnt] = ETEX_GENERAL_STRING_EMPTY; } /* 設定 */ clsRecognitionCtlBean.setRecognitionChkAllReSet(stgClear); } }
/** * メソッド概要 ・ユーザー名一覧を設定する * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionSetAllStaffName() { /* 社員名 */ String stgSelectStaff = null; /* 選択オプション */ String stgSelect = null; /* DB接続ハンドル */ CEtexGeneralDbHandle clsParamDbHandle = null; /* 一覧情報格納リスト */ ArrayList arrayDispData = null; /* 画面表示データBean */ CEtexRecognitionDispBean clsDispBean = null; /* リクエスト情報 */ HttpServletRequest hpRequest = null; /* リクエスト情報取得 */ hpRequest = clsRecognitionCtlBean.getRecognitionRequest(); /* DB接続ハンドル生成 */ clsParamDbHandle = new CEtexGeneralDbHandle(); /* リストデータ生成 */ arrayDispData = new ArrayList(); /* 選択されているユーザ情報取得 */ stgSelectStaff = clsRecognitionCtlBean.getRecognitionSerchStaffCode(); /* 「全員」項目情報設定 */ clsDispBean = new CEtexRecognitionDispBean(); /* 選択オプション情報設定 */ clsDispBean.setRecognitionDispStaffSelect(ETEX_RECOGNITION_SELECT); /* 対象ユーザー社員コード設定 */ clsDispBean.setRecognitionDispStaffCode("000-0000"); /* 対象ユーザー名前設定 */ clsDispBean.setRecognitionDispStaffName("全員"); /* 対象ユーザーよみがな設定 */ clsDispBean.setRecognitionDispStaffKana("ALL"); /* リスト追加 */ arrayDispData.add(clsDispBean); /* DBオープン */ fEtexGeneralDbUtilOpen(clsParamDbHandle); /* DBのExceptionエラー用のtry */ try { /* DB検索 */ fEtexGeneralDbUtilSelect( clsParamDbHandle, fEtexExecuteRecognitionPublishSql(ETEX_RECOGNITION_DB_SELECT_EIMD010_EX, null)); /* 検索結果が存在するかチェック */ while (fEtexGeneralDbUtilSeek(clsParamDbHandle) == true) { /* 画面表示Bean生成 */ clsDispBean = new CEtexRecognitionDispBean(); /* リスト追加 */ /* 対象ユーザと検索結果のユーザー情報が一致するかチェック */ if (stgSelectStaff.equals(fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "md010010v")) == true) { stgSelect = ETEX_RECOGNITION_SELECT; } else { stgSelect = ETEX_GENERAL_STRING_EMPTY; } /* 選択オプション情報設定 */ clsDispBean.setRecognitionDispStaffSelect(stgSelect); /* 対象ユーザー社員コード設定 */ clsDispBean.setRecognitionDispStaffCode( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "md010010v")); /* 対象ユーザー名前設定 */ clsDispBean.setRecognitionDispStaffName( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "md010110v")); /* 対象ユーザーよみがな設定 */ clsDispBean.setRecognitionDispStaffKana( fEtexGeneralDbUtilGetDataString(clsParamDbHandle, "md010120v")); /* リスト追加 */ arrayDispData.add(clsDispBean); } } catch (Exception e) { /* DBのExceptionエラーをCatchする為のcatch */ /* 例外情報設定 */ fEtexGeneralExceptionUtilSetRequest(hpRequest, e); /* 例外情報表示 */ System.err.println( "CEtexRecognitionExecute:fEtexExecuteRecognitionSetAllStaffName:" + e.toString()); } /* DBクローズ */ fEtexGeneralDbUtilClose(clsParamDbHandle); /* 設定 */ clsRecognitionCtlBean.setRecognitionArrayDispBean(arrayDispData); }
/** * メソッド概要 ・異常時のコントロールを行う * * @param ・なし * @return ・なし */ public void fEtexExecuteRecognitionExceptionCtl() { /* 画面設定 */ clsRecognitionCtlBean.setRecognitionScreen(ETEX_RECOGNITION_SCREEN_LOGOUT); /* 次フェーズの設定 */ clsRecognitionCtlBean.setRecognitionPhase(ETEX_RECOGNITION_PHASE_END); }