/** * <br> * [機 能] ポータル情報の更新処理を行う <br> * [解 説] <br> * [備 考] * * @param paramMdl パラメータ情報 * @param con コネクション * @param userSid セッションユーザSID * @param cntCon MlCountMtController * @throws SQLException SQL実行例外 */ public void updateData( Ptl050knParamModel paramMdl, Connection con, MlCountMtController cntCon, int userSid) throws SQLException { PtlPortalDao ptlDao = new PtlPortalDao(con); PtlPortalConfReadDao ptlConfReadDao = new PtlPortalConfReadDao(con); UDate now = new UDate(); // ポータルSID採番 int ptlSid = paramMdl.getPtlPortalSid(); // ポータル情報の登録 PtlPortalModel ptlModel = new PtlPortalModel(); ptlModel.setPtlSid(ptlSid); ptlModel.setPtlName(NullDefault.getString(paramMdl.getPtl050name(), "")); ptlModel.setPtlOpen(paramMdl.getPtl050openKbn()); ptlModel.setPtlDescription(NullDefault.getString(paramMdl.getPtl050description(), "")); ptlModel.setPtlAccess(paramMdl.getPtl050accessKbn()); ptlModel.setPtlEuid(userSid); ptlModel.setPtlEdate(now); ptlDao.update(ptlModel); // ポータル閲覧設定の削除 ptlConfReadDao.delete(ptlSid); // ポータル閲覧設定の登録 if (paramMdl.getPtl050accessKbn() == GSConstPortal.PTL_ACCESS_ON) { String[] memberSids = paramMdl.getPtl050memberSid(); if (memberSids != null && memberSids.length > 0) { ptlConfReadDao.insert(ptlSid, memberSids); } } }
/** * <br> * [機 能] 設定された個人設定情報をDBに保存する。 <br> * [解 説] <br> * [備 考] * * @param paramMdl Sch094ParamModel * @param umodel ユーザ基本情報モデル * @param con コネクション * @throws SQLException SQL実行エラー */ public void setPconfSetting(Sch094ParamModel paramMdl, BaseUserModel umodel, Connection con) throws SQLException { // DBより設定情報を取得。なければデフォルト値とする。 SchCommonBiz biz = new SchCommonBiz(reqMdl__); SchPriConfModel pconf = biz.getSchPriConfModel(con, umodel.getUsrsid()); // 件数 pconf.setSccDspList(paramMdl.getSch094DefLine()); pconf.setSccReload( NullDefault.getInt(paramMdl.getSch094ReloadTime(), GSConstSchedule.AUTO_RELOAD_10MIN)); pconf.setSccIniWeek( NullDefault.getInt(paramMdl.getSch094SelWeek(), GSConstSchedule.CHANGE_WEEK_TODAY)); pconf.setSccEuid(umodel.getUsrsid()); pconf.setSccEdate(new UDate()); boolean commitFlg = false; try { SchPriConfDao dao = new SchPriConfDao(con); int count = dao.updateListDisp(pconf); if (count <= 0) { // レコードがない場合は作成 dao.insert(pconf); } commitFlg = true; } catch (SQLException e) { log__.error("", e); throw e; } finally { if (commitFlg) { con.commit(); } } }
/** * to Csv String * * @return Csv String */ public String toCsvString() { StringBuffer buf = new StringBuffer(); buf.append(usrSid__); buf.append(","); buf.append(appMainKbn__); buf.append(","); buf.append(appListCount__); buf.append(","); buf.append(appDspGroup__); buf.append(","); buf.append(appDspMygroup__); buf.append(","); buf.append(appAllGroupFlg__); buf.append(","); buf.append(NullDefault.getString(appMailadr__, "")); buf.append(","); buf.append(NullDefault.getString(appTelno__, "")); buf.append(","); buf.append(appAuid__); buf.append(","); buf.append(NullDefault.getStringFmObj(appAdate__, "")); buf.append(","); buf.append(appEuid__); buf.append(","); buf.append(NullDefault.getStringFmObj(appEdate__, "")); return buf.toString(); }
/** * to Csv String * * @return Csv String */ public String toCsvString() { StringBuffer buf = new StringBuffer(); buf.append(usrSid__); buf.append(","); buf.append(msuDefaultKbn__); buf.append(","); buf.append(msuAuid__); buf.append(","); buf.append(NullDefault.getStringFmObj(msuAdate__, "")); buf.append(","); buf.append(msuEuid__); buf.append(","); buf.append(NullDefault.getStringFmObj(msuEdate__, "")); return buf.toString(); }
/** * <br> * [機 能] 選択施設から指定された施設チェックを取り消す <br> * [解 説] <br> * [備 考] * * @param map マップ * @param form フォーム * @param req リクエスト * @param res レスポンス * @param con コネクション * @return ActionForward フォワード * @throws Exception 実行時例外 */ private ActionForward __doClearHidSisetu( ActionMapping map, Rsv010Form form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { // 予約チェックがあれば除外 String delKey = NullDefault.getString(form.getRsv010ClearTargetKey(), ""); ArrayList<String> convKeyArray = new ArrayList<String>(); String[] ikkatuKey = form.getRsvIkkatuTorokuKey(); if (ikkatuKey != null && ikkatuKey.length > 0) { for (String key : ikkatuKey) { if (!key.equals(delKey)) { convKeyArray.add(key); } } String[] convKeyStr = null; if (convKeyArray.isEmpty()) { convKeyStr = new String[0]; } else { convKeyStr = (String[]) convKeyArray.toArray(new String[convKeyArray.size()]); } form.setRsvIkkatuTorokuKey(convKeyStr); } return __doInit(map, form, req, res, con); }
/** * <br> * [機 能] 表示するグループ一覧を設定する。 <br> * [解 説] <br> * [備 考] * * @param paramMdl BmkPtl020ParamModel * @param con コネクション * @throws SQLException SQL実行例外 */ private void __setGroupList(BmkPtl020ParamModel paramMdl, Connection con) throws SQLException { PtlPortalPositionParamDao paramDao = new PtlPortalPositionParamDao(con); int ptlSid = paramMdl.getPtlPortalSid(); GroupBiz grpBiz = new GroupBiz(); // 全グループのリスト ArrayList<GroupModel> tree = grpBiz.getGroupCombList(con); if (tree == null) { tree = new ArrayList<GroupModel>(); } // すでに設定されているグループのリスト List<PtlPortalPositionParamModel> list = paramDao.getParamList(ptlSid, BMK_PORTLET_PARAM1); if (list == null) { list = new ArrayList<PtlPortalPositionParamModel>(); } // グループSIDのリストを作成 List<Integer> grepSidList = new ArrayList<Integer>(); for (PtlPortalPositionParamModel model : list) { int sid = NullDefault.getInt(model.getPpmParamValue(), 0); grepSidList.add(sid); } ArrayList<GroupModel> dspList = new ArrayList<GroupModel>(); for (GroupModel grepModel : tree) { if (!grepSidList.contains(grepModel.getGroupSid())) { dspList.add(grepModel); } } paramMdl.setTree(dspList); }
/** * <br> * [機 能] アクション実行 <br> * [解 説] コントローラの役割を担います <br> * [備 考] * * @param map アクションマッピング * @param form アクションフォーム * @param req リクエスト * @param res レスポンス * @param con コネクション * @throws Exception 実行例外 * @return アクションフォーム */ public ActionForward executeAction( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { log__.debug("START"); ActionForward forward = null; Ipk100Form ipkForm = (Ipk100Form) form; con.setAutoCommit(true); // 権限チェック IpkAdminInfo ipkAdminInfo = new IpkAdminInfo(); if (!ipkAdminInfo.isGsIpAdm(getRequestModel(req), con)) { log__.debug("管理者権限無しエラー"); return map.findForward("gf_power"); } con.setAutoCommit(false); // コマンド String cmd = NullDefault.getString(ipkForm.getCmd(), ""); log__.debug("CMD = " + cmd); // 戻るボタンクリック if (cmd.equals("ipk100Return")) { forward = map.findForward("ipk100Return"); // OKボタンクリック } else if (cmd.equals("ipk100Touroku")) { forward = __doValidateCheck(map, ipkForm, req, con); // 削除ボタンクリック } else if (cmd.equals("ipk100Delete")) { forward = __doDeleteKnDsp(map, ipkForm, req); // 削除OKボタンクリック } else if (cmd.equals("ipk100DeleteOk")) { forward = __doDelete(map, ipkForm, req, res, con); // 削除cancelボタンクリック } else if (cmd.equals("deleteCancel")) { forward = __doInitAg(map, ipkForm, con); // 登録確認画面から戻ってきた場合 } else if (cmd.equals("ipk100knReturn")) { forward = __doInitAg(map, ipkForm, con); // 表示順ラジオクリック } else if (cmd.equals("radioChange")) { forward = __doInitAg(map, ipkForm, con); // 初期表示 } else { forward = __doInit(map, ipkForm, req, con); } log__.debug("END"); return forward; }
/** * <br> * [機 能] sid配列をユーザSIDリストとアカウントSIDリストに分割 <br> * [解 説] <br> * [備 考] * * @param strSids ソース配列 * @param destUsrSidList ユーザSID格納先 * @param destAccSidList アカウントSID格納先 */ protected void _splitSids( String[] strSids, List<String> destUsrSidList, List<String> destAccSidList) { if (strSids != null) { for (String strSid : strSids) { if (strSid != null && strSid.startsWith(GSConstSmail.SML_ACCOUNT_STR)) { destAccSidList.add( String.valueOf( NullDefault.getInt(strSid.substring(GSConstSmail.SML_ACCOUNT_STR.length()), -1))); } else { int usrSid = NullDefault.getInt(strSid, -1); if (usrSid > GSConstUser.USER_RESERV_SID) { destUsrSidList.add(String.valueOf(usrSid)); } } } } }
/** * <br> * [機 能] キャッシュを有効にして良いか判定を行う <br> * [解 説] ダウンロード時のみ有効にする <br> * [備 考] * * @param req リクエスト * @param form アクションフォーム * @return true:有効にする,false:無効にする */ public boolean isCacheOk(HttpServletRequest req, ActionForm form) { // CMD String cmd = NullDefault.getString(req.getParameter(GSConst.P_CMD), ""); cmd = cmd.trim(); if (cmd.equals("templateFileDownload")) { log__.debug("添付ファイルダウンロード"); return true; } return false; }
/** * <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 paramMdl パラメータ情報 * @param con コネクション * @throws SQLException SQL実行例外 */ public void setInitData(Ptl050knParamModel paramMdl, Connection con) throws SQLException { log__.debug("START"); // 説明(表示用) paramMdl.setPtl050knviewDescription( NullDefault.getString( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getPtl050description()), "")); // 閲覧メンバリストを設定する paramMdl.setPtl050knMemNameList(__getForumFullLabel(paramMdl, con)); log__.debug("End"); }
/** * <br> * [機 能] 閲覧メンバー一覧を取得する <br> * [解 説] <br> * [備 考] * * @param left 取得するユーザSID・グループSID * @param con コネクション * @return グループ一覧 * @throws SQLException SQL実行時例外 */ private ArrayList<LabelValueBean> __getForumLabel(String[] left, Connection con) throws SQLException { ArrayList<LabelValueBean> ret = new ArrayList<LabelValueBean>(); // ArrayList<Integer> grpSids = new ArrayList<Integer>(); ArrayList<String> usrSids = new ArrayList<String>(); // ユーザSIDとグループSIDを分離 if (left != null) { for (int i = 0; i < left.length; i++) { String str = NullDefault.getString(left[i], "-1"); log__.debug("str==>" + str); log__.debug("G.index==>" + str.indexOf("G")); if (str.contains(new String("G").subSequence(0, 1))) { // グループ grpSids.add(new Integer(str.substring(1, str.length()))); } else { // ユーザ usrSids.add(str); } } } LabelValueBean lavelBean = null; if (grpSids.size() > 0) { // グループ情報取得 UsidSelectGrpNameDao gdao = new UsidSelectGrpNameDao(con); ArrayList<GroupModel> glist = gdao.selectGroupNmListOrderbyClass(grpSids); for (GroupModel gmodel : glist) { lavelBean = new LabelValueBean(); lavelBean.setLabel(gmodel.getGroupName()); lavelBean.setValue("G" + String.valueOf(gmodel.getGroupSid())); ret.add(lavelBean); } } // ユーザ情報取得 UserBiz userBiz = new UserBiz(); ArrayList<BaseUserModel> ulist = userBiz.getBaseUserList(con, (String[]) usrSids.toArray(new String[usrSids.size()])); for (BaseUserModel umodel : ulist) { lavelBean = new LabelValueBean(); lavelBean.setLabel(umodel.getUsisei() + " " + umodel.getUsimei()); lavelBean.setValue(String.valueOf(umodel.getUsrsid())); ret.add(lavelBean); } return ret; }
/** * <br> * [機 能] 初期表示を行う <br> * [解 説] <br> * [備 考] * * @param paramMdl Sch094ParamModel * @param umodel ユーザ基本情報モデル * @param con コネクション * @throws SQLException SQL実行エラー */ public void setInitData(Sch094ParamModel paramMdl, BaseUserModel umodel, Connection con) throws SQLException { // DBより設定情報を取得。なければデフォルト値とする。 SchCommonBiz biz = new SchCommonBiz(reqMdl__); SchPriConfModel pconf = biz.getSchPriConfModel(con, umodel.getUsrsid()); // 件数 if (paramMdl.getSch094DefLine() < 0) { paramMdl.setSch094DefLine(pconf.getSccDspList()); } // 自動リロード時間 paramMdl.setSch094ReloadTime( NullDefault.getString( paramMdl.getSch094ReloadTime(), String.valueOf(pconf.getSccReload()))); paramMdl.setSch094TimeLabelList(__getTimeLabel()); // 週間表示開始曜日 paramMdl.setSch094SelWeek( NullDefault.getString(paramMdl.getSch094SelWeek(), String.valueOf(pconf.getSccIniWeek()))); paramMdl.setSch094WeekList(__getWeekLabel()); }
/** * <br> * [機 能] アクションを実行する <br> * [解 説] <br> * [備 考] * * @param map ActionMapping * @param form ActionForm * @param req HttpServletRequest * @param res HttpServletResponse * @param con DB Connection * @return ActionForward * @throws Exception 実行時例外 */ public ActionForward executeAction( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { log__.debug("START_Adr080"); ActionForward forward = null; Adr080Form thisForm = (Adr080Form) form; // 権限チェック forward = checkPow(map, req, con); if (forward != null) { return forward; } // コマンドパラメータ取得 String cmd = NullDefault.getString(req.getParameter("CMD"), ""); log__.debug("CMD = " + cmd); if (cmd.equals("adr080back")) { log__.debug("戻るボタンクリック"); forward = map.findForward("adr010"); } else if (cmd.equals("adr080add")) { log__.debug("追加ボタンクリック"); forward = map.findForward("adr090"); } else if (cmd.equals("adr080edit")) { log__.debug("業種名クリック"); forward = map.findForward("adr090"); } else if (cmd.equals("adr080up")) { log__.debug("上へボタンクリック"); forward = __doSortChange(map, thisForm, req, res, con, Adr080Biz.SORT_UP); } else if (cmd.equals("adr080down")) { log__.debug("下へボタンクリック"); forward = __doSortChange(map, thisForm, req, res, con, Adr080Biz.SORT_DOWN); } else { log__.debug("初期表示"); forward = __doInit(map, thisForm, req, res, con); } return forward; }
/** * <br> * [機 能] 削除処理を行う <br> * [解 説] <br> * [備 考] * * @param map マップ * @param form フォーム * @param req リクエスト * @param res レスポンス * @param con コネクション * @return ActionForward フォワード * @throws SQLException SQL実行例外 */ private ActionForward __doDelete( ActionMapping map, Ipk100Form form, HttpServletRequest req, HttpServletResponse res, Connection con) throws SQLException { ActionForward forward = null; Ipk100Biz biz = new Ipk100Biz(); int ismSid = NullDefault.getInt(form.getIsmSid(), 0); int specKbn = NullDefault.getInt(form.getSpecKbn(), 0); // スペックマスタの項目の削除を行う。 biz.deleteData(ismSid, con, getSessionUserSid(req), specKbn); // ログ出力処理 IpkBiz ipkBiz = new IpkBiz(con); String title = ""; if (specKbn == IpkConst.IPK_SPECKBN_CPU) { title = "[cpu]"; } else if (specKbn == IpkConst.IPK_SPECKBN_MEMORY) { title = "[memory]"; } else if (specKbn == IpkConst.IPK_SPECKBN_HD) { title = "[hd]"; } RequestModel reqMdl = getRequestModel(req); GsMessage gsMsg = new GsMessage(reqMdl); String textDelete = gsMsg.getMessage("cmn.delete"); ipkBiz.outPutLog(map, reqMdl, textDelete, GSConstLog.LEVEL_INFO, title + form.getIpk100name()); // 削除確認画面を設定する。 forward = __doDeleteCompDsp(map, form, req); return forward; }
/** * to Csv String * * @return Csv String */ public String toCsvString() { StringBuilder buf = new StringBuilder(); buf.append(wdrSid__); buf.append(","); buf.append(wacSid__); buf.append(","); buf.append(NullDefault.getString(wdrName__, "")); buf.append(","); buf.append(wdrType__); buf.append(","); buf.append(wdrView__); buf.append(","); buf.append(wdrDefault__); return buf.toString(); }
/** * <br> * [機 能] キャッシュを有効にして良いか判定を行う <br> * [解 説] ダウンロード時のみ有効にする <br> * [備 考] * * @param req リクエスト * @param form アクションフォーム * @return true:有効にする,false:無効にする */ public boolean isCacheOk(HttpServletRequest req, ActionForm form) { // CMD String cmd = NullDefault.getString(req.getParameter(GSConst.P_CMD), ""); cmd = cmd.trim(); if (cmd.equals("getImageFileSisetu")) { return true; } else if (cmd.equals("pdf")) { log__.debug("PDFファイルダウンロード"); return true; } return false; }
/** * <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 map ActionMapping * @param form ActionForm * @param req HttpServletRequest * @param res HttpServletResponse * @param con DB Connection * @return ActionForward * @throws Exception 実行時例外 * @see jp.groupsession.v2.sml.AbstractSmlAction * @see #executeAction(org.apache.struts.action.ActionMapping, * org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, * javax.servlet.http.HttpServletResponse, java.sql.Connection) */ public ActionForward executeSmail( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { ActionForward forward = null; Sml140knForm thisform = (Sml140knForm) form; // 編集可能かを判定 SmlCommonBiz cmnBiz = new SmlCommonBiz(getRequestModel(req)); if ((!_checkAuth(map, req, con)) && thisform.getSml140AccountSid() > 0) { if (!cmnBiz.canEditAccount( con, thisform.getSml140AccountSid(), getSessionUserModel(req).getUsrsid())) { return map.findForward("gf_msg"); } } // コマンドパラメータ取得 String cmd = NullDefault.getString(req.getParameter("CMD"), ""); cmd = cmd.trim(); // 確定ボタン押下 if (cmd.equals("delete")) { log__.debug("確定ボタン押下"); forward = __doDelete(map, thisform, req, res, con); // 戻るボタン押下 } else if (cmd.equals("back_syudo_input")) { log__.debug("戻るボタン押下"); forward = map.findForward("back_syudo_input"); // 初期表示処理 } else { log__.debug("初期表示処理"); forward = __doInit(map, thisform, req, res, con); } return forward; }
/** * <br> * [機 能] アクションを実行する <br> * [解 説] <br> * [備 考] * * @param map ActionMapping * @param form ActionForm * @param req HttpServletRequest * @param res HttpServletResponse * @param con DB Connection * @return ActionForward * @throws Exception 実行時例外 * @see jp.co.sjts.util.struts.AbstractAction * @see #executeAction(org.apache.struts.action.ActionMapping, * org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, * javax.servlet.http.HttpServletResponse, java.sql.Connection) */ public ActionForward executeAction( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { Adr200Form thisForm = (Adr200Form) form; String cmd = NullDefault.getString(req.getParameter(GSConst.P_CMD), ""); cmd = cmd.trim(); log__.debug("CMD = " + cmd); ActionForward forward = null; if (cmd.equals("registLabel")) { // OKボタンクリック forward = __doEntry(map, thisForm, req, res, con); } else { forward = __doInit(map, thisForm, req, res, con); } return forward; }
/** * <br> * [機 能] アクションを実行する <br> * [解 説] <br> * [備 考] * * @param map ActionMapping * @param form ActionForm * @param req HttpServletRequest * @param res HttpServletResponse * @param con DB Connection * @return ActionForward * @throws Exception 実行時例外 * @see jp.co.sjts.util.struts.AbstractAction * @see #executeAction(org.apache.struts.action.ActionMapping, * org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, * javax.servlet.http.HttpServletResponse, java.sql.Connection) */ public ActionForward executeAction( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { ActionForward forward = null; Rsv010Form rsvform = (Rsv010Form) form; // コマンドパラメータ取得 String cmd = NullDefault.getString(req.getParameter("CMD"), ""); cmd = cmd.trim(); // 施設設定ボタン押下 if (cmd.equals("sisetu_settei")) { log__.debug("施設設定ボタン押下"); forward = __doMoveSisetuSettei(map, rsvform, req, res, con); // 施設利用状況照会ボタン押下 } else if (cmd.equals("riyo_zyokyo_syokai")) { log__.debug("施設利用状況照会ボタン押下"); forward = __doMoveSyokai(map, rsvform, req, res, con); // 管理者設定ボタン押下 } else if (cmd.equals("kanrisya_settei")) { log__.debug("管理者設定ボタン押下"); forward = __doMoveKanri(map, rsvform, req, res, con); // 個人設定ボタン押下 } else if (cmd.equals("kozin_settei")) { log__.debug("個人設定ボタン押下"); forward = __doMoveKojin(map, rsvform, req, res, con); // 日間ボタン押下 } else if (cmd.equals("nikkan")) { log__.debug("日間ボタン押下"); forward = map.findForward("nikkan"); // 月間ボタン押下 } else if (cmd.equals("gekkan")) { log__.debug("月間ボタン押下"); forward = __doMoveGekkan(map, rsvform, req, res, con); // 前週移動ボタン押下 } else if (cmd.equals("zensyu_ido")) { log__.debug("前週移動ボタン押下"); __doMoveDays(rsvform, req, con, -7, false); forward = __doInit(map, rsvform, req, res, con); // 前日移動ボタン押下 } else if (cmd.equals("zenzitu_ido")) { log__.debug("前日移動ボタン押下"); __doMoveDays(rsvform, req, con, -1, false); forward = __doInit(map, rsvform, req, res, con); // 今日ボタン押下 } else if (cmd.equals("kyo")) { log__.debug("今日ボタン押下"); __doMoveDays(rsvform, req, con, 0, true); forward = __doInit(map, rsvform, req, res, con); // 翌日移動ボタン押下 } else if (cmd.equals("yokuzitu_ido")) { log__.debug("翌日移動ボタン押下"); __doMoveDays(rsvform, req, con, 1, false); forward = __doInit(map, rsvform, req, res, con); // 翌週移動ボタン押下 } else if (cmd.equals("yokusyu_ido")) { log__.debug("翌週移動ボタン押下"); __doMoveDays(rsvform, req, con, 7, false); forward = __doInit(map, rsvform, req, res, con); // 施設予約登録ボタン押下 } else if (cmd.equals("sisetu_add")) { log__.debug("施設予約登録ボタン押下"); forward = __doMoveYoyaku(map, rsvform, req, res, con, GSConstReserve.PROC_MODE_SINKI); // 施設予約編集リンククリック } else if (cmd.equals("sisetu_edit")) { log__.debug("施設予約編集リンククリック"); forward = __doMoveYoyaku(map, rsvform, req, res, con, GSConstReserve.PROC_MODE_EDIT); // 全て取消ボタン押下 } else if (cmd.equals("allClear")) { log__.debug("全て取消ボタン押下"); forward = __doAllClear(map, rsvform, req, res, con); // 取消ボタン押下 } else if (cmd.equals("clearHidSisetu")) { log__.debug("取消ボタン押下"); forward = __doClearHidSisetu(map, rsvform, req, res, con); // 一括予約ボタン押下 } else if (cmd.equals("ikkatu_yoyaku")) { log__.debug("一括予約ボタン押下"); forward = __doMoveIkkatu(map, rsvform, req, res, con); // 検索ボタン押下 } else if (cmd.equals("gotosearch")) { log__.debug("検索ボタン押下"); forward = __doGoToSearch(map, rsvform, req, res, con); // 再読込 } else if (cmd.equals("reload")) { log__.debug("再読込"); forward = __doReload(map, rsvform, req, res, con); // 施設・設備画像ダウンロード } else if (cmd.equals("getImageFileSisetu")) { log__.debug("施設・設備画像ダウンロード"); forward = __doGetImageFile(map, rsvform, req, res, con); } else if (cmd.equals("pdf")) { // 施設予約PDF出力 log__.debug("週間 施設予約PDFファイルダウンロード"); forward = __doDownLoadPdf(map, rsvform, req, res, con); // 初期表示処理 } else { log__.debug("初期表示処理"); forward = __doInit(map, rsvform, req, res, con); } return forward; }
/** * <br> * [機 能] アクションを実行する <br> * [解 説] <br> * [備 考] * * @param map ActionMapping * @param form ActionForm * @param req HttpServletRequest * @param res HttpServletResponse * @param con DB Connection * @return ActionForward * @throws Exception 実行時例外 */ public ActionForward executeAction( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res, Connection con) throws Exception { ActionForward forward = null; // コマンドパラメータ取得 String cmd = NullDefault.getString(req.getParameter("CMD"), ""); log__.debug("CMD = " + cmd); Rng020Form thisForm = (Rng020Form) form; if (cmd.equals("rng010")) { log__.debug("*** 稟議一覧。"); // テンポラリディレクトリの削除 IOTools.deleteDir(_getRingiDir(req)); if (thisForm.isRng020copyApply()) { forward = map.findForward("rng030"); } else if (thisForm.getRng130searchFlg() == 1) { forward = map.findForward("search"); } else { forward = map.findForward("rng010"); } } else if (cmd.equals("rng060")) { log__.debug("*** 内容テンプレート一覧。"); forward = map.findForward("rng060"); } else if (cmd.equals("upAppr")) { log__.debug("上矢印(承認経路)ボタンクリック"); forward = __doUpAppr(map, thisForm, req, res, con); } else if (cmd.equals("downAppr")) { log__.debug("下矢印(承認経路)ボタンクリック"); forward = __doDownAppr(map, thisForm, req, res, con); } else if (cmd.equals("addAppr")) { log__.debug("追加(承認経路)ボタンクリック"); thisForm.setRng020ScrollFlg("1"); forward = __doAddAppr(map, thisForm, req, res, con); } else if (cmd.equals("delAppr")) { log__.debug("削除(承認経路)ボタンクリック"); thisForm.setRng020ScrollFlg("1"); forward = __doDelAppr(map, thisForm, req, res, con); } else if (cmd.equals("addConfirm")) { log__.debug("追加(最終確認)ボタンクリック"); thisForm.setRng020ScrollFlg("1"); forward = __doAddConfirm(map, thisForm, req, res, con); } else if (cmd.equals("delConfirm")) { log__.debug("削除(最終確認)ボタンクリック"); thisForm.setRng020ScrollFlg("1"); forward = __doDelConfirm(map, thisForm, req, res, con); } else if (cmd.equals("delTemp")) { log__.debug("削除(添付ファイル)ボタンクリック"); forward = __doDelTemp(map, thisForm, req, res, con); } else if (cmd.equals("draft")) { log__.debug("草稿に保存ボタンクリック"); forward = __doEntry(map, thisForm, req, res, con, 1); } else if (cmd.equals("approval")) { log__.debug("申請ボタンクリック"); forward = __doEntry(map, thisForm, req, res, con, 0); } else if (cmd.equals("setChannel")) { log__.debug("経路に追加ボタンクリック"); forward = __doSetChannel(map, thisForm, req, res, con); } else if (cmd.equals("rng020")) { log__.debug("確認画面戻るボタンクリック"); forward = __doDsp(map, thisForm, req, res, con); } else if (cmd.equals("060back")) { log__.debug("内容テンプレート一覧画面戻るボタンクリック"); forward = __doDsp(map, thisForm, req, res, con); } else if (cmd.equals("changeGroup")) { log__.debug("グループコンボ変更"); forward = __doDsp(map, thisForm, req, res, con); } else if (cmd.equals("optbtn")) { log__.debug("テンプレート使用"); forward = __doDsp(map, thisForm, req, res, con); } else if (cmd.equals("templateFileDownload")) { log__.debug("添付ファイルダウンロード"); forward = __doDownLoad(map, thisForm, req, res, con); } else { log__.debug("*** 初期表示を行います。"); forward = __doInit(map, thisForm, req, res, con); } return forward; }
/** * <br> * [機 能] 回覧板手動削除 <br> * [解 説] <br> * [備 考] * * @param reqMdl リクエスト情報 * @param paramMdl パラメータ情報 * @throws SQLException SQL実行時例外 */ public void updateSyudoDelSetting(RequestModel reqMdl, Cir090knParamModel paramMdl) throws SQLException { // アカウントSID List<Cir150AccountModel> accountList = new ArrayList<Cir150AccountModel>(); if (paramMdl.getCir090SelKbn() == GSConstCircular.ACCOUNT_SEL) { // 指定アカウント Cir150AccountModel smlMdl = new Cir150AccountModel(reqMdl); smlMdl.setAccountSid(paramMdl.getCir090AccountSid()); smlMdl.setAccountName(paramMdl.getCir090AccountName()); accountList.add(smlMdl); paramMdl.setCir090knAccountList(accountList); } else { accountList = getAllUseAccount(reqMdl, reqMdl.getSmodel().getUsrsid(), con__); paramMdl.setCir090knAccountList(accountList); } ArrayList<CirAdelModel> jdelList = new ArrayList<CirAdelModel>(); ArrayList<CirAdelModel> sdelList = new ArrayList<CirAdelModel>(); ArrayList<CirAdelModel> ddelList = new ArrayList<CirAdelModel>(); CirInfDao cirInfDao = new CirInfDao(con__); CirViewDao cirViewDao = new CirViewDao(con__); CirAdelModel adelModel = null; // 受信 int jdelKbn = NullDefault.getInt(paramMdl.getCir090JdelKbn(), GSConstCircular.CIR_AUTO_DEL_NO); if (jdelKbn == GSConstCircular.CIR_AUTO_DEL_LIMIT) { for (Cir150AccountModel mdl : paramMdl.getCir090knAccountList()) { adelModel = new CirAdelModel(); adelModel.setCadJdelYear(Integer.parseInt(paramMdl.getCir090JYear())); adelModel.setCadJdelMonth(Integer.parseInt(paramMdl.getCir090JMonth())); adelModel.setCacSid(mdl.getAccountSid()); jdelList.add(adelModel); } } // 送信 int sdelKbn = NullDefault.getInt(paramMdl.getCir090SdelKbn(), GSConstCircular.CIR_AUTO_DEL_NO); if (sdelKbn == GSConstCircular.CIR_AUTO_DEL_LIMIT) { for (Cir150AccountModel mdl : paramMdl.getCir090knAccountList()) { adelModel = new CirAdelModel(); adelModel.setCadSdelYear(Integer.parseInt(paramMdl.getCir090SYear())); adelModel.setCadSdelMonth(Integer.parseInt(paramMdl.getCir090SMonth())); adelModel.setCacSid(mdl.getAccountSid()); sdelList.add(adelModel); } } int ddelKbn = NullDefault.getInt(paramMdl.getCir090DdelKbn(), GSConstCircular.CIR_AUTO_DEL_NO); if (ddelKbn == GSConstCircular.CIR_AUTO_DEL_LIMIT) { for (Cir150AccountModel mdl : paramMdl.getCir090knAccountList()) { adelModel = new CirAdelModel(); adelModel.setCadDdelYear(Integer.parseInt(paramMdl.getCir090DYear())); adelModel.setCadDdelMonth(Integer.parseInt(paramMdl.getCir090DMonth())); adelModel.setCacSid(mdl.getAccountSid()); ddelList.add(adelModel); } } // ゴミ箱データ削除 if (!ddelList.isEmpty()) { cirViewDao.delete(ddelList, 2); cirInfDao.delete(ddelList, 2); } if (!jdelList.isEmpty()) { // 受信タブデータ削除 cirViewDao.delete(jdelList, 1); } if (!sdelList.isEmpty()) { // 送信タブデータ削除 cirInfDao.delete(sdelList, 1); } // 削除対象の回覧板SIDを取得 CircularDao cDao = new CircularDao(con__); String[] delLst = cDao.getDelList(); // 回覧板情報を物理削除、バイナリ情報を論理削除 cDao.deleteCir(delLst, GSConstUser.SID_ADMIN); }
/** * <br> * [機 能] 初期表示設定を行う <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param paramMdl パラメータ情報 * @param reqMdl リクエスト情報 * @throws Exception 実行時例外 */ public void setInitData(Connection con, Sml250ParamModel paramMdl, RequestModel reqMdl) throws Exception { // 自動削除区分を設定 SmlCommonBiz smlBiz = new SmlCommonBiz(con, reqMdl); SmlAdminModel admMdl = new SmlAdminModel(); admMdl = smlBiz.getSmailAdminConf(reqMdl.getSmodel().getUsrsid(), con); paramMdl.setSml250autoDelKbn(admMdl.getSmaAutoDelKbn()); ArrayList<LabelValueBean> yearLabel = new ArrayList<LabelValueBean>(); ArrayList<LabelValueBean> monthLabel = new ArrayList<LabelValueBean>(); GsMessage gsMsg = new GsMessage(reqMdl); // 年リスト for (int i = 0; i <= 5; i++) { yearLabel.add( new LabelValueBean( gsMsg.getMessage("cmn.year", new String[] {String.valueOf(i)}), Integer.toString(i))); } yearLabel.add( new LabelValueBean(gsMsg.getMessage("cmn.year", new String[] {String.valueOf(10)}), "10")); paramMdl.setSml250YearLabelList(yearLabel); // 月リスト for (int i = 0; i < 12; i++) { monthLabel.add( new LabelValueBean( gsMsg.getMessage("cmn.months", new String[] {String.valueOf(i)}), Integer.toString(i))); } paramMdl.setSml250MonthLabelList(monthLabel); int sacSid = paramMdl.getSmlAccountSid(); boolean acntUserFlg = getAcntUserFlg(con, paramMdl, sacSid, admMdl); paramMdl.setSml250acntUserFlg(acntUserFlg); // 新規登録 初期表示 if (paramMdl.getSml250initFlg() == GSConstSmail.DSP_FIRST && paramMdl.getSmlCmdMode() == GSConstSmail.CMDMODE_ADD) { paramMdl.setSml250initFlg(GSConstSmail.DSP_ALREADY); if (admMdl.getSmaAutoDelKbn() == GSConstSmail.AUTO_DEL_ACCOUNT) { paramMdl.setSml250JdelKbn(String.valueOf(GSConstSmail.SML_AUTO_DEL_NO)); paramMdl.setSml250SdelKbn(String.valueOf(GSConstSmail.SML_AUTO_DEL_NO)); paramMdl.setSml250WdelKbn(String.valueOf(GSConstSmail.SML_AUTO_DEL_NO)); paramMdl.setSml250DdelKbn(String.valueOf(GSConstSmail.SML_AUTO_DEL_NO)); } // 編集 初期表示 } else if (paramMdl.getSml250initFlg() == GSConstSmail.DSP_FIRST && paramMdl.getSmlCmdMode() == GSConstSmail.CMDMODE_EDIT) { // アカウント情報を設定する SmlAccountDao accountDao = new SmlAccountDao(con); SmlAccountModel accountMdl = accountDao.select(sacSid); if (accountMdl.getUsrSid() > 0) { paramMdl.setSml250AccountKbn(GSConstSmail.ACNT_DEF); paramMdl.setSml250DefActUsrSid(accountMdl.getUsrSid()); } paramMdl.setSml250name(accountMdl.getSacName()); paramMdl.setSml250biko(accountMdl.getSacBiko()); if (acntUserFlg) { // 使用者を設定 SmlAccountUserDao accountUserDao = new SmlAccountUserDao(con); List<SmlAccountUserModel> accountUserList = accountUserDao.select(sacSid); String[] id = new String[accountUserList.size()]; for (int index = 0; index < id.length; index++) { if (accountUserList.get(index).getUsrSid() > 0) { id[index] = String.valueOf(accountUserList.get(index).getUsrSid()); } else { id[index] = "G" + String.valueOf(accountUserList.get(index).getGrpSid()); } } paramMdl.setSml250userKbnUser(id); } // 送信形式 paramMdl.setSml250sendType(accountMdl.getSacSendMailtype()); // テーマ paramMdl.setSml250theme(accountMdl.getSacTheme()); // 引用符 paramMdl.setSml250quotes(accountMdl.getSacQuotes()); if (admMdl.getSmaAutoDelKbn() == GSConstSmail.AUTO_DEL_ACCOUNT) { SmlAdelDao delDao = new SmlAdelDao(con); SmlAdelModel delMdl = delDao.select(sacSid); if (delMdl == null) { delMdl = new SmlAdelModel(); delMdl.setSadJdelKbn(GSConstSmail.SML_AUTO_DEL_NO); delMdl.setSadJdelYear(0); delMdl.setSadJdelMonth(0); delMdl.setSadSdelKbn(GSConstSmail.SML_AUTO_DEL_NO); delMdl.setSadSdelYear(0); delMdl.setSadSdelMonth(0); delMdl.setSadWdelKbn(GSConstSmail.SML_AUTO_DEL_NO); delMdl.setSadWdelYear(0); delMdl.setSadWdelMonth(0); delMdl.setSadDdelKbn(GSConstSmail.SML_AUTO_DEL_NO); delMdl.setSadDdelYear(0); delMdl.setSadDdelMonth(0); } // 受信タブ処理 選択値 paramMdl.setSml250JdelKbn( NullDefault.getStringZeroLength( paramMdl.getSml250JdelKbn(), String.valueOf(delMdl.getSadJdelKbn()))); // 受信タブ 年 paramMdl.setSml250JYear( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250JYear()), String.valueOf(delMdl.getSadJdelYear()))); // 受信タブ 月 paramMdl.setSml250JMonth( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250JMonth()), String.valueOf(delMdl.getSadJdelMonth()))); // 送信タブ処理 選択値 paramMdl.setSml250SdelKbn( NullDefault.getStringZeroLength( paramMdl.getSml250SdelKbn(), String.valueOf(delMdl.getSadSdelKbn()))); // 送信タブ 年 paramMdl.setSml250SYear( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250SYear()), String.valueOf(delMdl.getSadSdelYear()))); // 送信タブ 月 paramMdl.setSml250SMonth( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250SMonth()), String.valueOf(delMdl.getSadSdelMonth()))); // 草稿タブ処理 選択値 paramMdl.setSml250WdelKbn( NullDefault.getStringZeroLength( paramMdl.getSml250WdelKbn(), String.valueOf(delMdl.getSadWdelKbn()))); // 草稿タブ 年 paramMdl.setSml250WYear( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250WYear()), String.valueOf(delMdl.getSadWdelYear()))); // 草稿タブ 月 paramMdl.setSml250WMonth( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250WMonth()), String.valueOf(delMdl.getSadWdelMonth()))); // ゴミ箱タブ処理 選択値 paramMdl.setSml250DdelKbn( NullDefault.getStringZeroLength( paramMdl.getSml250DdelKbn(), String.valueOf(delMdl.getSadDdelKbn()))); // ゴミ箱タブ 年 paramMdl.setSml250DYear( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250DYear()), String.valueOf(delMdl.getSadDdelYear()))); // ゴミ箱タブ 月 paramMdl.setSml250DMonth( NullDefault.getStringZeroLength( StringUtilHtml.transToHTmlPlusAmparsant(paramMdl.getSml250DMonth()), String.valueOf(delMdl.getSadDdelMonth()))); } __loadAuteDest(paramMdl, con); paramMdl.setSml250initFlg(GSConstSmail.DSP_ALREADY); } // グループコンボを設定 // List<LabelValueBean> groupCombo = new ArrayList<LabelValueBean>(); // groupCombo.add(new LabelValueBean(gsMsg.getMessage("cmn.select.plz"), "-1")); // // ArrayList<GroupModel> grpList = grpBiz.getGroupCombList(con); // for (GroupModel grpMdl : grpList) { // LabelValueBean label = new LabelValueBean(grpMdl.getGroupName(), // String.valueOf(grpMdl.getGroupSid())); // groupCombo.add(label); // } // グループコンボを設定 paramMdl.setUserKbnGroupCombo(__getGroupLabelList(con, reqMdl)); // 使用者 グループコンボ、ユーザコンボを設定 // _setGroupCombo(con, paramMdl); _setUserCombo(con, paramMdl, reqMdl); // テーマコンボを設定 List<LabelValueBean> themeCombo = new ArrayList<LabelValueBean>(); themeCombo.add( new LabelValueBean( gsMsg.getMessage("cmn.notset"), String.valueOf(GSConstSmail.SAC_THEME_NOSET))); CmnThemeDao themeDao = new CmnThemeDao(con); List<CmnThemeModel> themeList = themeDao.select(); for (CmnThemeModel themeData : themeList) { themeCombo.add( new LabelValueBean(themeData.getCtmName(), String.valueOf(themeData.getCtmSid()))); } paramMdl.setSml250themeList(themeCombo); // 引用符コンボを設定 List<LabelValueBean> quotesCombo = new ArrayList<LabelValueBean>(); int[] quotesList = { GSConstSmail.SAC_QUOTES_DEF, GSConstSmail.SAC_QUOTES_NONE, GSConstSmail.SAC_QUOTES_2, GSConstSmail.SAC_QUOTES_3, GSConstSmail.SAC_QUOTES_4, GSConstSmail.SAC_QUOTES_5 }; for (int quotes : quotesList) { quotesCombo.add( new LabelValueBean( SmlCommonBiz.getViewMailQuotes(quotes, reqMdl), Integer.toString(quotes))); } paramMdl.setSml250quotesList(quotesCombo); /** ********************** 転送設定 ******************************** */ paramMdl.setSml250tensoKbn(admMdl.getSmaMailfw()); if (paramMdl.getSmlAccountMode() == GSConstSmail.ACCOUNTMODE_COMMON && paramMdl.getSml250tensoKbn() == GSConstSmail.MAIL_FORWARD_OK) { // /** グループコンボセット **************************************************/ // GroupBiz biz = new GroupBiz(); // paramMdl.setSml250GpLabelList(biz.getGroupTreeLabelList( // con, true, gsMsg, paramMdl.getSml250userKbnGroup())); /** 現在選択中のメンバーコンボセット ************************************* */ // UserBiz userBiz = new UserBiz(); paramMdl.setSml250MbLabelList((__getMemberList(paramMdl.getSml250userSid(), con))); /** 追加用メンバーコンボセット ******************************************* */ // デフォルトユーザ存在フラグ boolean defUsrFlg = false; Map<String, String> usrSidMap = new HashMap<String, String>(); // グループSID // int gpSid = NullDefault.getInt(paramMdl.getSml250groupSid(), -1); // 除外するユーザSID ArrayList<Integer> usrSids = new ArrayList<Integer>(); String[] userSids = paramMdl.getSml250userSid(); if (userSids != null) { for (int i = 0; i < userSids.length; i++) { usrSids.add(new Integer(NullDefault.getInt(userSids[i], -1))); usrSidMap.put(userSids[i], userSids[i]); if (new Integer(NullDefault.getInt(userSids[i], -1)) == paramMdl.getSml250DefActUsrSid()) { defUsrFlg = true; } } } // List<CmnUsrmInfModel> usList = null; List<LabelValueBean> labelListAdd = new ArrayList<LabelValueBean>(); // if (paramMdl.getSml250userKbn() != USERKBN_USER) { // usList = userBiz.getBelongUserList(con, gpSid, usrSids); // for (int i = 0; i < usList.size(); i++) { // CmnUsrmInfModel cuiMdl = usList.get(i); // labelListAdd.add(new LabelValueBean(cuiMdl.getUsiSei() + // cuiMdl.getUsiMei(), // String.valueOf(cuiMdl.getUsrSid()))); // } // } else { for (LabelValueBean lv : paramMdl.getUserKbnUserSelectCombo()) { if (!usrSidMap.containsKey(lv.getValue())) { labelListAdd.add(lv); } } // } // デフォルトユーザを追加 for (LabelValueBean lv : labelListAdd) { if (lv.getValue().equals(String.valueOf(paramMdl.getSml250DefActUsrSid()))) { defUsrFlg = true; } } if (!defUsrFlg && paramMdl.getSml250DefActUsrSid() > 0) { labelListAdd.add( new LabelValueBean( paramMdl.getSml250name(), String.valueOf(paramMdl.getSml250DefActUsrSid()))); } paramMdl.setSml250AdLabelList(labelListAdd); // メールアドレスコンボ設定 paramMdl.setSml250MailList(__getMailCombo(reqMdl)); } _setAutoDestDisp(paramMdl, con); }
/** * <br> * [機 能] ユーザコンボを設定する <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param paramMdl パラメータ情報 * @param reqMdl リクエスト情報 * @throws SQLException SQL実行時例外 */ protected void _setUserCombo(Connection con, Sml250ParamModel paramMdl, RequestModel reqMdl) throws SQLException { GsMessage gsMsg = new GsMessage(reqMdl); int grpSid = NullDefault.getInt(paramMdl.getSml250userKbnUserGroup(), -1); String[] selectUserSid = paramMdl.getSml250userKbnUser(); if (selectUserSid == null) { selectUserSid = new String[0]; } // デフォルトユーザを設定 if (paramMdl.getSml250DefActUsrSid() > 0) { boolean defFlg = false; ArrayList<String> usrSidList = new ArrayList<String>(); for (String usid : selectUserSid) { usrSidList.add(usid); if (usid.equals(String.valueOf(paramMdl.getSml250DefActUsrSid()))) { defFlg = true; } } if (!defFlg) { usrSidList.add(String.valueOf(paramMdl.getSml250DefActUsrSid())); } paramMdl.setSml250userKbnUser((String[]) usrSidList.toArray(new String[usrSidList.size()])); selectUserSid = (String[]) usrSidList.toArray(new String[usrSidList.size()]); } Arrays.sort(selectUserSid); // // UserBiz userBiz = new UserBiz(); // ArrayList<BaseUserModel> ulist // = userBiz.getBaseUserList(con, selectUserSid); // LabelValueBean labelBean = null; // List <LabelValueBean> selectUserList = new ArrayList<LabelValueBean>(); // for (BaseUserModel umodel : ulist) { // labelBean = new LabelValueBean(); // labelBean.setLabel(umodel.getUsisei() + " " + umodel.getUsimei()); // labelBean.setValue(String.valueOf(umodel.getUsrsid())); // selectUserList.add(labelBean); // } paramMdl.setUserKbnUserSelectCombo(__getMemberList(selectUserSid, con)); if (grpSid == Sml250Form.GRP_SID_GRPLIST) { // グループを全て取得 GroupDao dao = new GroupDao(con); CmnCmbsortConfDao sortDao = new CmnCmbsortConfDao(con); CmnCmbsortConfModel sortMdl = sortDao.getCmbSortData(); ArrayList<GroupModel> allGpList = dao.getGroupTree(sortMdl); // 除外するグループSID List<String> fullGrepList = new ArrayList<String>(); if (selectUserSid != null) { fullGrepList = Arrays.asList(selectUserSid); } List<LabelValueBean> labelListAdd = new ArrayList<LabelValueBean>(); for (GroupModel bean : allGpList) { if (!fullGrepList.contains(String.valueOf("G" + bean.getGroupSid()))) { labelListAdd.add( new LabelValueBean(bean.getGroupName(), String.valueOf("G" + bean.getGroupSid()))); } paramMdl.setUserKbnUserNoSelectCombo(labelListAdd); } } else { if (grpSid >= 0) { ArrayList<String> usrSidList = new ArrayList<String>(); for (String sid : selectUserSid) { if (GSValidateUtil.isNumber(sid)) { usrSidList.add(sid); } } UserBiz userBiz = new UserBiz(); paramMdl.setUserKbnUserNoSelectCombo( userBiz.getNormalUserLabelList( con, grpSid, (String[]) usrSidList.toArray(new String[usrSidList.size()]), false, gsMsg)); } } }
@Override public Document createXml( ActionForm aForm, HttpServletRequest req, HttpServletResponse res, Connection con, BaseUserModel umodel) throws Exception { log__.debug("createXml start"); // 施設予約プラグインアクセス権限確認 if (!canAccsessSelectPlugin(GSConst.PLUGIN_ID_RESERVE)) { addErrors(req, addCantAccsessPluginError(req, null, GSConst.PLUGIN_ID_RESERVE)); return null; } RequestModel reqMdl = getRequestModel(req); int sessionUsrSid = umodel.getUsrsid(); // セッションユーザSID CommonBiz cmnBiz = new CommonBiz(); // 施設予約の管理者 boolean rsvAdmin = cmnBiz.isPluginAdmin(con, umodel, GSConstSchedule.PLUGIN_ID_RESERVE); RsvCommonBiz rsvCmnBiz = new RsvCommonBiz(); RsvUserModel rsvUserConf = rsvCmnBiz.getRevUserModel(sessionUsrSid, con); int dfReservGpSid = GSConstReserve.COMBO_DEFAULT_VALUE; if (rsvUserConf != null) { dfReservGpSid = rsvUserConf.getRsgSid(); } List<RsvSisGrpModel> list = __getReserveGroupList(con, sessionUsrSid, rsvAdmin, reqMdl); Map<Integer, RsvSisKbnModel> kbnMap = __getReserveKbnMap(con); // ルートエレメントResultSet Element resultSet = new Element("ResultSet"); Document doc = new Document(resultSet); if (list != null) { int index = 0; for (RsvSisGrpModel model : list) { Element result = new Element("Result"); resultSet.addContent(result); // Rsgsid グループSID result.addContent(_createElement("RsgSid", model.getRsgSid())); // GrpName グループ名 result.addContent(_createElement("RsgName", model.getRsgName())); // グループID result.addContent(_createElement("RsgId", NullDefault.getString(model.getRsgId(), ""))); // 施設区分SID result.addContent(_createElement("RskSid", String.valueOf(model.getRskSid()))); // 施設区分名 if (kbnMap.containsKey(model.getRskSid())) { RsvSisKbnModel kbn = kbnMap.get(model.getRskSid()); result.addContent(_createElement("RskName", kbn.getRskName())); } else { result.addContent(_createElement("RskName", "")); } if (dfReservGpSid == Integer.valueOf(model.getRsgSid())) { resultSet.setAttribute("DefaultIndex", String.valueOf(index)); } index++; } resultSet.setAttribute("Count", String.valueOf(list.size())); } log__.debug("createXml end"); return doc; }
/** * <br> * [機 能] 表示情報の設定を行う <br> * [解 説] <br> * [備 考] * * @param reqMdl リクエスト情報 * @param paramMdl パラメータ情報 * @param con コネクション * @param appRoot アプリケーションのルートパス * @param tempDir テンポラリディレクトリパス * @param userMdl セッションユーザ情報 * @param req リクエスト * @throws SQLException SQL実行例外 * @throws IOException 添付ファイルの操作に失敗 * @throws IOToolsException 添付ファイルの操作に失敗 * @throws TempFileException 添付ファイルUtil内での例外 * @return 稟議が存在するか true:存在する false:存在しない */ public boolean setDspData( RequestModel reqMdl, Rng030ParamModel paramMdl, Connection con, String appRoot, String tempDir, BaseUserModel userMdl, HttpServletRequest req) throws IOException, IOToolsException, SQLException, TempFileException { int apprMode = paramMdl.getRngApprMode(); int rngSid = paramMdl.getRngSid(); int userSid = userMdl.getUsrsid(); // 稟議情報を設定 RingiDao ringiDao = new RingiDao(con); RingiDataModel model = ringiDao.getRingiData(rngSid, userSid); // タイトル、内容がnullであれば存在しない if (model.getRngTitle() == null || model.getRngContent() == null) { return false; } paramMdl.setRng030Status(model.getRngStatus()); paramMdl.setRng030apprUser(model.getApprUser()); paramMdl.setRng030makeDate(model.getStrMakeDate()); paramMdl.setRng030ViewTitle(model.getRngTitle()); String content = NullDefault.getString(model.getRngContent(), ""); content = StringUtilHtml.transToHTmlForTextArea(content); content = StringUtil.transToLink(content, StringUtil.OTHER_WIN, true); content = StringUtilHtml.returntoBR(content); paramMdl.setRng030ViewContent(content); paramMdl.setRng030completeFlg(model.getRngCompflg()); // 処理モード設定 String cmd = NullDefault.getString(req.getParameter("CMD"), ""); RngChannelDao channelDao = new RngChannelDao(con); switch (apprMode) { case RngConst.RNG_APPRMODE_DISCUSSING: // 申請中案件管理画面からの遷移の場合は管理者承認モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_ADMINAPPR); // 現在確認中のユーザが最後の承認者ではない場合、スキップボタンを表示する // 現在確認中のユーザが申請者、最後の承認者以外の場合、スキップボタンを表示する RngChannelModel channelData = channelDao.select(rngSid, model.getRngApplicate()); if (channelData.getRncStatus() != RngConst.RNG_RNCSTATUS_CONFIRM && !isLastApproval(con, rngSid)) { paramMdl.setRng030skipBtnFlg(1); } break; case RngConst.RNG_APPRMODE_COMPLETE: // 完了案件管理画面からの遷移の場合は閲覧モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_VIEW); break; case RngConst.RNG_APPRMODE_APPL: // 処理モード=再申請の場合は閲覧モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_VIEW); if (cmd.equals("rng030") || paramMdl.getRngDspMode() == RngConst.RNG_MODE_MAIN) { // 稟議一覧からの遷移 // またはメインからの遷移の場合はタイトル、内容、添付ファイルを設定 paramMdl.setRng030Title(model.getRngTitle()); paramMdl.setRng030Content(model.getRngContent()); // 添付ファイルをテンポラリディレクトリへ移動する RngBiz rngBiz = new RngBiz(con); rngBiz.setRingiTempFileData(con, rngSid, 0, appRoot, tempDir, new UDate(), reqMdl__); } break; default: int rncStatus = model.getRncStatus(); // 稟議が完了している場合 if (model.getRngCompflg() == RngConst.RNG_COMPFLG_COMPLETE) { if (model.getRncType() == RngConst.RNG_RNCTYPE_APPR) { // 承認者の場合は閲覧モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_VIEW); } else { // 最終確認者 if (model.getRncType() == RngConst.RNG_RNCTYPE_CONFIRM && rncStatus == RngConst.RNG_RNCSTATUS_NOSET) { // 未確認の場合は確認モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_CONFIRM); } else { // 確認済みの場合は閲覧モード paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_VIEW); } } // 申請者 = ログインユーザの場合、複写して申請ボタンを表示する paramMdl.setRng030copyApplBtn(model.getRngApplicate() == userSid); } else { // 申請者 != ログインユーザ // かつ稟議一覧またはメインからの遷移の場合はコメントを設定 if ((cmd.equals("rng030") || paramMdl.getRngDspMode() == RngConst.RNG_MODE_MAIN) && model.getRngApplicate() != userSid) { RngChannelModel channelMdl = channelDao.select(rngSid, userSid); if (channelMdl != null && paramMdl.getRng030Comment() == null) { paramMdl.setRng030Comment(channelMdl.getRncComment()); } } // 稟議の承認順がログインユーザ かつ 申請者がログインユーザではない場合 // 承認モードに設定する if (rncStatus == RngConst.RNG_RNCSTATUS_CONFIRM && model.getRngApplicate() != userSid) { paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_APPR); paramMdl.setRng030rftBtnFlg(1); } else { paramMdl.setRng030CmdMode(Rng030Form.CMDMODE_VIEW); } // 稟議の状態 = 否認の時 // 承認者 = ログインユーザ // またはログインユーザが却下した承認者の前に稟議を確認していた場合 // 完了ボタンを表示する if (model.getRngStatus() == RngConst.RNG_STATUS_REJECT) { if (model.getRngApplicate() == userSid) { paramMdl.setRng030compBtnFlg(1); } else { if (channelDao.isBeforeApproval(rngSid, userSid)) { paramMdl.setRng030compBtnFlg(1); } } } } } // 処理モード=再申請以外の場合は添付情報を設定 if (apprMode != RngConst.RNG_APPRMODE_APPL) { paramMdl.setTmpFileList(ringiDao.getRingiTmpFileList(rngSid, 0)); } // 添付ファイル一覧を設定 CommonBiz cmnBiz = new CommonBiz(); paramMdl.setRng030fileList(cmnBiz.getTempFileLabelList(tempDir)); // 稟議経路情報を設定 List<RingiChannelDataModel> channelList = ringiDao.getChannelList(rngSid); List<RingiChannelDataModel> apprUser = new ArrayList<RingiChannelDataModel>(); List<RingiChannelDataModel> confirmUser = new ArrayList<RingiChannelDataModel>(); for (RingiChannelDataModel channelMdl : channelList) { if (channelMdl.getRncType() == RngConst.RNG_RNCTYPE_APPR) { apprUser.add(channelMdl); } else if (channelMdl.getRncType() == RngConst.RNG_RNCTYPE_CONFIRM) { confirmUser.add(channelMdl); } else if (channelMdl.getRncType() == RngConst.RNG_RNCTYPE_APPL) { // 申請者の経路情報は一番上に設定 apprUser.add(0, channelMdl); } } paramMdl.setChannelList(apprUser); paramMdl.setConfirmChannelList(confirmUser); paramMdl.setChannelListCount(String.valueOf(apprUser.size())); paramMdl.setConfirmChannelListCount(String.valueOf(confirmUser.size())); log__.debug("End"); return true; }
/** * <br> * [機 能] 初期表示情報を設定する <br> * [解 説] <br> * [備 考] * * @param anp020knModel パラメータモデル * @param con DBコネクション * @throws Exception 実行例外 */ public void setInitData(Anp020knParamModel anp020knModel, Connection con) throws Exception { anp020knModel.setAnp020knDspComment( StringUtilHtml.transToHTmlPlusAmparsant( NullDefault.getString(anp020knModel.getAnp020Comment(), ""))); }
/** * <br> * [機 能] 初期表示情報を設定する <br> * [解 説] <br> * [備 考] * * @param paramMdl Adr020ParamModel * @param con コネクション * @param userMdl セッションユーザ情報 * @throws Exception 実行例外 */ public void setInitData(Adr020ParamModel paramMdl, Connection con, BaseUserModel userMdl) throws Exception { AddressBiz addressBiz = new AddressBiz(reqMdl_); UserBiz userBiz = new UserBiz(); GsMessage gsMsg = new GsMessage(reqMdl_); // 役職コンボを設定 paramMdl.setPositionCmbList(getAddressPositionLabelList(con)); // グループコンボを設定 paramMdl.setGroupCmbList(addressBiz.getGroupLabelList(con)); // ユーザコンボを設定 if (paramMdl.getAdr010cmdMode() == Adr010Const.CMDMODE_CONTACT) { paramMdl.setUserCmbList( userBiz.getNormalUserLabelList( con, Integer.parseInt(paramMdl.getAdr010tantoGroupContact()), null, true, gsMsg)); } else { paramMdl.setUserCmbList( userBiz.getNormalUserLabelList( con, Integer.parseInt(paramMdl.getAdr010tantoGroup()), null, true, gsMsg)); } // 都道府県コンボを設定 CommonBiz cmnBiz = new CommonBiz(); paramMdl.setTdfkCmbList(cmnBiz.getTdfkLabelList(con, gsMsg)); // 管理者設定ボタン表示フラグを設定 boolean adminUser = cmnBiz.isPluginAdmin(con, userMdl, GSConstAddress.PLUGIN_ID_ADDRESS); AdrAconfDao aconfDao = new AdrAconfDao(con); AdrAconfModel aconfMdl = aconfDao.selectAconf(); // 会社追加ボタン表示フラグを設定 if (adminUser || (aconfMdl == null || aconfMdl.getAacAcoEdit() == 0)) { paramMdl.setAdr020addCompanyBtnFlg(1); } // ラベル追加ボタン表示フラグを設定 if (adminUser || (aconfMdl == null || aconfMdl.getAacAlbEdit() == 0)) { paramMdl.setAdr020addLabelBtnFlg(1); } // 閲覧・編集権限の初期値を設定(初期表示時) if (paramMdl.getAdr020init() == 0) { if (aconfMdl != null) { // 管理者が設定 if (aconfMdl.getAacVrmEdit() == GSConstAddress.MEM_DSP_ADM) { paramMdl.setAdr020permitView(aconfMdl.getAacPvwKbn()); paramMdl.setAdr020permitEdit(aconfMdl.getAacPetKbn()); } else { // 個人が設定 AdrUconfDao uconfDao = new AdrUconfDao(con); AdrUconfModel uconfMdl = uconfDao.select(userMdl.getUsrsid()); if (uconfMdl != null) { paramMdl.setAdr020permitView(uconfMdl.getAucPermitView()); paramMdl.setAdr020permitEdit(uconfMdl.getAucPermitEdit()); } else { paramMdl.setAdr020permitView(aconfMdl.getAacPvwKbn()); paramMdl.setAdr020permitEdit(aconfMdl.getAacPetKbn()); } } } else { paramMdl.setAdr020permitView(GSConst.ADR_VIEWPERMIT_OWN); paramMdl.setAdr020permitEdit(GSConstAddress.EDITPERMIT_OWN); } } // 初期表示 if (paramMdl.getAdr020init() == 0) { // モード = 新規登録 の場合、担当者にセッションユーザを設定する if (paramMdl.getAdr020ProcMode() == GSConstAddress.PROCMODE_ADD) { paramMdl.setAdr020tantoList(new String[] {String.valueOf(userMdl.getUsrsid())}); } // モード = 変更 の場合、DBからアドレス帳情報を読み込む if (paramMdl.getAdr020ProcMode() == GSConstAddress.PROCMODE_EDIT) { _setAddressData(con, paramMdl); } // WEBメールからの呼び出しの場合、氏名とメールアドレスを追加する if (paramMdl.getAdr020webmail() == 1) { long mailNum = paramMdl.getAdr020webmailId(); WmlDao wmlDao = new WmlDao(con); WmlMailDataModel mailData = wmlDao.getMailData(mailNum, reqMdl_.getDomain()); String webmailAddress = NullDefault.getString(mailData.getFromAddress(), ""); if (webmailAddress.indexOf("<") > 0) { String userName = webmailAddress.substring(0, webmailAddress.indexOf("<")).trim(); webmailAddress = webmailAddress.substring(webmailAddress.indexOf("<") + 1).trim(); if (userName.startsWith("\"")) { userName = userName.substring(1); } if (userName.endsWith("\"")) { userName = userName.substring(0, userName.length() - 1); } userName = userName.replaceFirst(" ", " "); int userIdx = userName.indexOf(" "); if (userIdx > 0) { paramMdl.setAdr020unameSei(userName.substring(0, userIdx).trim()); paramMdl.setAdr020unameMei(userName.substring(userIdx).trim()); } else { paramMdl.setAdr020unameSei(userName); } if (webmailAddress.indexOf(">") > 0) { webmailAddress = webmailAddress.substring(0, webmailAddress.indexOf(">")); } } paramMdl.setAdr020mail1(webmailAddress); } paramMdl.setAdr020init(1); } // モード = 新規 かつ 複写ボタンをクリック時、DBからアドレス帳情報を読み込む if (paramMdl.getAdr020ProcMode() == GSConstAddress.PROCMODE_ADD && paramMdl.getAdrCopyFlg() == 1) { _setAddressData(con, paramMdl); paramMdl.setAdrCopyFlg(0); } // 会社名を設定 _setCompanyData(con, paramMdl); // 役職を追加した場合の役職の設定 if (paramMdl.getAdrPosition() > 0) { paramMdl.setAdr020position(paramMdl.getAdrPosition()); paramMdl.setAdrPosition(0); } // ユーザ一覧を取得する CmnCmbsortConfDao sortDao = new CmnCmbsortConfDao(con); CmnCmbsortConfModel sortMdl = sortDao.getCmbSortData(); AddressDao addressDao = new AddressDao(con); List<LabelValueBean> allUserCombo = addressDao.getAllUserList(sortMdl); // 担当者コンボの設定を行う if (paramMdl.getAdr020tantoGroup() == -2 || paramMdl.getAdr020permitViewUserGroup() == -2 || paramMdl.getAdr020permitEditUserGroup() == -2) { CmnBelongmDao belongmDao = new CmnBelongmDao(con); int userSid = userMdl.getUsrsid(); int defGrpSid = belongmDao.selectUserBelongGroupDef(userSid); paramMdl.setAdr020tantoGroup(defGrpSid); paramMdl.setAdr020permitViewUserGroup(defGrpSid); paramMdl.setAdr020permitEditUserGroup(defGrpSid); } List<List<LabelValueBean>> tantoComboList = addressBiz.getUserCombo( con, allUserCombo, paramMdl.getAdr020tantoGroup(), paramMdl.getAdr020tantoList()); paramMdl.setSelectTantoCombo(tantoComboList.get(0)); paramMdl.setNoSelectTantoCombo(tantoComboList.get(1)); ArrayList<String> selSidList = new ArrayList<String>(); for (LabelValueBean bean : tantoComboList.get(0)) { selSidList.add(bean.getValue()); } paramMdl.setAdr020tantoList(selSidList.toArray(new String[0])); // グループ一覧を取得 ArrayList<LabelValueBean> allGroupCombo = new ArrayList<LabelValueBean>(); GroupBiz groupBiz = new GroupBiz(); ArrayList<GroupModel> gpList = groupBiz.getGroupList(con); for (GroupModel gpMdl : gpList) { allGroupCombo.add( new LabelValueBean(gpMdl.getGroupName(), String.valueOf(gpMdl.getGroupSid()))); } // 閲覧グループコンボを設定する List<List<LabelValueBean>> viewPermitGroupComboList = addressBiz.getGroupCombo(con, allGroupCombo, paramMdl.getAdr020permitViewGroup()); paramMdl.setSelectPermitViewGroup(viewPermitGroupComboList.get(0)); paramMdl.setNoSelectPermitViewGroup(viewPermitGroupComboList.get(1)); selSidList = new ArrayList<String>(); for (LabelValueBean bean : viewPermitGroupComboList.get(0)) { selSidList.add(bean.getValue()); } paramMdl.setAdr020permitViewGroup(selSidList.toArray(new String[0])); // 編集グループコンボを設定する List<List<LabelValueBean>> editPermitGroupComboList = addressBiz.getGroupCombo(con, allGroupCombo, paramMdl.getAdr020permitEditGroup()); paramMdl.setSelectPermitEditGroup(editPermitGroupComboList.get(0)); paramMdl.setNoSelectPermitEditGroup(editPermitGroupComboList.get(1)); selSidList = new ArrayList<String>(); for (LabelValueBean bean : editPermitGroupComboList.get(0)) { selSidList.add(bean.getValue()); } paramMdl.setAdr020permitEditGroup(selSidList.toArray(new String[0])); // 閲覧ユーザコンボを設定する List<List<LabelValueBean>> viewPermitUserComboList = addressBiz.getUserCombo( con, allUserCombo, paramMdl.getAdr020permitViewUserGroup(), paramMdl.getAdr020permitViewUser()); paramMdl.setSelectPermitViewUser(viewPermitUserComboList.get(0)); paramMdl.setNoSelectPermitViewUser(viewPermitUserComboList.get(1)); selSidList = new ArrayList<String>(); for (LabelValueBean bean : viewPermitUserComboList.get(0)) { selSidList.add(bean.getValue()); } paramMdl.setAdr020permitViewUser(selSidList.toArray(new String[0])); // 編集ユーザコンボを設定する List<List<LabelValueBean>> editPermitUserComboList = addressBiz.getUserCombo( con, allUserCombo, paramMdl.getAdr020permitEditUserGroup(), paramMdl.getAdr020permitEditUser()); paramMdl.setSelectPermitEditUser(editPermitUserComboList.get(0)); paramMdl.setNoSelectPermitEditUser(editPermitUserComboList.get(1)); selSidList = new ArrayList<String>(); for (LabelValueBean bean : editPermitUserComboList.get(0)) { selSidList.add(bean.getValue()); } paramMdl.setAdr020permitEditUser(selSidList.toArray(new String[0])); // ラベル情報一覧を設定 this._setLabelList(con, paramMdl); }
/** * <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; }