/** * 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(); }
/** * <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> * [機 能] 選択施設から指定された施設チェックを取り消す <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 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> * [機 能] キャッシュを有効にして良いか判定を行う <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 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 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; }
/** * 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 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 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 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 paramMdl パラメータ情報 * @param con コネクション * @param cntCon MlCountMtController * @param userSid セッションユーザSID * @throws SQLException SQL実行例外 */ public void insertData( Ptl050knParamModel paramMdl, Connection con, MlCountMtController cntCon, int userSid) throws SQLException { PtlPortalDao ptlDao = new PtlPortalDao(con); PtlPortalSortDao ptlSortDao = new PtlPortalSortDao(con); PtlPortalLayoutDao ptlLayoutDao = new PtlPortalLayoutDao(con); PtlPortalConfReadDao ptlConfReadDao = new PtlPortalConfReadDao(con); PtlCommonBiz ptlBiz = new PtlCommonBiz(con); UDate now = new UDate(); // ポータルSID採番 int ptlSid = (int) cntCon.getSaibanNumber( GSConstPortal.SBNSID_SUB_PORTAL, GSConstPortal.SBNSID_SUB_PORTAL, userSid); // ポータル情報の登録 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.setPtlAuid(userSid); ptlModel.setPtlAdate(now); ptlModel.setPtlEuid(userSid); ptlModel.setPtlEdate(now); ptlDao.insert(ptlModel); // 並び順の最大値を取得する。 int maxSort = ptlSortDao.getMaxSort(GSConstPortal.PTS_KBN_COMMON); // ポータル並び順の登録 PtlPortalSortModel ptlSortModel = new PtlPortalSortModel(); ptlSortModel.setPtlSid(ptlSid); ptlSortModel.setPtsKbn(GSConstPortal.PTS_KBN_COMMON); ptlSortModel.setPtsSort(maxSort + 1); ptlSortModel.setUsrSid(0); ptlSortDao.insert(ptlSortModel); // ポータルレイアウトの登録 PtlPortalLayoutModel ptlLayoutModel = new PtlPortalLayoutModel(); ptlLayoutModel.setPtlSid(ptlSid); ptlLayoutModel.setPtsView(GSConstPortal.PTL_OPENKBN_OK); ptlLayoutModel.setPlyAuid(userSid); ptlLayoutModel.setPlyAdate(now); ptlLayoutModel.setPlyEuid(userSid); ptlLayoutModel.setPlyEdate(now); List<Integer> positionList = new ArrayList<Integer>(); positionList.add(GSConstPortal.LAYOUT_POSITION_TOP); positionList.add(GSConstPortal.LAYOUT_POSITION_BOTTOM); positionList.add(GSConstPortal.LAYOUT_POSITION_LEFT); positionList.add(GSConstPortal.LAYOUT_POSITION_CENTER); positionList.add(GSConstPortal.LAYOUT_POSITION_RIGHT); for (Integer position : positionList) { ptlLayoutModel.setPlyPosition(position); ptlLayoutDao.insert(ptlLayoutModel); } // ポータル閲覧設定の登録 if (paramMdl.getPtl050accessKbn() == GSConstPortal.PTL_ACCESS_ON) { String[] memberSids = paramMdl.getPtl050memberSid(); if (memberSids != null && memberSids.length > 0) { ptlConfReadDao.insert(ptlSid, memberSids); } } // インフォメーションの登録 int ptpSort = 1; ptlBiz.insertInfomation(ptlSid, userSid, GSConstPortal.LAYOUT_POSITION_TOP, ptpSort); }
/** * <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; }
@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 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 anp020knModel パラメータモデル * @param con DBコネクション * @throws Exception 実行例外 */ public void setInitData(Anp020knParamModel anp020knModel, Connection con) throws Exception { anp020knModel.setAnp020knDspComment( StringUtilHtml.transToHTmlPlusAmparsant( NullDefault.getString(anp020knModel.getAnp020Comment(), ""))); }