/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param req リクエスト * @return エラー * @throws SQLException SQL実行例外 */ public ActionErrors validate030(Connection con, HttpServletRequest req) throws SQLException { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; GsMessage gsMsg = new GsMessage(); // 送信先 String textSendMember = gsMsg.getMessage(req, "project.src.35"); // 送信先 // 未選択チェック if (prj030sendMember__ == null || prj030sendMember__.length < 1) { msg = new ActionMessage("error.select.required.text", textSendMember); StrutsUtil.addMessage(errors, msg, "prj050status.error.select.required.text"); } else { // 削除済みチェック ArrayList<String> memList = new ArrayList<String>(); for (String member : prj030sendMember__) { memList.add(member); } CmnUsrmDao udao = new CmnUsrmDao(con); int count = udao.getCountDeleteUser(memList); if (count > 0) { msg = new ActionMessage("error.select.user.delete", textSendMember); StrutsUtil.addMessage(errors, msg, "prj050hdnTanto.error.select.user.delete"); } } return errors; }
/** * <br> * [機 能] 削除(TODO情報)ボタンクリック時の入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param buMdl セッションユーザ情報 * @param reqMdl RequestModel * @return エラー * @throws SQLException SQL実行例外 */ public ActionErrors validateDelTodo(Connection con, BaseUserModel buMdl, RequestModel reqMdl) throws SQLException { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; GsMessage gsMsg = new GsMessage(reqMdl); // 削除 String textDelete = gsMsg.getMessage("cmn.delete"); PrjCommonBiz pcBiz = new PrjCommonBiz(con, gsMsg, reqMdl); if (!pcBiz.getTodoEditKengen(getPrj030prjSid(), buMdl)) { msg = new ActionMessage("error.not.edit.permissions.project", textDelete); StrutsUtil.addMessage( errors, msg, "prj030selectEditStatus.error.not.edit.permissions.project"); return errors; } // 選択されたTODO if (prj030selectTodo__ == null || prj030selectTodo__.length < 1) { msg = new ActionMessage("error.select.required.text", GSConstProject.MSG_TODO); StrutsUtil.addMessage(errors, msg, "prj030selectTodo.error.select.required.text"); } if (errors.isEmpty()) { List<Integer> prjSidList = new ArrayList<Integer>(); prjSidList.add(getPrj030prjSid()); validateCanEditTodo(errors, con, buMdl, prjSidList, "prj030selectTodo", textDelete, reqMdl); } return errors; }
/** * <br> * [機 能] 経路に追加ボタン押下時処理を行う <br> * [解 説] <br> * [備 考] * * @param map アクションマッピング * @param form アクションフォーム * @param req リクエスト * @param res レスポンス * @param con コネクション * @throws Exception 実行時例外 * @return ActionForward */ private ActionForward __doSetChannel( ActionMapping map, Rng020Form form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { GsMessage gsMsg = new GsMessage(); String msg2 = gsMsg.getMessage(req, "rng.25"); // 経路が選択されていない場合はエラーメッセージを表示 if (form.getRng020rctSid() < 0) { ActionErrors errors = new ActionErrors(); ActionMessage msg = new ActionMessage("error.select.required.text", msg2); StrutsUtil.addMessage(errors, msg, "rng020rctSid"); addErrors(req, errors); } else { Rng020ParamModel paramMdl = new Rng020ParamModel(); paramMdl.setParam(form); Rng020Biz biz = new Rng020Biz(con, getRequestModel(req)); biz.setChannelForTemplate(paramMdl, getSessionUserSid(req)); paramMdl.setFormData(form); } return __doDsp(map, form, req, res, con); }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param reqMdl リクエスト情報 * @return エラー */ public ActionErrors ipk070ValidateCheck(RequestModel reqMdl) { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; GsMessage gsMsg = new GsMessage(reqMdl); String textKeyword = gsMsg.getMessage("cmn.keyword"); String searchTarget = gsMsg.getMessage("cmn.search2"); // -- キーワード -- if (!StringUtil.isNullZeroStringSpace(ipk070KeyWord__)) { errors = IpkValidate.validateSearchFieldText( errors, textKeyword, ipk070KeyWord__, "ipk070KeyWord", IpkConst.MAX_LENGTH_IPAD, true); } // -- 検索対象未選択チェック -- if (ipk070SearchTarget__ == null || ipk070SearchTarget__.length == 0) { msg = new ActionMessage("error.select.required.text", searchTarget); StrutsUtil.addMessage(errors, msg, "ipk070SearchTarget"); } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param gsMsg GsMessage * @param usrSid ユーザSID * @return エラー * @throws SQLException SQL実行時例外 */ public ActionErrors validateCmnDownload(Connection con, GsMessage gsMsg, int usrSid) throws SQLException { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; if (StringUtil.isNullZeroString(binSid__)) { // 未入力 msg = new ActionMessage("error.input.required.text", gsMsg.getMessage(GSConstApi.TEXT_BIN_SID)); StrutsUtil.addMessage(errors, msg, "binSid"); } else if (!ValidateUtil.isNumber(binSid__)) { // 数字チェック msg = new ActionMessage( "error.input.number.hankaku", gsMsg.getMessage(GSConstApi.TEXT_BIN_SID)); StrutsUtil.addMessage(errors, msg, "binSid"); } if (StringUtil.isNullZeroString(smlSid__)) { // 未入力 msg = new ActionMessage("error.input.required.text", gsMsg.getMessage(GSConstApi.TEXT_SML_SID)); StrutsUtil.addMessage(errors, msg, "smlSid"); } else if (!ValidateUtil.isNumber(smlSid__)) { // 数字チェック msg = new ActionMessage( "error.input.number.hankaku", gsMsg.getMessage(GSConstApi.TEXT_SML_SID)); StrutsUtil.addMessage(errors, msg, "smlSid"); } if (errors.size() < 1) { // ショートメール添付ファイルチェック if (!__isFileOk(usrSid, con)) { msg = new ActionMessage( "search.notfound.tdfkcode", gsMsg.getMessage(GSConstApi.TEXT_TEMP_FILE)); StrutsUtil.addMessage(errors, msg, "smlSid"); } } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param req リクエスト * @return エラー * @throws SQLException SQL実行例外 */ public ActionErrors validate024(HttpServletRequest req) throws SQLException { GsMessage gsMsg = new GsMessage(); ActionErrors errors = new ActionErrors(); ActionMessage msg = null; // カテゴリ String textCategory = gsMsg.getMessage(req, "cmn.label"); if (NullDefault.getInt(prj024cateSlc__, -2) < -1) { msg = new ActionMessage("error.select.required.text", textCategory); StrutsUtil.addMessage(errors, msg, "prj020status.error.select.required.text"); } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param req リクエスト * @throws Exception 実行例外 * @return エラー */ public ActionErrors validateCheck(HttpServletRequest req) throws Exception { ActionErrors errors = new ActionErrors(); // フィルター名入力チェック GSValidateSmail.validateTextBoxInput( errors, sml340FilterName__, "sml340FilterName", getInterMessage(req, GSConstSmail.TEXT_FILTER), GSConstSmail.MAXLEN_SEARCH_KEYWORD, true); // 条件未選択 if (sml340condition1__ == null && sml340condition2__ == null && sml340condition3__ == null && sml340condition4__ == null && sml340condition5__ == null && sml340tempFile__.equals("0")) { String msgKey = "error.select.required.text"; ActionMessage msg = new ActionMessage(msgKey, getInterMessage(req, GSConstSmail.TEXT_CONDITION)); StrutsUtil.addMessage(errors, msg, "wml230condition." + msgKey); } // 条件チェック validateCondition(errors, req); // ラベル選択チェック if (sml340actionLabel__.equals("1") && sml340actionLabelValue__.equals("-1")) { String msgKey = "error.select.required.text"; ActionMessage msg = new ActionMessage(msgKey, getInterMessage(req, GSConstSmail.TEXT_SEL_LABEL)); StrutsUtil.addMessage(errors, msg, "wml230selLabel." + msgKey); } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param req リクエスト * @return errors エラー * @throws SQLException SQL実行時例外 */ public ActionErrors validateCheck(Connection con, HttpServletRequest req) throws SQLException { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; errors = GSValidateCommon.validateDateFieldText(errors, baseDay__, "baseDay", "取得開始日", false); if (!errors.isEmpty()) { return errors; } selfDataOnTop__ = NullDefault.getString(selfDataOnTop__, "1"); if (!GSValidateUtil.isNumber(selfDataOnTop__)) { msg = new ActionMessage("error.input.number.hankaku", "自己データ表示フラグ"); StrutsUtil.addMessage(errors, msg, "selfDataOnTop"); return errors; } return errors; }
/** * <br> * [機 能] ユーザ削除可能チェック <br> * [解 説] <br> * [備 考] * * @param paramMdl パラメータ情報 * @param reqMdl リクエスト情報 * @param con コネクション * @throws SQLException SQL実行時例外 * @return jsonData JSONObject */ public ActionErrors checkCanDelUsr(Sml250ParamModel paramMdl, RequestModel reqMdl, Connection con) throws SQLException { ActionErrors errors = new ActionErrors(); if (paramMdl.getSml250DefActUsrSid() > 0) { for (String sid : paramMdl.getSml250userKbnUserSelect()) { if (sid.equals(String.valueOf(paramMdl.getSml250DefActUsrSid()))) { ActionMessage msg = null; msg = new ActionMessage( "error.common.no.delete", StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250name())); StrutsUtil.addMessage(errors, msg, "usrSid"); } } } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param req リクエスト * @throws Exception 実行例外 * @return エラー */ public ActionErrors validateCheck(HttpServletRequest req) throws Exception { ActionErrors errors = new ActionErrors(); // フィルター名入力チェック GSValidateWebmail.validateTextBoxInput( errors, wml230FilterName__, "wml230FilterName", getInterMessage(req, GSConstWebmail.TEXT_FILTER), GSConstWebmail.MAXLEN_SEARCH_KEYWORD, true); // 条件未選択 if (wml230condition1__ == null && wml230condition2__ == null && wml230condition3__ == null && wml230condition4__ == null && wml230condition5__ == null && wml230tempFile__.equals("0")) { String msgKey = "error.select.required.text"; ActionMessage msg = new ActionMessage(msgKey, getInterMessage(req, GSConstWebmail.TEXT_CONDITION)); StrutsUtil.addMessage(errors, msg, "wml230condition." + msgKey); } // 条件チェック validateCondition(errors, req); // 転送先メールアドレスチェック if (!(wml230actionSend__.equals("0"))) { List<String> addressList = new ArrayList<String>(); for (int sendNo = 0; sendNo < wml230actionSendValue__.length; sendNo++) { String fwAddress = wml230actionSendValue__[sendNo]; boolean errorFlg = GSValidateWebmail.validateMailTextBoxInput( errors, fwAddress, "wml230actionSendValue" + sendNo, getInterMessage(req, GSConstWebmail.TEXT_FORWARDADRESS) + (sendNo + 1), GSConstWebmail.MAXLEN_CONDITION_KEYWORD, true); // 重複チェック if (!errorFlg) { int dupIndex = addressList.indexOf(fwAddress); if (dupIndex >= 0) { String msgKey = "error.select.dup.list2"; String[] msgParam = { getInterMessage(req, GSConstWebmail.TEXT_FORWARDADRESS) + (sendNo + 1), getInterMessage(req, GSConstWebmail.TEXT_FORWARDADRESS) + (dupIndex + 1) }; ActionMessage msg = new ActionMessage(msgKey, msgParam); StrutsUtil.addMessage(errors, msg, "wml230actionSendValue." + sendNo + msgKey); } addressList.add(fwAddress); } } } // ラベル選択チェック if (wml230actionLabel__.equals("1") && wml230actionLabelValue__.equals("-1")) { String msgKey = "error.select.required.text"; ActionMessage msg = new ActionMessage(msgKey, getInterMessage(req, GSConstWebmail.TEXT_SEL_LABEL)); StrutsUtil.addMessage(errors, msg, "wml230selLabel." + msgKey); } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param reqMdl リクエスト情報 * @param sessionUsrSid セッションユーザSID * @return errors エラー * @throws SQLException SQL実行時例外 */ public ActionErrors validateCheck(Connection con, RequestModel reqMdl, int sessionUsrSid) throws SQLException { ActionErrors errors = new ActionErrors(); ActionMessage msg = null; boolean errorFlg = false; GsMessage gsMsg = new GsMessage(reqMdl); // 利用目的 未入力チェック if (StringUtil.isNullZeroString(rsv210Mokuteki__)) { msg = new ActionMessage("error.input.required.text", gsMsg.getMessage("reserve.72")); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; // 利用目的 桁数チェック } else if (rsv210Mokuteki__.length() > GSConstReserve.MAX_LENGTH_MOKUTEKI) { msg = new ActionMessage( "error.input.length.text", gsMsg.getMessage("reserve.72"), String.valueOf(GSConstReserve.MAX_LENGTH_MOKUTEKI)); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; // 利用目的 スペースのみチェック } else if (ValidateUtil.isSpace(rsv210Mokuteki__)) { msg = new ActionMessage("error.input.spase.only", gsMsg.getMessage("reserve.72")); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; // 利用目的 先頭スペースチェック } else if (ValidateUtil.isSpaceStart(rsv210Mokuteki__)) { msg = new ActionMessage("error.input.spase.start", gsMsg.getMessage("reserve.72")); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; // 利用目的 タブスペースチェック } else if (ValidateUtil.isTab(rsv210Mokuteki__)) { msg = new ActionMessage("error.input.tab.text", gsMsg.getMessage("reserve.72")); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; // 利用目的 JIS第2水準チェック } else if (!GSValidateUtil.isGsJapaneaseString(rsv210Mokuteki__)) { // 利用不可能な文字を入力した場合 String nstr = GSValidateUtil.getNotGsJapaneaseString(rsv210Mokuteki__); msg = new ActionMessage("error.input.njapan.text", gsMsg.getMessage("reserve.72"), nstr); StrutsUtil.addMessage(errors, msg, "rsv210Mokuteki"); errorFlg = true; } // 時間大小チェック String timeFrom = StringUtil.toDecFormat(rsv210SelectedHourFr__, "00") + StringUtil.toDecFormat(rsv210SelectedMinuteFr__, "00"); String timeTo = StringUtil.toDecFormat(rsv210SelectedHourTo__, "00") + StringUtil.toDecFormat(rsv210SelectedMinuteTo__, "00"); boolean timeError = Integer.parseInt(timeFrom) >= Integer.parseInt(timeTo); if (timeError) { msg = new ActionMessage( "error.input.comp.text", gsMsg.getMessage("reserve.159"), gsMsg.getMessage("cmn.start.lessthan.end")); StrutsUtil.addMessage(errors, msg, "rsvtime"); errorFlg = true; } // 内容 if (!StringUtil.isNullZeroString(rsv210Naiyo__)) { // 内容 桁数チェック if (rsv210Naiyo__.length() > GSConstReserve.MAX_LENGTH_NAIYO) { msg = new ActionMessage( "error.input.length.textarea", gsMsg.getMessage("cmn.content"), String.valueOf(GSConstReserve.MAX_LENGTH_NAIYO)); StrutsUtil.addMessage(errors, msg, "rsv210Naiyo"); errorFlg = true; } // 内容 スペース・改行のみチェック if (ValidateUtil.isSpaceOrKaigyou(rsv210Naiyo__)) { msg = new ActionMessage("error.input.spase.cl.only", gsMsg.getMessage("cmn.content")); StrutsUtil.addMessage(errors, msg, "rsv210Naiyo"); errorFlg = true; } // 内容 JIS第2水準チェック if (!GSValidateUtil.isGsJapaneaseStringTextArea(rsv210Naiyo__)) { // 利用不可能な文字を入力した場合 String nstr = GSValidateUtil.getNotGsJapaneaseStringTextArea(rsv210Naiyo__); msg = new ActionMessage("error.input.njapan.text", gsMsg.getMessage("cmn.content"), nstr); StrutsUtil.addMessage(errors, msg, "rsv210Naiyo"); errorFlg = true; } } // 予約チェック if (!errorFlg) { ArrayList<String> hiddArray = __getIkkatuKey(); RsvSisDataDao dataDao = new RsvSisDataDao(con); HashMap<Integer, Rsv210Model> map = dataDao.getIkkatuTorokuGroupMap(hiddArray); for (String key : hiddArray) { errorFlg = false; // 施設の情報を取得 String sisetuSid = key.substring(key.indexOf("-") + 1); Rsv210Model mapMdl = map.get(new Integer(sisetuSid)); if (mapMdl == null) { continue; } // 予約可能期限チェック(期限が設定されていればチェックする) String kigen = mapMdl.getRsdProp6(); if (!StringUtil.isNullZeroString(kigen)) { // 施設グループ管理者の場合は予約可能期限チェックをパスする RsvCommonBiz rsvBiz = new RsvCommonBiz(); if (!rsvBiz.isGroupAdmin(con, new Integer(sisetuSid), reqMdl.getSmodel().getUsrsid())) { UDate now = new UDate(); UDate udKigen = now.cloneUDate(); udKigen.addDay(Integer.parseInt(kigen)); String kigenYmd = udKigen.getDateString(); String keyYmd = key.substring(0, key.indexOf("-")); if (Integer.parseInt(keyYmd) > Integer.parseInt(kigenYmd)) { UDate errDay = new UDate(); errDay.setDate(keyYmd); String errDayStr = gsMsg.getMessage("cmn.year", new String[] {errDay.getStrYear()}) + errDay.getStrMonth() + gsMsg.getMessage("cmn.month") + errDay.getStrDay() + gsMsg.getMessage("cmn.day") + "(" + UDateUtil.getStrWeek(errDay.getWeek(), reqMdl) + ") " + mapMdl.getRsdName(); String kigenStr = gsMsg.getMessage("cmn.comments") + mapMdl.getRsdProp6() + gsMsg.getMessage("cmn.days.after"); msg = new ActionMessage("error.kigen.over.sisetu", errDayStr, kigenStr); StrutsUtil.addMessage(errors, msg, "sisetu" + key); errorFlg = true; } } } // 重複のチェック(重複登録 = 不可の場合にチェック) String tyohuku = mapMdl.getRsdProp7(); if (!errorFlg && !StringUtil.isNullZeroString(tyohuku) && Integer.parseInt(tyohuku) == GSConstReserve.PROP_KBN_HUKA) { RsvSisYrkDao yrkDao = new RsvSisYrkDao(con); UDate[] chkDate = __getYrkDate(key); UDate udYrk = chkDate[0]; UDate chkFrDate = chkDate[1]; UDate chkToDate = chkDate[2]; // 登録予定の時間帯に既に予約がある場合はエラー if (!yrkDao.isYrkOk(-1, Integer.parseInt(sisetuSid), chkFrDate, chkToDate)) { String errDayStr = gsMsg.getMessage("cmn.year", new String[] {udYrk.getStrYear()}) + udYrk.getStrMonth() + gsMsg.getMessage("cmn.month") + udYrk.getStrDay() + gsMsg.getMessage("cmn.day") + "(" + UDateUtil.getStrWeek(udYrk.getWeek(), reqMdl) + ") " + mapMdl.getRsdName(); msg = new ActionMessage("error.yrk.exist.reserve", errDayStr); StrutsUtil.addMessage(errors, msg, "tyohuku" + key); } } } } // スケジュール重複チェック if (!timeError) { RelationBetweenScdAndRsvChkBiz schChkBiz = new RelationBetweenScdAndRsvChkBiz(reqMdl, con); if (rsv210SchKbn__ == GSConstReserve.RSV_SCHKBN_GROUP) { String grpSid = getRsv210SchGroupSid(); if (NullDefault.getInt(grpSid, -1) >= 0) { // 例外アクセス schChkBiz.validateSpCaceGroupForSchedule( errors, grpSid, sessionUsrSid, "rsv210SchGroupSid"); // schChkBiz.validateGroupForSchedule(errors, grpSid, // sessionUsrSid, "rsv210SchGroupSid"); } } else { String[] users = getSv_users(); if (rsv210SchKbn__ == GSConstReserve.RSV_SCHKBN_USER && users != null && users.length > 0) { ArrayList<String> hiddArray = __getIkkatuKey(); List<UDate[]> dateList = new ArrayList<UDate[]>(); for (String key : hiddArray) { UDate[] chkDate = __getYrkDate(key); dateList.add(new UDate[] {chkDate[1], chkDate[2]}); } // 例外アクセス schChkBiz.validateSpCaceUserForSchedule(errors, users, sessionUsrSid, "sv_users"); schChkBiz.validateDateForSchedule( errors, dateList, users, 0, false, sessionUsrSid, "rsv210Date"); } } } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param reqMdl リクエスト情報 * @param tempDir 添付DIR * @param con DBコネクション * @param netSid ネットワークSID * @param mode インポートモード * @return エラー * @throws SQLException SQL実行例外 * @throws IOToolsException SQL実行例外 * @throws Exception 実行例外 */ public ActionErrors validateCheck( RequestModel reqMdl, String tempDir, Connection con, int netSid, String mode) throws IOToolsException, SQLException, Exception { log__.debug("=== 入力チェック ==="); ActionErrors errors = new ActionErrors(); GsMessage gsMsg = new GsMessage(reqMdl); String textSelectFile = gsMsg.getMessage("cmn.capture.file"); String textCsvFile = gsMsg.getMessage("cmn.csv.file.format"); // インポートファイルチェック // テンポラリディレクトリにあるファイル名称を取得 List<String> fileList = IOTools.getFileNames(tempDir); String saveFileName = ""; String baseFileName = ""; String eprefix = "inputFile."; if (fileList == null) { ActionMessage msg = new ActionMessage("error.select.required.text", textSelectFile); StrutsUtil.addMessage(errors, msg, eprefix + "error.select.required.text"); } else { for (int i = 0; i < fileList.size(); i++) { // ファイル名を取得 String fileName = fileList.get(i); if (!fileName.endsWith(GSConstCommon.ENDSTR_OBJFILE)) { continue; } // オブジェクトファイルを取得 ObjectFile objFile = new ObjectFile(tempDir, fileName); Object fObj = objFile.load(); if (fObj == null) { continue; } Cmn110FileModel fMdl = (Cmn110FileModel) fObj; saveFileName = fMdl.getSaveFileName(); baseFileName = fMdl.getFileName(); } boolean csvError = false; // 複数選択エラー if (fileList.size() > 2) { ActionMessage msg = new ActionMessage("error.input.notfound.file", textSelectFile); StrutsUtil.addMessage(errors, msg, eprefix + "error.input.notfound.file"); csvError = true; } else { // 拡張子チェック String strExt = StringUtil.getExtension(baseFileName); if (strExt == null || !strExt.toUpperCase().equals(".CSV")) { ActionMessage msg = new ActionMessage("error.select.required.text", textCsvFile); StrutsUtil.addMessage(errors, msg, eprefix + "error.select.required.text"); csvError = true; } } if (!csvError) { String fullPath = tempDir + saveFileName; ArrayList<String> ipadListCsv = new ArrayList<String>(); IpkCsvCheck csvCheck = new IpkCsvCheck(errors, con, netSid, mode, ipadListCsv, reqMdl); // CSVチェック csvCheck.isCsvDataOk(fullPath); } } return errors; }
/** * <br> * [機 能] 入力チェックを行う <br> * [解 説] <br> * [備 考] * * @param map アクションマッピング * @param req リクエスト * @param con コネクション * @param sessionUsrSid ユーザSID * @return エラー * @throws SQLException SQL実行時例外 */ public Map<Integer, ActionErrors> validateCheck( ActionMapping map, HttpServletRequest req, Connection con, int sessionUsrSid) throws SQLException { ActionMessage msg = null; GsMessage gsMsg = new GsMessage(); // 行番号とエラー内容を格納するMAP Map<Integer, ActionErrors> errorsMap = new TreeMap<Integer, ActionErrors>(); for (Ntp030Param ntpData : ntp030nippouDataList__) { ActionErrors errors = new ActionErrors(); String number = String.valueOf(ntpData.getRowId()); String ntpYear = String.valueOf(ntpData.getNtpYear()); String ntpMonth = String.valueOf(ntpData.getNtpMonth()); String ntpDay = String.valueOf(ntpData.getNtpDay()); String frHour = String.valueOf(ntpData.getFrHour()); String frMin = String.valueOf(ntpData.getFrMin()); String toHour = String.valueOf(ntpData.getToHour()); String toMin = String.valueOf(ntpData.getToMin()); String title = String.valueOf(ntpData.getTitle()); String naiyou = String.valueOf(ntpData.getValueStr()); // 開始年月日チェックフラグ(true=入力OK、false=NG) boolean fromOk = false; int iSYear = -1; if (!StringUtil.isNullZeroStringSpace(ntpYear)) { iSYear = Integer.parseInt(ntpYear); } int iSMonth = Integer.parseInt(ntpMonth); int iSDay = Integer.parseInt(ntpDay); UDate frDate = new UDate(); frDate.setDate(iSYear, iSMonth, iSDay); frDate.setSecond(GSConstSchedule.DAY_START_SECOND); frDate.setMilliSecond(GSConstSchedule.DAY_START_MILLISECOND); if (frDate.getYear() != iSYear || frDate.getMonth() != iSMonth || frDate.getIntDay() != iSDay) { msg = new ActionMessage( "error.input.notfound.date", gsMsg.getMessage(req, "schedule.sch100.10")); errors.add("error.input.notfound.date", msg); log__.debug("error:1"); } else { fromOk = true; } // 終了年月日チェックフラグ(true=入力OK、false=NG) boolean toOk = false; int iEYear = -1; if (!StringUtil.isNullZeroStringSpace(ntpYear)) { iEYear = Integer.parseInt(ntpYear); } int iEMonth = Integer.parseInt(ntpMonth); int iEDay = Integer.parseInt(ntpDay); UDate toDate = new UDate(); toDate.setDate(iEYear, iEMonth, iEDay); toDate.setSecond(GSConstSchedule.DAY_START_SECOND); toDate.setMilliSecond(GSConstSchedule.DAY_START_MILLISECOND); if (toDate.getYear() != iEYear || toDate.getMonth() != iEMonth || toDate.getIntDay() != iEDay) { msg = new ActionMessage( "error.input.notfound.date", gsMsg.getMessage(req, "schedule.sch100.15")); errors.add("error.input.notfound.date", msg); log__.debug("error:2"); } else { toOk = true; } if (fromOk && toOk && ntp030TimeKbn__.equals(String.valueOf(GSConstSchedule.TIME_EXIST))) { if (frHour.equals("-1") || frMin.equals("-1") || toHour.equals("-1") || toMin.equals("-1")) { // 時分 String textHourMinute = gsMsg.getMessage(req, "schedule.src.36"); msg = new ActionMessage("error.input.required.text", textHourMinute); errors.add("" + "error.input.required.text", msg); fromOk = false; } } // 個別チェックOKの場合 if (fromOk && toOk) { if (ntp030TimeKbn__.equals(String.valueOf(GSConstSchedule.TIME_EXIST))) { if (frHour.equals("-1") && frMin.equals("-1")) { frDate.setHour(GSConstSchedule.DAY_START_HOUR); frDate.setMinute(GSConstSchedule.DAY_START_MINUTES); } else { frDate.setHour(Integer.parseInt(frHour)); frDate.setMinute(Integer.parseInt(frMin)); } if (toHour.equals("-1") && toMin.equals("-1")) { toDate.setHour(GSConstSchedule.DAY_END_HOUR); toDate.setMinute(GSConstSchedule.DAY_SYSMAX_MINUTES); } else { toDate.setHour(Integer.parseInt(toHour)); toDate.setMinute(Integer.parseInt(toMin)); } } else { frDate.setZeroHhMmSs(); toDate.setMaxHhMmSs(); } // from~to大小チェック if (frDate.compare(frDate, toDate) != UDate.LARGE) { // 開始 < 終了 String textStartLessEnd = gsMsg.getMessage(req, "cmn.start.lessthan.end"); // 開始・終了 String textStartEnd = gsMsg.getMessage(req, "cmn.start.end"); msg = new ActionMessage("error.input.comp.text", textStartEnd, textStartLessEnd); errors.add("" + "error.input.comp.text", msg); log__.debug("error:5"); } } // タイトルのチェック if (__checkNoInput(errors, title, "ntp030Title", gsMsg.getMessage(req, "cmn.title"))) { if (__checkRange( errors, title, "ntp030Title", gsMsg.getMessage(req, "cmn.title"), GSConstSchedule.MAX_LENGTH_TITLE)) { // 先頭スペースチェック if (ValidateUtil.isSpaceStart(title)) { // タイトル String textTitle = gsMsg.getMessage(req, "cmn.title"); msg = new ActionMessage("error.input.spase.start", textTitle); StrutsUtil.addMessage(errors, msg, "ntp030Title"); } else { __checkJisString(errors, title, "ntp030Title", gsMsg.getMessage(req, "cmn.title")); } } } boolean valueError = false; // 内容のチェック if (__checkRangeTextarea( errors, naiyou, "ntp030Value", gsMsg.getMessage(req, "cmn.content"), GSConstSchedule.MAX_LENGTH_VALUE)) { if (!StringUtil.isNullZeroString(naiyou)) { // スペースのみチェック if (!valueError && ValidateUtil.isSpaceOrKaigyou(naiyou)) { msg = new ActionMessage( "error.input.spase.cl.only", gsMsg.getMessage(req, "cmn.content")); StrutsUtil.addMessage(errors, msg, "ntp030Value"); valueError = true; } if (!valueError) { // JIS __checkJisString(errors, naiyou, "ntp030Value", gsMsg.getMessage(req, "cmn.content")); } } } if (errors.size() > 0) { errorsMap.put(Integer.valueOf(number), errors); } } return errorsMap; }