/** * <br> * [機 能] 使用者設定フラグを取得する <br> * [解 説] <br> * [備 考] * * @param con コネクション * @param paramMdl パラメータ情報 * @param sacSid アカウントSID * @param admMdl ショートメール管理者設定 * @return 使用者設定フラグ * @throws SQLException SQL実行時例外 */ public boolean getAcntUserFlg( Connection con, Sml250ParamModel paramMdl, int sacSid, SmlAdminModel admMdl) throws SQLException { boolean acntUserFlg = false; if (paramMdl.getSmlCmdMode() == GSConstSmail.CMDMODE_ADD) { sacSid = 0; } if (admMdl == null) { SmlCommonBiz smlBiz = new SmlCommonBiz(); admMdl = new SmlAdminModel(); admMdl = smlBiz.getSmailAdminConf(0, con); } boolean admUserFlg = admMdl.getSmaAcntUser() == GSConstSmail.KANRI_ACCOUNT_USER_NO; if (paramMdl.getSmlAccountMode() == GSConstSmail.ACCOUNTMODE_COMMON) { int sacType = GSConstSmail.SAC_TYPE_NORMAL; if (sacSid > 0) { SmlAccountDao accountDao = new SmlAccountDao(con); sacType = accountDao.getSacType(sacSid); acntUserFlg = admUserFlg || sacType != GSConstSmail.SAC_TYPE_NORMAL; } else { acntUserFlg = true; } } else { acntUserFlg = admUserFlg; } return acntUserFlg; }
/** * <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); }