/** * <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 con コネクション * @param paramMdl パラメータ情報 * @param usrSid ユーザSID * @throws SQLException SQL実行時例外 */ public void initDsp(Connection con, Ptl140ParamModel paramMdl, int usrSid) throws SQLException { PtlPortalDao dao = new PtlPortalDao(con); // ポータルを取得する ArrayList<PtlPortalModel> list = dao.selectForUser(usrSid); if (list == null) { list = new ArrayList<PtlPortalModel>(); } else { // ポータル個人並び順のレコードがあるか判定 PtlPortalSortDao sortDao = new PtlPortalSortDao(con); ArrayList<PtlPortalSortModel> sortList = new ArrayList<PtlPortalSortModel>(); sortList = sortDao.select(usrSid); // ポータルの個人並び順新規作成 if (sortList.isEmpty() || sortList.size() != list.size()) { log__.debug("個人並び順なし"); int sort = 1; // 一度並び順を削除してから登録 sortDao.deleteSortForUser(usrSid); for (PtlPortalModel ptlMdl : list) { boolean commit = false; try { PtlPortalSortModel mdl = new PtlPortalSortModel(); mdl.setPtlSid(ptlMdl.getPtlSid()); mdl.setPtsKbn(GSConstPortal.PTS_KBN_USER); mdl.setPtsSort(sort); mdl.setUsrSid(usrSid); sortDao.insert(mdl); ptlMdl.setPtsSort(sort); sort++; con.commit(); commit = true; } catch (SQLException e) { log__.error("ポータル登録処理エラー", e); throw e; } finally { if (!commit) { con.rollback(); } } } } } for (PtlPortalModel model : list) { // html表示用に整形 String dspSetumei = StringUtilHtml.transToHTml(model.getPtlDescription()); // 整形したものを入れなおす model.setPtlDescription(dspSetumei); } if (!list.isEmpty()) { // ラジオの文字列作成 for (PtlPortalModel model : list) { int sid = model.getPtlSid(); int sort = model.getPtsSort(); String strSort = __getRadioValueStr(sid, sort); model.setStrPtsSort(strSort); } } paramMdl.setPtl140portalList(list); // チェックされているラジオがNULLの場合、初期値設定 if (StringUtil.isNullZeroString(paramMdl.getPtl140sortPortal()) && list.size() > 0) { PtlPortalModel model = list.get(0); paramMdl.setPtl140sortPortal(__getRadioValueStr(model.getPtlSid(), model.getPtsSort())); } // ポータル初期表示権限 PtlAdmConfDao aConfDao = new PtlAdmConfDao(con); PtlAdmConfModel aConfModel = aConfDao.select(); if (aConfModel == null) { aConfModel = new PtlAdmConfModel(); } int pow = aConfModel.getPacDefKbn(); paramMdl.setPtlDefPow(pow); // ポータルの表示順変更権限 paramMdl.setPtlSortPow(aConfModel.getPacPtlEditkbn()); // ポータルの初期表示取得 PtlUconfModel uconfMdl = new PtlUconfModel(); PtlUconfDao uconfDao = new PtlUconfDao(con); uconfMdl = uconfDao.select(usrSid); if (uconfMdl == null) { uconfMdl = new PtlUconfModel(); } paramMdl.setPtlType(uconfMdl.getPucDefType()); }
/** * <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); }