/** * <br> * [機 能] プラグイン追加処理を行う <br> * [解 説] <br> * [備 考] * * @param paramMdl BmkPtl020ParamModel * @param con コネクション * @param pconfig プラグインコンフィグ * @throws SQLException SQL実行例外 */ public void insertData(BmkPtl020ParamModel paramMdl, Connection con, PluginConfig pconfig) throws SQLException { PtlPortalPositionParamDao positionParamDao = new PtlPortalPositionParamDao(con); PtlPortalPositionDao ptlPositionDao = new PtlPortalPositionDao(con); PtlPortalLayoutDao layoutDao = new PtlPortalLayoutDao(con); int ptlSid = paramMdl.getPtlPortalSid(); UDate now = new UDate(); String itemId = now.getTimeStamp(); CommonBiz cmnBiz = new CommonBiz(); int groupSid = paramMdl.getBmkptl020GrpSid(); // プラグイン選択済フラグ paramMdl.setBmkptl020selectFlg(true); // レイアウト情報を取得する。 List<PtlPortalLayoutModel> layoutList = layoutDao.getLayoutList(ptlSid, GSConstPortal.LAYOUT_VIEW_ON); // プラグインを追加するポジションを取得する。 List<Integer> positionSidList = new ArrayList<Integer>(); positionSidList.add(GSConstPortal.LAYOUT_POSITION_LEFT); positionSidList.add(GSConstPortal.LAYOUT_POSITION_CENTER); positionSidList.add(GSConstPortal.LAYOUT_POSITION_RIGHT); positionSidList.add(GSConstPortal.LAYOUT_POSITION_TOP); positionSidList.add(GSConstPortal.LAYOUT_POSITION_BOTTOM); int plyPosition = GSConstPortal.LAYOUT_POSITION_LEFT; boolean endFlg = false; for (Integer position : positionSidList) { for (PtlPortalLayoutModel model : layoutList) { if (model.getPlyPosition() == position) { plyPosition = position; endFlg = true; break; } } if (endFlg) { break; } } // ポータル位置情報の最大値を取得する。 int maxSort = ptlPositionDao.getMaxSort(ptlSid, plyPosition); // 選択画面ID String screenId = GSConstBookmark.SCREENID_BMKPTL020; // ポートレット画面IDを取得する。 String dspScreenId = cmnBiz.getPluginPortletScreenId(pconfig, GSConstBookmark.PLUGIN_ID_BOOKMARK, screenId); // ポータル位置情報を登録する。 PtlPortalPositionModel posiModel = new PtlPortalPositionModel(); posiModel.setPtlSid(ptlSid); posiModel.setPtpItemid(now.getTimeStamp()); posiModel.setPlyPosition(plyPosition); posiModel.setPtpSort(maxSort + 1); posiModel.setPtpType(GSConstPortal.PTP_TYPE_PLUGINPORTLET); posiModel.setPltSid(-1); posiModel.setPctPid(GSConstBookmark.PLUGIN_ID_BOOKMARK); posiModel.setMscId(dspScreenId); posiModel.setPtpView(GSConstPortal.PTL_OPENKBN_OK); posiModel.setPtpParamkbn(GSConstPortal.PTP_PARAMKBN_ON); ptlPositionDao.insert(posiModel); // ポータル_位置設定_パラメータを登録する。(1つ目 groupSid) PtlPortalPositionParamModel positionParamModel = new PtlPortalPositionParamModel(); positionParamModel.setPtlSid(ptlSid); positionParamModel.setPtpItemid(itemId); positionParamModel.setPpmParamNo(1); positionParamModel.setPpmParamName(BMK_PORTLET_PARAM1); positionParamModel.setPpmParamValue(String.valueOf(groupSid)); positionParamDao.insert(positionParamModel); // ポータル_位置設定_パラメータを登録する(2つ目 itemId) positionParamModel = new PtlPortalPositionParamModel(); positionParamModel.setPtlSid(ptlSid); positionParamModel.setPtpItemid(itemId); positionParamModel.setPpmParamNo(2); positionParamModel.setPpmParamName(BMK_PORTLET_PARAM2); positionParamModel.setPpmParamValue(String.valueOf(itemId)); positionParamDao.insert(positionParamModel); }
/** * <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); }