diff --git a/src/main/java/kcc/let/cop/bbs/service/impl/EgovBBSAttributeManageServiceImpl.java b/src/main/java/kcc/let/cop/bbs/service/impl/EgovBBSAttributeManageServiceImpl.java
index 7320860d..e61d16ae 100644
--- a/src/main/java/kcc/let/cop/bbs/service/impl/EgovBBSAttributeManageServiceImpl.java
+++ b/src/main/java/kcc/let/cop/bbs/service/impl/EgovBBSAttributeManageServiceImpl.java
@@ -1,273 +1,274 @@
-package kcc.let.cop.bbs.service.impl;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.annotation.Resource;
-
-import org.springframework.stereotype.Service;
-
-import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
-import egovframework.rte.fdl.idgnr.EgovIdGnrService;
-import egovframework.rte.fdl.property.EgovPropertyService;
-import egovframework.rte.psl.dataaccess.util.EgovMap;
-import kcc.com.cmm.ComDefaultVO;
-import kcc.let.cop.bbs.service.BoardMaster;
-import kcc.let.cop.bbs.service.BoardMasterVO;
-import kcc.let.cop.bbs.service.BoardVO;
-import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
-import kcc.let.cop.com.service.EgovUserInfManageService;
-import kcc.let.cop.com.service.impl.BBSUseInfoManageDAO;
-
-/**
- * 게시판 속성관리를 위한 서비스 구현 클래스
- * @author 공통 서비스 개발팀 이삼섭
- * @since 2009.03.24
- * @version 1.0
- * @see
- *
- *
- * << 개정이력(Modification Information) >>
- *
- * 수정일 수정자 수정내용
- * ------- -------- ---------------------------
- * 2009.03.24 이삼섭 최초 생성
- * 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
- * 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
- *
- *
- */
-@Service("EgovBBSAttributeManageService")
-public class EgovBBSAttributeManageServiceImpl extends EgovAbstractServiceImpl implements EgovBBSAttributeManageService {
-
- @Resource(name = "BBSAttributeManageDAO")
- private BBSAttributeManageDAO attrbMngDAO;
-
- @Resource(name = "BBSUseInfoManageDAO")
- private BBSUseInfoManageDAO bbsUseDAO;
-
- @Resource(name = "EgovUserInfManageService")
- private EgovUserInfManageService userService;
-
- @Resource(name = "egovBBSMstrIdGnrService")
- private EgovIdGnrService idgenService;
-
- @Resource(name = "propertiesService")
- protected EgovPropertyService propertyService;
-
- /**
- * 등록된 게시판 속성정보를 삭제한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
- */
- public void deleteBBSMasterInf(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.deleteBBSMasterInf(boardMaster);
-
-// BoardUseInf bdUseInf = new BoardUseInf();
-//
-// bdUseInf.setBbsId(boardMaster.getBbsId());
-// bdUseInf.setLastUpdusrId(boardMaster.getLastUpdusrId());
-//
-// bbsUseDAO.deleteBBSUseInfByBoardId(bdUseInf);
- }
-
- /**
- * 게시판 속성 정보의 목록을 조회 한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectAllBBSMasteInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
- */
- public List selectAllBBSMasteInf(BoardMasterVO vo) throws Exception {
- return attrbMngDAO.selectAllBBSMasteInf(vo);
- }
-
- /**
- * 게시판 속성 정보의 목록을 조회 한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInfs(kcc.let.cop.bbs.brd.service.BoardMasterVO)
- */
- public Map selectBBSMasterInfs(BoardMasterVO searchVO) throws Exception {
- List result = attrbMngDAO.selectBBSMasterInfs(searchVO);
- int cnt = attrbMngDAO.selectBBSMasterInfsCnt(searchVO);
-
- Map map = new HashMap();
-
- map.put("resultList", result);
- map.put("resultCnt", Integer.toString(cnt));
-
- return map;
- }
-
- /**
- * 신규 게시판 속성정보를 생성한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMastetInf(kcc.let.cop.bbs.brd.service.BoardMaster)
- */
- public String insertBBSMastetInf(BoardMaster boardMaster) throws Exception {
- String bbsId = idgenService.getNextStringId();
-
- boardMaster.setBbsId(bbsId);
-
- attrbMngDAO.insertBBSMasterInf(boardMaster);
-
- // 게시판 관리자 등록
- if (!"".equals(boardMaster.getBbsMngIds())) {
- String[] bbsMngIds = boardMaster.getBbsMngIds().split("\\|");
-
- for (int i = 0; i < bbsMngIds.length; i++) {
- if (bbsMngIds[i] != null && !("".equals(bbsMngIds[i]))) {
- BoardMaster vo = new BoardMaster();
- vo.setBbsId(bbsId);
- vo.setMngId(attrbMngDAO.selectBBSMaxMngId());
- vo.setBbsMngId(bbsMngIds[i]);
-
- attrbMngDAO.insertBBSMngInf(vo);
- }
- }
- }
-
- return bbsId;
- }
-
- /**
- * 게시판 속성정보 한 건을 상세조회한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
- */
- public BoardMasterVO selectBBSMasterInf(BoardMasterVO searchVO) throws Exception {
- BoardMasterVO result = attrbMngDAO.selectBBSMasterInf(searchVO);
-
- return result;
- }
-
- /**
- * 게시판 속성정보를 수정한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#updateBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
- */
- public void updateBBSMasterInf(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.updateBBSMasterInf(boardMaster);
- }
-
- /**
- * 게시판 관리자ID 목록을 조회한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMngIdList(kcc.let.cop.bbs.brd.service.BoardMasterVO)
- */
- public List selectBBSMngIdList(BoardMaster vo) throws Exception {
- return attrbMngDAO.selectBBSMngIdList(vo);
- }
-
- /**
- * 게시판 관리자 정보를 등록한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
- */
- public int insertBBSMngInf(BoardMaster vo) throws Exception {
- // 게시판 관리자 중복 체크
- int resultCnt = attrbMngDAO.selectBBSMngInfCnt(vo);
- int mngId = 0;
-
- if (!(resultCnt > 0)) {
- mngId = attrbMngDAO.selectBBSMaxMngId();
- vo.setMngId(mngId);
-
- attrbMngDAO.insertBBSMngInf(vo);
- }
-
- return mngId;
- }
-
- /**
- * 게시판 관리자 정보를 삭제한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
- */
- public void deleteBBSMngInf(BoardMaster vo) throws Exception {
- attrbMngDAO.deleteBBSMngInf(vo);
- }
-
- /**
- * 게시판 ID 정보의 목록을 조회 한다.
- *
- * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSIdList(kcc.com.cmm.ComDefaultVO)
- */
- public Map selectBBSIdList(ComDefaultVO searchVO) throws Exception {
- List result = attrbMngDAO.selectBBSIdList(searchVO);
- int cnt = attrbMngDAO.selectBBSIdListCnt(searchVO);
-
- Map map = new HashMap();
-
- map.put("resultList", result);
- map.put("resultCnt", Integer.toString(cnt));
-
- return map;
- }
-
- @Override
- public void insupNoticeBbsid(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.insupNoticeBbsid(boardMaster);
-
- }
-
- @Override
- public void insupQnaBbsid(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.insupQnaBbsid(boardMaster);
-
- }
-
- @Override
- public void insupNewsBbsid(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.insupNewsBbsid(boardMaster);
-
- }
-
- @Override
- public BoardMaster getSiteMainNbsVO(BoardMasterVO searchVO) throws Exception {
- return attrbMngDAO.getSiteMainNbsVO(searchVO);
- }
-
- @Override
- public void insupLibraryBbsid(BoardMaster boardMaster) throws Exception {
- attrbMngDAO.insupLibraryBbsid(boardMaster);
- }
-
- @Override
- public List selectMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
- return attrbMngDAO.selectMenuBbs(boardMasterVO);
- }
-
- @Override
- public void updateMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
- attrbMngDAO.deleteMenuBbs(boardMasterVO);
-
- for(int i=0; i < boardMasterVO.getBbsIds().size(); i++){
- BoardMasterVO tempBoardMaster= new BoardMasterVO();
- tempBoardMaster.setBbsId(boardMasterVO.getBbsIds().get(i));
- tempBoardMaster.setBbsSort( boardMasterVO.getBbsSorts().size()==0 ? "0" : boardMasterVO.getBbsSorts().get(i));
- tempBoardMaster.setMenuNo(boardMasterVO.getMenuNo());
- attrbMngDAO.updateMenuBbs(tempBoardMaster);
- }
- }
-
- @Override
- public List selectBBSMenuByUrl(BoardMasterVO boardMasterVO) throws Exception {
- return attrbMngDAO.selectBBSMenuByUrl(boardMasterVO);
- }
-
- @Override
- public int selectBBSMngInfCnt(BoardMasterVO bmVO) throws Exception {
- return attrbMngDAO.selectBBSMngInfCnt(bmVO);
- }
-
- @Override
- public BoardMasterVO selectBbsIdByNttId(BoardVO boardVO) throws Exception {
- return attrbMngDAO.selectBbsIdByNttId(boardVO);
- }
-
- @Override
- public List selectBbsAdmin(BoardVO bbsVO) throws Exception {
- return attrbMngDAO.selectBbsAdmin(bbsVO);
- }
-
-
-}
+package kcc.let.cop.bbs.service.impl;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Service;
+
+import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
+import egovframework.rte.fdl.idgnr.EgovIdGnrService;
+import egovframework.rte.fdl.property.EgovPropertyService;
+import egovframework.rte.psl.dataaccess.util.EgovMap;
+import kcc.com.cmm.ComDefaultVO;
+import kcc.let.cop.bbs.service.BoardMaster;
+import kcc.let.cop.bbs.service.BoardMasterVO;
+import kcc.let.cop.bbs.service.BoardVO;
+import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
+import kcc.let.cop.com.service.EgovUserInfManageService;
+import kcc.let.cop.com.service.impl.BBSUseInfoManageDAO;
+
+/**
+ * 게시판 속성관리를 위한 서비스 구현 클래스
+ * @author 공통 서비스 개발팀 이삼섭
+ * @since 2009.03.24
+ * @version 1.0
+ * @see
+ *
+ *
+ * << 개정이력(Modification Information) >>
+ *
+ * 수정일 수정자 수정내용
+ * ------- -------- ---------------------------
+ * 2009.03.24 이삼섭 최초 생성
+ * 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
+ * 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
+ *
+ *
+ */
+@Service("EgovBBSAttributeManageService")
+public class EgovBBSAttributeManageServiceImpl extends EgovAbstractServiceImpl implements EgovBBSAttributeManageService {
+
+ @Resource(name = "BBSAttributeManageDAO")
+ private BBSAttributeManageDAO attrbMngDAO;
+
+ @Resource(name = "BBSUseInfoManageDAO")
+ private BBSUseInfoManageDAO bbsUseDAO;
+
+ @Resource(name = "EgovUserInfManageService")
+ private EgovUserInfManageService userService;
+
+ @Resource(name = "egovBBSMstrIdGnrService")
+ private EgovIdGnrService idgenService;
+
+ @Resource(name = "propertiesService")
+ protected EgovPropertyService propertyService;
+
+ /**
+ * 등록된 게시판 속성정보를 삭제한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
+ */
+ public void deleteBBSMasterInf(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.deleteBBSMasterInf(boardMaster);
+
+// BoardUseInf bdUseInf = new BoardUseInf();
+//
+// bdUseInf.setBbsId(boardMaster.getBbsId());
+// bdUseInf.setLastUpdusrId(boardMaster.getLastUpdusrId());
+//
+// bbsUseDAO.deleteBBSUseInfByBoardId(bdUseInf);
+ }
+
+ /**
+ * 게시판 속성 정보의 목록을 조회 한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectAllBBSMasteInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
+ */
+ public List selectAllBBSMasteInf(BoardMasterVO vo) throws Exception {
+ return attrbMngDAO.selectAllBBSMasteInf(vo);
+ }
+
+ /**
+ * 게시판 속성 정보의 목록을 조회 한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInfs(kcc.let.cop.bbs.brd.service.BoardMasterVO)
+ */
+ public Map selectBBSMasterInfs(BoardMasterVO searchVO) throws Exception {
+ List result = attrbMngDAO.selectBBSMasterInfs(searchVO);
+ int cnt = attrbMngDAO.selectBBSMasterInfsCnt(searchVO);
+
+ Map map = new HashMap();
+
+ map.put("resultList", result);
+ map.put("resultCnt", Integer.toString(cnt));
+
+ return map;
+ }
+
+ /**
+ * 신규 게시판 속성정보를 생성한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMastetInf(kcc.let.cop.bbs.brd.service.BoardMaster)
+ */
+ public String insertBBSMastetInf(BoardMaster boardMaster) throws Exception {
+ String bbsId = idgenService.getNextStringId();
+
+ boardMaster.setBbsId(bbsId);
+
+ attrbMngDAO.insertBBSMasterInf(boardMaster);
+
+ // 게시판 관리자 등록
+ if (!"".equals(boardMaster.getBbsMngIds())) {
+ String[] bbsMngIds = boardMaster.getBbsMngIds().split("\\|");
+
+ for (int i = 0; i < bbsMngIds.length; i++) {
+ if (bbsMngIds[i] != null && !("".equals(bbsMngIds[i]))) {
+ BoardMaster vo = new BoardMaster();
+ vo.setBbsId(bbsId);
+ vo.setMngId(attrbMngDAO.selectBBSMaxMngId());
+ vo.setBbsMngId(bbsMngIds[i]);
+
+ attrbMngDAO.insertBBSMngInf(vo);
+ }
+ }
+ }
+
+ return bbsId;
+ }
+
+ /**
+ * 게시판 속성정보 한 건을 상세조회한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMasterVO)
+ */
+ public BoardMasterVO selectBBSMasterInf(BoardMasterVO searchVO) throws Exception {
+ BoardMasterVO result = attrbMngDAO.selectBBSMasterInf(searchVO);
+
+ return result;
+ }
+
+ /**
+ * 게시판 속성정보를 수정한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#updateBBSMasterInf(kcc.let.cop.bbs.brd.service.BoardMaster)
+ */
+ public void updateBBSMasterInf(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.updateBBSMasterInf(boardMaster);
+ }
+
+ /**
+ * 게시판 관리자ID 목록을 조회한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSMngIdList(kcc.let.cop.bbs.brd.service.BoardMasterVO)
+ */
+ public List selectBBSMngIdList(BoardMaster vo) throws Exception {
+ return attrbMngDAO.selectBBSMngIdList(vo);
+ }
+
+ /**
+ * 게시판 관리자 정보를 등록한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#insertBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
+ */
+ public int insertBBSMngInf(BoardMaster vo) throws Exception {
+ // 게시판 관리자 중복 체크
+ int resultCnt = attrbMngDAO.selectBBSMngInfCnt(vo);
+ int mngId = 0;
+
+ if (!(resultCnt > 0)) {
+ mngId = attrbMngDAO.selectBBSMaxMngId();
+ vo.setMngId(mngId);
+
+ attrbMngDAO.insertBBSMngInf(vo);
+ }
+
+ return mngId;
+ }
+
+ /**
+ * 게시판 관리자 정보를 삭제한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#deleteBBSMngInf(kcc.let.cop.bbs.brd.service.BoardMaster)
+ */
+ public void deleteBBSMngInf(BoardMaster vo) throws Exception {
+ attrbMngDAO.deleteBBSMngInf(vo);
+ }
+
+ /**
+ * 게시판 ID 정보의 목록을 조회 한다.
+ *
+ * @see kcc.let.cop.bbs.brd.service.EgovBBSAttributeManageService#selectBBSIdList(kcc.com.cmm.ComDefaultVO)
+ */
+ public Map selectBBSIdList(ComDefaultVO searchVO) throws Exception {
+ List result = attrbMngDAO.selectBBSIdList(searchVO);
+ int cnt = attrbMngDAO.selectBBSIdListCnt(searchVO);
+
+ System.out.println("22222222222222222222");
+ Map map = new HashMap();
+
+ map.put("resultList", result);
+ map.put("resultCnt", Integer.toString(cnt));
+
+ return map;
+ }
+
+ @Override
+ public void insupNoticeBbsid(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.insupNoticeBbsid(boardMaster);
+
+ }
+
+ @Override
+ public void insupQnaBbsid(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.insupQnaBbsid(boardMaster);
+
+ }
+
+ @Override
+ public void insupNewsBbsid(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.insupNewsBbsid(boardMaster);
+
+ }
+
+ @Override
+ public BoardMaster getSiteMainNbsVO(BoardMasterVO searchVO) throws Exception {
+ return attrbMngDAO.getSiteMainNbsVO(searchVO);
+ }
+
+ @Override
+ public void insupLibraryBbsid(BoardMaster boardMaster) throws Exception {
+ attrbMngDAO.insupLibraryBbsid(boardMaster);
+ }
+
+ @Override
+ public List selectMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
+ return attrbMngDAO.selectMenuBbs(boardMasterVO);
+ }
+
+ @Override
+ public void updateMenuBbs(BoardMasterVO boardMasterVO) throws Exception {
+ attrbMngDAO.deleteMenuBbs(boardMasterVO);
+
+ for(int i=0; i < boardMasterVO.getBbsIds().size(); i++){
+ BoardMasterVO tempBoardMaster= new BoardMasterVO();
+ tempBoardMaster.setBbsId(boardMasterVO.getBbsIds().get(i));
+ tempBoardMaster.setBbsSort( boardMasterVO.getBbsSorts().size()==0 ? "0" : boardMasterVO.getBbsSorts().get(i));
+ tempBoardMaster.setMenuNo(boardMasterVO.getMenuNo());
+ attrbMngDAO.updateMenuBbs(tempBoardMaster);
+ }
+ }
+
+ @Override
+ public List selectBBSMenuByUrl(BoardMasterVO boardMasterVO) throws Exception {
+ return attrbMngDAO.selectBBSMenuByUrl(boardMasterVO);
+ }
+
+ @Override
+ public int selectBBSMngInfCnt(BoardMasterVO bmVO) throws Exception {
+ return attrbMngDAO.selectBBSMngInfCnt(bmVO);
+ }
+
+ @Override
+ public BoardMasterVO selectBbsIdByNttId(BoardVO boardVO) throws Exception {
+ return attrbMngDAO.selectBbsIdByNttId(boardVO);
+ }
+
+ @Override
+ public List selectBbsAdmin(BoardVO bbsVO) throws Exception {
+ return attrbMngDAO.selectBbsAdmin(bbsVO);
+ }
+
+
+}
diff --git a/src/main/java/kcc/let/cop/bbs/web/EgovBBSAttributeManageController.java b/src/main/java/kcc/let/cop/bbs/web/EgovBBSAttributeManageController.java
index 935244e7..4b2620fd 100644
--- a/src/main/java/kcc/let/cop/bbs/web/EgovBBSAttributeManageController.java
+++ b/src/main/java/kcc/let/cop/bbs/web/EgovBBSAttributeManageController.java
@@ -1,904 +1,907 @@
-package kcc.let.cop.bbs.web;
-
-import java.io.OutputStream;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.CellStyle;
-import org.apache.poi.ss.usermodel.Font;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.ui.ModelMap;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.ModelAttribute;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.support.SessionStatus;
-import org.springframework.web.servlet.ModelAndView;
-import org.springframework.web.servlet.mvc.support.RedirectAttributes;
-import org.springmodules.validation.commons.DefaultBeanValidator;
-
-import egovframework.rte.fdl.property.EgovPropertyService;
-import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
-import egovframework.rte.psl.dataaccess.util.EgovMap;
-import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
-import kcc.com.cmm.ComDefaultCodeVO;
-import kcc.com.cmm.ComDefaultVO;
-import kcc.com.cmm.EgovMessageSource;
-import kcc.com.cmm.LoginVO;
-import kcc.com.cmm.service.EgovCmmUseService;
-import kcc.let.cop.bbs.service.BoardMaster;
-import kcc.let.cop.bbs.service.BoardMasterVO;
-import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
-import kcc.let.sec.ram.service.AuthorManageVO;
-import kcc.let.sec.ram.service.EgovAuthorManageService;
-import kcc.let.sym.site.service.EgovSiteManagerService;
-import kcc.let.uss.umt.service.EgovUserManageService;
-import kcc.let.uss.umt.service.UserDefaultVO;
-
-/**
- * 게시판 속성관리를 위한 컨트롤러 클래스
- * @author 공통 서비스 개발팀 이삼섭
- * @since 2009.03.12
- * @version 1.0
- * @see
- *
- *
- * << 개정이력(Modification Information) >>
- *
- * 수정일 수정자 수정내용
- * ------- -------- ---------------------------
- * 2009.03.12 이삼섭 최초 생성
- * 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
- * 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
- *
- *
- */
-@Controller
-public class EgovBBSAttributeManageController {
-
- @Resource(name = "EgovBBSAttributeManageService")
- private EgovBBSAttributeManageService bbsAttrbService;
-
- @Resource(name = "EgovCmmUseService")
- private EgovCmmUseService cmmUseService;
-
- @Resource(name = "propertiesService")
- protected EgovPropertyService propertyService;
-
- @Autowired
- private DefaultBeanValidator beanValidator;
-
- @Resource(name = "egovAuthorManageService")
- private EgovAuthorManageService egovAuthorManageService;
-
- @Resource(name = "userManageService")
- private EgovUserManageService userManageService;
-
- @Resource(name="egovMessageSource")
- EgovMessageSource egovMessageSource;
-
- /** EgovPropertyService */
- @Resource(name = "propertiesService")
- protected EgovPropertyService propertiesService;
-
- @Resource(name = "egovSiteManagerService")
- EgovSiteManagerService egovSiteManagerService;
-
- //배열 정의{"컬럼순차번호, 컬럼이름, 컬럼내용, 컬럼이름에 붙여야할 내용(엑셀코드양식다운로드시 필요)"}
- private String[][] bbsMasterExcelValue ={
- {"0" ,"번호" , "1" , "" },
- {"1", "사이트명" , "ITN" , "[코드]"},
- {"2", "게시판명" , "testId", ""},
- {"3", "새글/총글수" , "홍길동", ""},
- {"4", "게시판유형" , "일반관리자", "[코드]"},
- {"5", "사용여부" , "test@kcc.co.kr", ""},
- {"6", "생성일" , "02-123-4567", ""}
- } ;
- /**
- * 게시판 마스터 목록을 조회한다.
- *
- * @param boardMasterVO
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/SelectBBSMasterInfs.do")
- public String selectBBSMasterInfs(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO,
- ModelMap model , HttpSession session) throws Exception {
- try{
- System.out.println("cop-bbs-SelectBBSMasterInfs");
- List authorities = EgovUserDetailsHelper.getAuthorities();
- LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
-
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN") || authority.equals("ROLE_ADR_ADMIN")) bbsAttrMngAuth = true;
- }
-
- if (!bbsAttrMngAuth) boardMasterVO.setBbsMngId(user.getId());
-
- if(boardMasterVO.getPageUnit() != 10) {
- boardMasterVO.setPageUnit(boardMasterVO.getPageUnit());
- }
-
- PaginationInfo paginationInfo = new PaginationInfo();
-
- paginationInfo.setCurrentPageNo(boardMasterVO.getPageIndex());
- paginationInfo.setRecordCountPerPage(boardMasterVO.getPageUnit());
- paginationInfo.setPageSize(boardMasterVO.getPageSize());
-
- boardMasterVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
- boardMasterVO.setLastIndex(paginationInfo.getLastRecordIndex());
- boardMasterVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
-
- if(null != user && !"super".equals(user.getSiteId())){
- boardMasterVO.setSiteId(user.getSiteId()) ; //사이트 아이디
- }
-
- if("".equals(boardMasterVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
- boardMasterVO.setSearchSortCnd("a.BBS_ID");
- boardMasterVO.setSearchSortOrd("desc");
- boardMasterVO.setUseAt("Y"); //사용하는 것만 조회
- }else {
- if("".equals(boardMasterVO.getUseAt())){ //사용
- boardMasterVO.setUseAt("Y");
- }
- }
-
- Map map = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
-
- int totCnt = Integer.parseInt((String) map.get("resultCnt"));
- //게시판 관리자 정보 가져오기
- List adminBbsList = (List)map.get("resultList");
-
- //사용자 bbs url가져오기
- String bbsHomeUrl = "/web/cop/bbsWeb/selectBoardList.do?bbsId="; //초기값
- for (BoardMasterVO tempVO: adminBbsList){
- List mngIdList = new ArrayList<>();
- mngIdList = bbsAttrbService.selectBBSMngIdList(tempVO);
- tempVO.setMngIdList(mngIdList);
- tempVO.setBbsHomeUrl(getBbsUrl(tempVO.getBbsId(), bbsHomeUrl));
- }
- paginationInfo.setTotalRecordCount(totCnt);
-
- model.addAttribute("resultList", map.get("resultList"));
- model.addAttribute("resultCnt", map.get("resultCnt"));
- model.addAttribute("bbsAttrMngAuth", bbsAttrMngAuth);
- model.addAttribute("paginationInfo", paginationInfo);
-
- }catch(Exception ex) {
- ex.printStackTrace();
- }
-
- return "cop/bbs/EgovBoardMstrList";
- }
-
- /**
- * 게시판 마스터 정보를 삭제한다.
- *
- * @param boardMasterVO
- * @param boardMaster
- * @param status
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/DeleteBBSMasterInf.do")
- public String deleteBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, SessionStatus status
- , RedirectAttributes redirectAttributes) throws Exception {
- LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
-
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
- }
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- boardMaster.setLastUpdusrId(user.getUniqId());
- bbsAttrbService.deleteBBSMasterInf(boardMaster);
-
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.delete"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- /**
- * 신규 게시판 마스터 등록을 위한 등록페이지로 이동한다.
- *
- * @param boardMasterVO
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/addBBSMaster.do")
- public String addBBSMaster(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster,
- ModelMap model, BindingResult bindingResult, RedirectAttributes redirectAttributes,
- HttpSession session ) throws Exception {
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
- }
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- // 게시판 공통코드 및 권한목록 Set
- setBBSModelInfo(model);
- return "cop/bbs/EgovBoardMstrRegist";
- }
-
- /**
- * 신규 게시판 마스터 정보를 등록한다.
- *
- * @param boardMasterVO
- * @param boardMaster
- * @param status
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/insertBBSMasterInf.do")
- public String insertBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, BindingResult bindingResult,
- SessionStatus status, ModelMap model, RedirectAttributes redirectAttributes, HttpSession session) throws Exception {
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
- }
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
- beanValidator.validate(boardMaster, bindingResult);
- if (bindingResult.hasErrors()) {
- model.addAttribute("siteId", user.getSiteId());
- // 게시판 공통코드 및 권한목록 Set
- setBBSModelInfo(model);
- return "cop/bbs/EgovBoardMstrRegist";
- }
-
-
- boardMaster.setFrstRegisterId(user.getUniqId());
- // eGov 게시판 유형 코드. BBSA03:기본게시판. (게시판 타입코드로 기본,웹진,포토 사용중. 유형 코드 필요 유무 확인필요)
- boardMaster.setBbsAttrbCode("BBSA03");
- if(null != user && !"super".equals(user.getSiteId())){ //리스트, 수정, 입력
- boardMaster.setSiteId(user.getSiteId());//사이트 아이디
- }
-
- bbsAttrbService.insertBBSMastetInf(boardMaster);
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- /**
- * 게시판 마스터 상세내용을 조회한다.
- *
- * @param boardMasterVO
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/SelectBBSMasterInf.do")
- public String selectBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO searchVO, ModelMap model,
- RedirectAttributes redirectAttributes, HttpSession session) throws Exception {
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN") || authority.equals("ROLE_USER_MEMBER")) bbsAttrMngAuth = true;
- }
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- BoardMasterVO vo = bbsAttrbService.selectBBSMasterInf(searchVO);
- model.addAttribute("boardMaster", vo);
-
- // 게시판 관리자ID 조회
- List mngIdList = bbsAttrbService.selectBBSMngIdList(searchVO);
- model.addAttribute("mngIdList", mngIdList);
-
- // 게시판 공통코드 및 권한목록 Set
- setBBSModelInfo(model);
-
- BoardMaster siteMainNbsVO = new BoardMaster();
- siteMainNbsVO = bbsAttrbService.getSiteMainNbsVO(searchVO);
- model.addAttribute("siteMainNbsVO", siteMainNbsVO);
-
- if(EgovUserDetailsHelper.getAuthorities().contains("ROLE_ADMIN")){
- model.addAttribute("ROLE_ADMIN", "ROLE_ADMIN");
- }
- return "cop/bbs/EgovBoardMstrUpdt";
- }
-
- /**
- * 게시판 마스터 정보를 수정한다.
- *
- * @param boardMasterVO
- * @param boardMaster
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/UpdateBBSMasterInf.do")
- public String updateBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, BindingResult bindingResult,
- ModelMap model, RedirectAttributes redirectAttributes) throws Exception {
-
- LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- for (String authority : authorities) {
- if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
- }
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- beanValidator.validate(boardMaster, bindingResult);
- if (bindingResult.hasErrors()) {
- model.addAttribute("siteId", user.getSiteId());
- // 게시판 공통코드 및 권한목록 Set
- setBBSModelInfo(model);
- return "cop/bbs/EgovBoardMstrUpdt";
- }
-
- if(null != user && !"super".equals(user.getSiteId())){
- boardMaster.setSiteId(user.getSiteId());
- }
-
- boardMaster.setLastUpdusrId(user.getUniqId());
- bbsAttrbService.updateBBSMasterInf(boardMaster); //BBST07 사전정보공표
-
- //매인 bbs 등록
- LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
- if(null != loginVO && !"super".equals(loginVO.getSiteId())){ //리스트, 수정, 입력
- boardMaster.setSiteId(loginVO.getSiteId());
- boardMasterVO.setSiteId(loginVO.getSiteId());
- }
-
- //변경이 되면 업데이트 함.
- BoardMaster siteMainNbsVO = new BoardMaster();
- siteMainNbsVO = bbsAttrbService.getSiteMainNbsVO(boardMasterVO);
-
- if(boardMaster.getNoticeBbsid().equals("") && siteMainNbsVO !=null){//체크안했을 경우 이전 값이 있을때 변경
- if(boardMasterVO.getBbsId().equals(siteMainNbsVO.getNoticeBbsid())){
- bbsAttrbService.insupNoticeBbsid(boardMaster) ;
- }
- }else{
- bbsAttrbService.insupNoticeBbsid(boardMaster) ;
- }
-
- if(boardMaster.getQnaBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
- if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getQnaBbsid())){
- bbsAttrbService.insupQnaBbsid(boardMaster) ;
- }
- }else{
- bbsAttrbService.insupQnaBbsid(boardMaster) ;
- }
-
- if(boardMaster.getNewsBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
- if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getNewsBbsid())){
- bbsAttrbService.insupNewsBbsid(boardMaster) ;
- }
- }else{
- bbsAttrbService.insupNewsBbsid(boardMaster) ;
- }
-
- if(boardMaster.getLibraryBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
- if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getLibraryBbsid())){
- bbsAttrbService.insupLibraryBbsid(boardMaster) ;
- }
- }else{
- bbsAttrbService.insupLibraryBbsid(boardMaster) ;
- }
-
- redirectAttributes.addAttribute("pageIndex", boardMasterVO.getPageIndex());
- redirectAttributes.addAttribute("searchCnd", boardMasterVO.getSearchCnd());
- redirectAttributes.addAttribute("searchWrd", boardMasterVO.getSearchWrd());
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.update"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- /**
- * 팝업을 위한 게시판 관리자 목록을 조회한다.
- *
- * @param boardMasterVO
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/selectBBSMngInfsPop.do")
- public String selectBBSmngInfsPop(@ModelAttribute("userSearchVO") UserDefaultVO userSearchVO, @RequestParam Map commandMap, ModelMap model) throws Exception {
- /** EgovPropertyService */
- userSearchVO.setPageUnit(propertyService.getInt("pageUnit"));
- userSearchVO.setPageSize(propertyService.getInt("pageSize"));
-
- /** pageing */
- PaginationInfo paginationInfo = new PaginationInfo();
- paginationInfo.setCurrentPageNo(userSearchVO.getPageIndex());
- paginationInfo.setRecordCountPerPage(userSearchVO.getPageUnit());
- paginationInfo.setPageSize(userSearchVO.getPageSize());
-
- userSearchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
- userSearchVO.setLastIndex(paginationInfo.getLastRecordIndex());
- userSearchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
-
- model.addAttribute("resultList", userManageService.selectUserList(userSearchVO));
- int totCnt = userManageService.selectUserListTotCnt(userSearchVO);
- model.addAttribute("resultCnt", totCnt);
-
- paginationInfo.setTotalRecordCount(totCnt);
- model.addAttribute("paginationInfo", paginationInfo);
-
- return "cop/bbs/EgovBoardMngInfsPop";
- }
-
- /**
- * 게시판 관리자 추가 등록
- * @param commandMap 파라메터전달용 commandMap
- * @param model 화면모델
- * @throws Exception
- */
- @RequestMapping(value = "/cop/bbs/insertBBSMngInfAjax.do")
- public ModelAndView insertBBSMngInfAjax(@RequestParam Map commandMap) throws Exception {
-
- ModelAndView modelAndView = new ModelAndView();
- modelAndView.setViewName("jsonView");
-
- String bbsMngId = (String) commandMap.get("bbsMngId");
- String bbsId = (String) commandMap.get("bbsId");
- BoardMaster vo = new BoardMaster();
- vo.setBbsId(bbsId);
- vo.setBbsMngId(bbsMngId);
-
- int mngId = bbsAttrbService.insertBBSMngInf(vo);
- modelAndView.addObject("bbsMngId", bbsMngId);
- modelAndView.addObject("mngId", mngId);
-
- return modelAndView;
- }
-
- /**
- * 게시판 관리자 삭제
- * @param commandMap 파라메터전달용 commandMap
- * @throws Exception
- */
- @RequestMapping(value = "/cop/bbs/deleteBBSMngInfAjax.do")
- public ModelAndView deleteBBSMngInfAjax(@RequestParam Map commandMap) throws Exception {
-
- ModelAndView modelAndView = new ModelAndView();
- modelAndView.setViewName("jsonView");
-
- String mngId = (String) commandMap.get("mngId");
-
- BoardMaster vo = new BoardMaster();
- vo.setMngId(Integer.parseInt(mngId));
-
- bbsAttrbService.deleteBBSMngInf(vo);
-
- modelAndView.addObject("mngId", mngId);
- return modelAndView;
- }
-
- /**
- * 게시판 관리 권한 여부 체크
- * @param manageAuth 게시판 관리권한
- * @param mngIdList 게시판 관리자 목록 (없을 시 null)
- * @param bbsId 게시판Id (게시판 관리자ID 목록 없을 시 조회하기 위한 게시판ID. 게시판 관리자 목록 있을 시 null)
- * @return boolean
- * @throws Exception
- */
- private boolean isBBSManageAuthFlag(String manageAuth, List mngIdList, String bbsId) throws Exception {
- boolean authFlag = false;
- List authorities = EgovUserDetailsHelper.getAuthorities();
- LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
-
- if (manageAuth == null) {
- BoardMasterVO vo = new BoardMasterVO();
- vo.setBbsId(bbsId);
- vo = bbsAttrbService.selectBBSMasterInf(vo);
- manageAuth = vo.getManageAuth();
- }
-
- // 게시판 관리권한 체크
- for (String authority : authorities) {
- if (authority.equals(manageAuth)) authFlag = true;
- }
-
- // 게시판 관리자 체크
- if (!authFlag) {
- if (mngIdList == null) {
- BoardMaster vo = new BoardMaster();
- vo.setBbsId(bbsId);
- mngIdList = (List)bbsAttrbService.selectBBSMngIdList(vo);
- }
-
- int mngYn = 0;
- for(int i = 0; i < mngIdList.size(); i++) {
- String emplyrId = (String) mngIdList.get(i).get("emplyrId");
- if (emplyrId.equals(user.getId())) mngYn++;
- }
-
- if (mngYn != 0) authFlag = true;
- }
-
- return authFlag;
- }
-
- /**
- * 게시판 공통코드 및 권한목록 Set
- * @param model
- * @throws Exception
- */
- private void setBBSModelInfo(ModelMap model) throws Exception {
- ComDefaultCodeVO comDefaultCodeVO = new ComDefaultCodeVO();
- comDefaultCodeVO.setCodeId("COM004");
- List> codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
- model.addAttribute("typeList", codeResult);
- comDefaultCodeVO.setCodeId("COM009");
- codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
- model.addAttribute("attrbList", codeResult);
- comDefaultCodeVO.setCodeId("COM005");
- codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
- model.addAttribute("tmptList", codeResult);
-
- AuthorManageVO authorManageVO = new AuthorManageVO();
- authorManageVO.setAuthorManageList(egovAuthorManageService.selectAuthorAllList(authorManageVO));
- model.addAttribute("authorList", authorManageVO.getAuthorManageList());
- }
-
-
- /**
- * @@@@@@사용자 Test 용. 추후 삭제 @@@@@
- * 게시판 마스터 목록을 조회한다.
- *
- * @param boardMasterVO
- * @param model
- * @return
- * @throws Exception
- */
- @RequestMapping("/cop/bbs/SelectBBSMasterInfsUsr.do")
- public String selectBBSMasterInfsUsr(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, ModelMap model) throws Exception {
-
- boardMasterVO.setPageUnit(propertyService.getInt("pageUnit"));
- boardMasterVO.setPageSize(propertyService.getInt("pageSize"));
-
- PaginationInfo paginationInfo = new PaginationInfo();
-
- paginationInfo.setCurrentPageNo(boardMasterVO.getPageIndex());
- paginationInfo.setRecordCountPerPage(boardMasterVO.getPageUnit());
- paginationInfo.setPageSize(boardMasterVO.getPageSize());
-
- boardMasterVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
- boardMasterVO.setLastIndex(paginationInfo.getLastRecordIndex());
- boardMasterVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
-
- Map map = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
- int totCnt = Integer.parseInt((String) map.get("resultCnt"));
-
- paginationInfo.setTotalRecordCount(totCnt);
-
- model.addAttribute("resultList", map.get("resultList"));
- model.addAttribute("resultCnt", map.get("resultCnt"));
- model.addAttribute("paginationInfo", paginationInfo);
-
- return "cop/bbs/EgovBoardMstrList";
- }
-
- /**
- * 게시판 ID를 조회한다.
- * @param searchVO ComDefaultVO
- * @return 출력페이지정보 "cop/bbs/EgovBoardIdSearch"
- * @exception Exception
- */
- @RequestMapping(value = "/cop/bbs/EgovBBSIdListSearch.do")
- public String selectBBSIdListSearch(@ModelAttribute("searchVO") ComDefaultVO searchVO, ModelMap model) throws Exception {
-
- // 0. Spring Security 사용자권한 처리
- Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
- if (!isAuthenticated) {
- model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
- return "uat/uia/EgovLoginUsr";
- }
- // 내역 조회
- searchVO.setPageUnit(propertiesService.getInt("pageUnit"));
- searchVO.setPageSize(propertiesService.getInt("pageSize"));
-
-
- /** pageing */
- PaginationInfo paginationInfo = new PaginationInfo();
- paginationInfo.setCurrentPageNo(searchVO.getPageIndex());
- paginationInfo.setRecordCountPerPage(searchVO.getPageUnit());
- paginationInfo.setPageSize(searchVO.getPageSize());
-
- searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
- searchVO.setLastIndex(paginationInfo.getLastRecordIndex());
- searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
-
- Map map = bbsAttrbService.selectBBSIdList(searchVO);
- int totCnt = Integer.parseInt((String) map.get("resultCnt"));
-
- paginationInfo.setTotalRecordCount(totCnt);
-
- model.addAttribute("resultList", map.get("resultList"));
- model.addAttribute("paginationInfo", paginationInfo);
-
- return "cop/bbs/EgovBoardIdSearch";
- }
-
- /**
- * 선택된 게시판을 삭제한다.
- * @param bbsIds String
- * @param boardMasterVO BoardMasterVO
- * @return String
- * @exception Exception
- */
- @RequestMapping(value = "/cop/bbs/DeleteBBSMasterInfs.do")
- public String deleteBBSMasterInfs(@RequestParam("bbsIds") String bbsIds, @ModelAttribute("BoardMasterVO") BoardMasterVO boardMasterVO, RedirectAttributes redirectAttributes)
- throws Exception {
-
- // 게시판 설정 관리권한 체크
- boolean bbsAttrMngAuth = false;
- LoginVO loginVo = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser() ;
- if("ROLE_ADMIN".equals(loginVo.getAuthority())){
- bbsAttrMngAuth = true;
- }
-
- if (!bbsAttrMngAuth) {
- redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- String[] strBbsIds = bbsIds.split(";");
- for (int i = 0; i < strBbsIds.length; i++) {
- boardMasterVO.setBbsId(strBbsIds[i]);
- bbsAttrbService.deleteBBSMasterInf(boardMasterVO);
- }
-
- // status.setComplete(); // ?
-
- boardMasterVO.setPageIndex(1);
- redirectAttributes.addAttribute("pageIndex", boardMasterVO.getPageIndex());
- redirectAttributes.addAttribute("searchCnd", boardMasterVO.getSearchCnd());
- redirectAttributes.addAttribute("searchWrd", boardMasterVO.getSearchWrd());
- redirectAttributes.addFlashAttribute("message", "정상적으로 처리 되었습니다.");
- return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
- }
-
- public String getBbsUrl(String bbsId , String bbsHomeUrl){
- //원자력소식
- if("BBSMSTR_000000000411".equals(bbsId)
- ||"BBSMSTR_000000000412".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/NewsList.do"; return bbsHomeUrl ;}
- //자료실
- if("BBSMSTR_000000000493".equals(bbsId)
- ||"BBSMSTR_000000000477".equals(bbsId)
- ||"BBSMSTR_000000000476".equals(bbsId)
- ||"BBSMSTR_000000000475".equals(bbsId)
- ||"BBSMSTR_000000000474".equals(bbsId)
- ||"BBSMSTR_000000000473".equals(bbsId)
- ||"BBSMSTR_000000000472".equals(bbsId)
- ||"BBSMSTR_000000000471".equals(bbsId)
- ||"BBSMSTR_000000000461".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/LibList.do?bbsId="+bbsId; return bbsHomeUrl ;}
-
- //자주하는질문
- if("BBSMSTR_000000000429".equals(bbsId)
- ||"BBSMSTR_000000000428".equals(bbsId)
- ||"BBSMSTR_000000000427".equals(bbsId)
- ||"BBSMSTR_000000000426".equals(bbsId)
- ||"BBSMSTR_000000000425".equals(bbsId)
- ||"BBSMSTR_000000000424".equals(bbsId)
- ||"BBSMSTR_000000000423".equals(bbsId)
- ||"BBSMSTR_000000000422".equals(bbsId)
- ||"BBSMSTR_000000000421".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/FaqList.do"; return bbsHomeUrl ;}
-
- //묻고답하기
- if("BBSMSTR_000000000528".equals(bbsId)
- ||"BBSMSTR_000000000527".equals(bbsId)
- ||"BBSMSTR_000000000526".equals(bbsId)
- ||"BBSMSTR_000000000525".equals(bbsId)
- ||"BBSMSTR_000000000524".equals(bbsId)
- ||"BBSMSTR_000000000523".equals(bbsId)
- ||"BBSMSTR_000000000522".equals(bbsId)
- ||"BBSMSTR_000000000521".equals(bbsId)
- ||"BBSMSTR_000000000490".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/QnaList.do"; return bbsHomeUrl ;}
-
- //사전정보공표
- if("BBSMSTR_000000000541".equals(bbsId)
- ||"BBSMSTR_000000000456".equals(bbsId)
- ||"BBSMSTR_000000000455".equals(bbsId)
- ||"BBSMSTR_000000000454".equals(bbsId)
- ||"BBSMSTR_000000000453".equals(bbsId)
- ||"BBSMSTR_000000000452".equals(bbsId)
- ||"BBSMSTR_000000000451".equals(bbsId)
- ||"BBSMSTR_000000000445".equals(bbsId)
- ||"BBSMSTR_000000000444".equals(bbsId)
- ||"BBSMSTR_000000000443".equals(bbsId)
- ||"BBSMSTR_000000000442".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/PubOperList.do?bbsId="+bbsId; return bbsHomeUrl ;}
-
- //통합경영공시
- if("BBSMSTR_000000000581".equals(bbsId)
- ||"BBSMSTR_000000000582".equals(bbsId)
- ||"BBSMSTR_000000000583".equals(bbsId)
- ||"BBSMSTR_000000000584".equals(bbsId)
- ){bbsHomeUrl = "/web/content.do?proFn=9640000"; return bbsHomeUrl ;}
-
- //사전정보공표(하단 리스트 게시판 ) BBSMSTR_000000000442 ~
- if("BBSMSTR_000000000599".equals(bbsId)
- ||"BBSMSTR_000000000551".equals(bbsId)
- ||"BBSMSTR_000000000598".equals(bbsId)
- ||"BBSMSTR_000000000597".equals(bbsId)
- ||"BBSMSTR_000000000596".equals(bbsId)
- ||"BBSMSTR_000000000595".equals(bbsId)
- ||"BBSMSTR_000000000594".equals(bbsId)
- ||"BBSMSTR_000000000593".equals(bbsId)
- ||"BBSMSTR_000000000571".equals(bbsId)
-
- ||"BBSMSTR_000000000602".equals(bbsId)
- ||"BBSMSTR_000000000601".equals(bbsId)
- ||"BBSMSTR_000000000600".equals(bbsId)
- ||"BBSMSTR_000000000592".equals(bbsId)
- ||"BBSMSTR_000000000591".equals(bbsId)
-
- ||"BBSMSTR_000000000608".equals(bbsId)
- ||"BBSMSTR_000000000607".equals(bbsId)
- ||"BBSMSTR_000000000606".equals(bbsId)
- ||"BBSMSTR_000000000605".equals(bbsId)
- ||"BBSMSTR_000000000604".equals(bbsId)
- ||"BBSMSTR_000000000603".equals(bbsId)
-
-
- ||"BBSMSTR_000000000614".equals(bbsId)
- ||"BBSMSTR_000000000613".equals(bbsId)
- ||"BBSMSTR_000000000612".equals(bbsId)
- ||"BBSMSTR_000000000611".equals(bbsId)
- ||"BBSMSTR_000000000610".equals(bbsId)
- ||"BBSMSTR_000000000609".equals(bbsId)
-
- ||"BBSMSTR_000000000632".equals(bbsId)
- ||"BBSMSTR_000000000631".equals(bbsId)
- ||"BBSMSTR_000000000630".equals(bbsId)
-
- ||"BBSMSTR_000000000616".equals(bbsId)
- ||"BBSMSTR_000000000615".equals(bbsId)
-
- ||"BBSMSTR_000000000618".equals(bbsId)
- ||"BBSMSTR_000000000617".equals(bbsId)
-
- ||"BBSMSTR_000000000621".equals(bbsId)
- ||"BBSMSTR_000000000620".equals(bbsId)
- ||"BBSMSTR_000000000619".equals(bbsId)
-
- ||"BBSMSTR_000000000625".equals(bbsId)
- ||"BBSMSTR_000000000622".equals(bbsId)
-
- ||"BBSMSTR_000000000629".equals(bbsId)
- ){bbsHomeUrl = "/web/cop/bbs/PubOperList.do?pubDetail=Y&bbsId="+bbsId; return bbsHomeUrl ;}
- return bbsHomeUrl+bbsId;
- }
-
-
- //게시판 마스터 리스트 엑셀 다운로드
- @RequestMapping(value="/cop/bbs/bbsMasterExcelDownload.do")
- public void bbsMasterExcelDownload( BoardMasterVO boardMasterVO,
- HttpServletRequest request,
- HttpServletResponse response ,
- ModelMap model) throws Exception {
-
- boardMasterVO.setRecordCountPerPage(100000);
- boardMasterVO.setFirstIndex(0);
- LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
- if(null != loginVO && !"super".equals(loginVO.getSiteId())){
- boardMasterVO.setSiteId(loginVO.getSiteId());
- }
- // 메모리에 100개의 행을 유지합니다. 행의 수가 넘으면 디스크에 적습니다.
- SXSSFWorkbook wb = new SXSSFWorkbook(100);
- CellStyle style = wb.createCellStyle();
- style.setBorderBottom(CellStyle.BORDER_THIN); //테두리 두껍게
- style.setBorderLeft(CellStyle.BORDER_THIN);
- style.setBorderRight(CellStyle.BORDER_THIN);
- style.setBorderTop(CellStyle.BORDER_THIN);
- Font font = wb.createFont();
- font.setBoldweight(Font.BOLDWEIGHT_BOLD); //글씨 bold
-
- Cell cell = null;
- Row row = null;
-
- String fileName ="게시판 마스터 리스트";
-
- String sheetTitle = "";
- try{
- //List> userSearchList = userManageService.selectUserList(userSearchVO) ;
- boardMasterVO.setDelSttus("Y");
- Map bbsMasterList = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
- { //화면 리스트
- sheetTitle = "게시판 마스터 리스트(화면)" ; //제목
- Sheet sheet = wb.createSheet(sheetTitle);
- row = sheet.createRow(0);
- for(int i=0 ; i < bbsMasterExcelValue.length ; i++) {
- cell = row.createCell(i);
- cell.setCellStyle(style);
- cell.setCellValue(bbsMasterExcelValue[i][1]);
- }
-
- List bbsMasterCastList = (List)bbsMasterList.get("resultList") ;
- for(int i=0; i < bbsMasterCastList.size(); i++){
- row = sheet.createRow(i+1);
- for(int j=0 ; j < bbsMasterExcelValue.length ; j++) {
- cell = row.createCell(j);
- cell.setCellStyle(style);
- if(j==0) cell.setCellValue(i+1); //번호
- if(j==1) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getSiteNm()); //사이트명
- if(j==2) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getBbsNm()); //게시판명
- if(j==3) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getNewCnt()+"/"+ ((BoardMasterVO)bbsMasterCastList.get(i)).getTotCnt()); //새글/총글수
- if(j==4) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getBbsTyCodeNm()); //게시판유형
- if(j==5) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getUseAtTxt()); //사용여부
- if(j==6) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getFrstRegisterPnttm()); //생성일
- }
- }
- }
- response.setHeader("Set-Cookie", "fileDownload=true; path=/");
- SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat ( "yyyy_MM_dd_HH_mm_ss", Locale.KOREA );
- Date currentTime = new Date ();
- String mTime = mSimpleDateFormat.format ( currentTime );
- fileName = fileName+"("+mTime+")";
-
- response.setHeader("Content-Disposition", String.format("attachment; filename=\""+new String((fileName).getBytes("KSC5601"),"8859_1")+".xlsx"));
- wb.write(response.getOutputStream());
-
- }catch(Exception e) {
- response.setHeader("Set-Cookie", "fileDownload=false; path=/");
- response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
- response.setHeader("Content-Type","text/html; charset=utf-8");
- OutputStream out = null;
- try {
- out = response.getOutputStream();
- byte[] data = new String("fail..").getBytes();
- out.write(data, 0, data.length);
- } catch(Exception ignore) {
- System.out.println("bbsMasterExcelDownload Exception Error");
- } finally {
- if(out != null) try { out.close(); } catch(Exception ignore) {System.out.println("file Exception Error");}
- }
- }finally {
- // 디스크 적었던 임시파일을 제거합니다.
- wb.dispose();
- try {
- wb.close();
- } catch(Exception ignore) {
- System.out.println("bbsMasterExcelDownload Exception Error");
- }
- }
- }
-
-}
+package kcc.let.cop.bbs.web;
+
+import java.io.OutputStream;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.CellStyle;
+import org.apache.poi.ss.usermodel.Font;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.ModelAttribute;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.support.SessionStatus;
+import org.springframework.web.servlet.ModelAndView;
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+import org.springmodules.validation.commons.DefaultBeanValidator;
+
+import egovframework.rte.fdl.property.EgovPropertyService;
+import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
+import egovframework.rte.psl.dataaccess.util.EgovMap;
+import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
+import kcc.com.cmm.ComDefaultCodeVO;
+import kcc.com.cmm.ComDefaultVO;
+import kcc.com.cmm.EgovMessageSource;
+import kcc.com.cmm.LoginVO;
+import kcc.com.cmm.service.EgovCmmUseService;
+import kcc.let.cop.bbs.service.BoardMaster;
+import kcc.let.cop.bbs.service.BoardMasterVO;
+import kcc.let.cop.bbs.service.EgovBBSAttributeManageService;
+import kcc.let.sec.ram.service.AuthorManageVO;
+import kcc.let.sec.ram.service.EgovAuthorManageService;
+import kcc.let.sym.site.service.EgovSiteManagerService;
+import kcc.let.uss.umt.service.EgovUserManageService;
+import kcc.let.uss.umt.service.UserDefaultVO;
+
+/**
+ * 게시판 속성관리를 위한 컨트롤러 클래스
+ * @author 공통 서비스 개발팀 이삼섭
+ * @since 2009.03.12
+ * @version 1.0
+ * @see
+ *
+ *
+ * << 개정이력(Modification Information) >>
+ *
+ * 수정일 수정자 수정내용
+ * ------- -------- ---------------------------
+ * 2009.03.12 이삼섭 최초 생성
+ * 2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
+ * 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
+ *
+ *
+ */
+@Controller
+public class EgovBBSAttributeManageController {
+
+ @Resource(name = "EgovBBSAttributeManageService")
+ private EgovBBSAttributeManageService bbsAttrbService;
+
+ @Resource(name = "EgovCmmUseService")
+ private EgovCmmUseService cmmUseService;
+
+ @Resource(name = "propertiesService")
+ protected EgovPropertyService propertyService;
+
+ @Autowired
+ private DefaultBeanValidator beanValidator;
+
+ @Resource(name = "egovAuthorManageService")
+ private EgovAuthorManageService egovAuthorManageService;
+
+ @Resource(name = "userManageService")
+ private EgovUserManageService userManageService;
+
+ @Resource(name="egovMessageSource")
+ EgovMessageSource egovMessageSource;
+
+ /** EgovPropertyService */
+ @Resource(name = "propertiesService")
+ protected EgovPropertyService propertiesService;
+
+ @Resource(name = "egovSiteManagerService")
+ EgovSiteManagerService egovSiteManagerService;
+
+ //배열 정의{"컬럼순차번호, 컬럼이름, 컬럼내용, 컬럼이름에 붙여야할 내용(엑셀코드양식다운로드시 필요)"}
+ private String[][] bbsMasterExcelValue ={
+ {"0" ,"번호" , "1" , "" },
+ {"1", "사이트명" , "ITN" , "[코드]"},
+ {"2", "게시판명" , "testId", ""},
+ {"3", "새글/총글수" , "홍길동", ""},
+ {"4", "게시판유형" , "일반관리자", "[코드]"},
+ {"5", "사용여부" , "test@kcc.co.kr", ""},
+ {"6", "생성일" , "02-123-4567", ""}
+ } ;
+ /**
+ * 게시판 마스터 목록을 조회한다.
+ *
+ * @param boardMasterVO
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/SelectBBSMasterInfs.do")
+ public String selectBBSMasterInfs(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO,
+ ModelMap model , HttpSession session) throws Exception {
+ try{
+ System.out.println("cop-bbs-SelectBBSMasterInfs");
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN") || authority.equals("ROLE_ADR_ADMIN")) bbsAttrMngAuth = true;
+ }
+
+ if (!bbsAttrMngAuth) boardMasterVO.setBbsMngId(user.getId());
+
+ if(boardMasterVO.getPageUnit() != 10) {
+ boardMasterVO.setPageUnit(boardMasterVO.getPageUnit());
+ }
+
+ PaginationInfo paginationInfo = new PaginationInfo();
+
+ paginationInfo.setCurrentPageNo(boardMasterVO.getPageIndex());
+ paginationInfo.setRecordCountPerPage(boardMasterVO.getPageUnit());
+ paginationInfo.setPageSize(boardMasterVO.getPageSize());
+
+ boardMasterVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
+ boardMasterVO.setLastIndex(paginationInfo.getLastRecordIndex());
+ boardMasterVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
+
+ if(null != user && !"super".equals(user.getSiteId())){
+ boardMasterVO.setSiteId(user.getSiteId()) ; //사이트 아이디
+ }
+
+ if("".equals(boardMasterVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
+ boardMasterVO.setSearchSortCnd("a.BBS_ID");
+ boardMasterVO.setSearchSortOrd("desc");
+ boardMasterVO.setUseAt("Y"); //사용하는 것만 조회
+ }else {
+ if("".equals(boardMasterVO.getUseAt())){ //사용
+ boardMasterVO.setUseAt("Y");
+ }
+ }
+
+ Map map = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
+
+ int totCnt = Integer.parseInt((String) map.get("resultCnt"));
+ //게시판 관리자 정보 가져오기
+ List adminBbsList = (List)map.get("resultList");
+
+ //사용자 bbs url가져오기
+ String bbsHomeUrl = "/web/cop/bbsWeb/selectBoardList.do?bbsId="; //초기값
+ for (BoardMasterVO tempVO: adminBbsList){
+ List mngIdList = new ArrayList<>();
+ mngIdList = bbsAttrbService.selectBBSMngIdList(tempVO);
+ tempVO.setMngIdList(mngIdList);
+ tempVO.setBbsHomeUrl(getBbsUrl(tempVO.getBbsId(), bbsHomeUrl));
+ }
+ paginationInfo.setTotalRecordCount(totCnt);
+
+ model.addAttribute("resultList", map.get("resultList"));
+ model.addAttribute("resultCnt", map.get("resultCnt"));
+ model.addAttribute("bbsAttrMngAuth", bbsAttrMngAuth);
+ model.addAttribute("paginationInfo", paginationInfo);
+
+ }catch(Exception ex) {
+ ex.printStackTrace();
+ }
+
+ return "cop/bbs/EgovBoardMstrList";
+ }
+
+ /**
+ * 게시판 마스터 정보를 삭제한다.
+ *
+ * @param boardMasterVO
+ * @param boardMaster
+ * @param status
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/DeleteBBSMasterInf.do")
+ public String deleteBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, SessionStatus status
+ , RedirectAttributes redirectAttributes) throws Exception {
+ LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
+ }
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ boardMaster.setLastUpdusrId(user.getUniqId());
+ bbsAttrbService.deleteBBSMasterInf(boardMaster);
+
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.delete"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ /**
+ * 신규 게시판 마스터 등록을 위한 등록페이지로 이동한다.
+ *
+ * @param boardMasterVO
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/addBBSMaster.do")
+ public String addBBSMaster(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster,
+ ModelMap model, BindingResult bindingResult, RedirectAttributes redirectAttributes,
+ HttpSession session ) throws Exception {
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
+ }
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ // 게시판 공통코드 및 권한목록 Set
+ setBBSModelInfo(model);
+ return "cop/bbs/EgovBoardMstrRegist";
+ }
+
+ /**
+ * 신규 게시판 마스터 정보를 등록한다.
+ *
+ * @param boardMasterVO
+ * @param boardMaster
+ * @param status
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/insertBBSMasterInf.do")
+ public String insertBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, BindingResult bindingResult,
+ SessionStatus status, ModelMap model, RedirectAttributes redirectAttributes, HttpSession session) throws Exception {
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
+ }
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+ beanValidator.validate(boardMaster, bindingResult);
+ if (bindingResult.hasErrors()) {
+ model.addAttribute("siteId", user.getSiteId());
+ // 게시판 공통코드 및 권한목록 Set
+ setBBSModelInfo(model);
+ return "cop/bbs/EgovBoardMstrRegist";
+ }
+
+
+ boardMaster.setFrstRegisterId(user.getUniqId());
+ // eGov 게시판 유형 코드. BBSA03:기본게시판. (게시판 타입코드로 기본,웹진,포토 사용중. 유형 코드 필요 유무 확인필요)
+ boardMaster.setBbsAttrbCode("BBSA03");
+ if(null != user && !"super".equals(user.getSiteId())){ //리스트, 수정, 입력
+ boardMaster.setSiteId(user.getSiteId());//사이트 아이디
+ }
+
+ bbsAttrbService.insertBBSMastetInf(boardMaster);
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.insert"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ /**
+ * 게시판 마스터 상세내용을 조회한다.
+ *
+ * @param boardMasterVO
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/SelectBBSMasterInf.do")
+ public String selectBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO searchVO, ModelMap model,
+ RedirectAttributes redirectAttributes, HttpSession session) throws Exception {
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN") || authority.equals("ROLE_USER_MEMBER")) bbsAttrMngAuth = true;
+ }
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ BoardMasterVO vo = bbsAttrbService.selectBBSMasterInf(searchVO);
+ model.addAttribute("boardMaster", vo);
+
+ // 게시판 관리자ID 조회
+ List mngIdList = bbsAttrbService.selectBBSMngIdList(searchVO);
+ model.addAttribute("mngIdList", mngIdList);
+
+ // 게시판 공통코드 및 권한목록 Set
+ setBBSModelInfo(model);
+
+ BoardMaster siteMainNbsVO = new BoardMaster();
+ siteMainNbsVO = bbsAttrbService.getSiteMainNbsVO(searchVO);
+ model.addAttribute("siteMainNbsVO", siteMainNbsVO);
+
+ if(EgovUserDetailsHelper.getAuthorities().contains("ROLE_ADMIN")){
+ model.addAttribute("ROLE_ADMIN", "ROLE_ADMIN");
+ }
+ return "cop/bbs/EgovBoardMstrUpdt";
+ }
+
+ /**
+ * 게시판 마스터 정보를 수정한다.
+ *
+ * @param boardMasterVO
+ * @param boardMaster
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/UpdateBBSMasterInf.do")
+ public String updateBBSMasterInf(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, @ModelAttribute("boardMaster") BoardMaster boardMaster, BindingResult bindingResult,
+ ModelMap model, RedirectAttributes redirectAttributes) throws Exception {
+
+ LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ for (String authority : authorities) {
+ if (authority.equals("ROLE_ADMIN")) bbsAttrMngAuth = true;
+ }
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ beanValidator.validate(boardMaster, bindingResult);
+ if (bindingResult.hasErrors()) {
+ model.addAttribute("siteId", user.getSiteId());
+ // 게시판 공통코드 및 권한목록 Set
+ setBBSModelInfo(model);
+ return "cop/bbs/EgovBoardMstrUpdt";
+ }
+
+ if(null != user && !"super".equals(user.getSiteId())){
+ boardMaster.setSiteId(user.getSiteId());
+ }
+
+ boardMaster.setLastUpdusrId(user.getUniqId());
+ bbsAttrbService.updateBBSMasterInf(boardMaster); //BBST07 사전정보공표
+
+ //매인 bbs 등록
+ LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+ if(null != loginVO && !"super".equals(loginVO.getSiteId())){ //리스트, 수정, 입력
+ boardMaster.setSiteId(loginVO.getSiteId());
+ boardMasterVO.setSiteId(loginVO.getSiteId());
+ }
+
+ //변경이 되면 업데이트 함.
+ BoardMaster siteMainNbsVO = new BoardMaster();
+ siteMainNbsVO = bbsAttrbService.getSiteMainNbsVO(boardMasterVO);
+
+ if(boardMaster.getNoticeBbsid().equals("") && siteMainNbsVO !=null){//체크안했을 경우 이전 값이 있을때 변경
+ if(boardMasterVO.getBbsId().equals(siteMainNbsVO.getNoticeBbsid())){
+ bbsAttrbService.insupNoticeBbsid(boardMaster) ;
+ }
+ }else{
+ bbsAttrbService.insupNoticeBbsid(boardMaster) ;
+ }
+
+ if(boardMaster.getQnaBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
+ if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getQnaBbsid())){
+ bbsAttrbService.insupQnaBbsid(boardMaster) ;
+ }
+ }else{
+ bbsAttrbService.insupQnaBbsid(boardMaster) ;
+ }
+
+ if(boardMaster.getNewsBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
+ if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getNewsBbsid())){
+ bbsAttrbService.insupNewsBbsid(boardMaster) ;
+ }
+ }else{
+ bbsAttrbService.insupNewsBbsid(boardMaster) ;
+ }
+
+ if(boardMaster.getLibraryBbsid().equals("")){//체크안했을 경우 이전 값이 있을때 변경
+ if(siteMainNbsVO !=null && boardMasterVO.getBbsId().equals(siteMainNbsVO.getLibraryBbsid())){
+ bbsAttrbService.insupLibraryBbsid(boardMaster) ;
+ }
+ }else{
+ bbsAttrbService.insupLibraryBbsid(boardMaster) ;
+ }
+
+ redirectAttributes.addAttribute("pageIndex", boardMasterVO.getPageIndex());
+ redirectAttributes.addAttribute("searchCnd", boardMasterVO.getSearchCnd());
+ redirectAttributes.addAttribute("searchWrd", boardMasterVO.getSearchWrd());
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("success.common.update"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ /**
+ * 팝업을 위한 게시판 관리자 목록을 조회한다.
+ *
+ * @param boardMasterVO
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/selectBBSMngInfsPop.do")
+ public String selectBBSmngInfsPop(@ModelAttribute("userSearchVO") UserDefaultVO userSearchVO, @RequestParam Map commandMap, ModelMap model) throws Exception {
+ /** EgovPropertyService */
+ userSearchVO.setPageUnit(propertyService.getInt("pageUnit"));
+ userSearchVO.setPageSize(propertyService.getInt("pageSize"));
+
+ /** pageing */
+ PaginationInfo paginationInfo = new PaginationInfo();
+ paginationInfo.setCurrentPageNo(userSearchVO.getPageIndex());
+ paginationInfo.setRecordCountPerPage(userSearchVO.getPageUnit());
+ paginationInfo.setPageSize(userSearchVO.getPageSize());
+
+ userSearchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
+ userSearchVO.setLastIndex(paginationInfo.getLastRecordIndex());
+ userSearchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
+
+ model.addAttribute("resultList", userManageService.selectUserList(userSearchVO));
+ int totCnt = userManageService.selectUserListTotCnt(userSearchVO);
+ model.addAttribute("resultCnt", totCnt);
+
+ paginationInfo.setTotalRecordCount(totCnt);
+ model.addAttribute("paginationInfo", paginationInfo);
+
+ return "cop/bbs/EgovBoardMngInfsPop";
+ }
+
+ /**
+ * 게시판 관리자 추가 등록
+ * @param commandMap 파라메터전달용 commandMap
+ * @param model 화면모델
+ * @throws Exception
+ */
+ @RequestMapping(value = "/cop/bbs/insertBBSMngInfAjax.do")
+ public ModelAndView insertBBSMngInfAjax(@RequestParam Map commandMap) throws Exception {
+
+ ModelAndView modelAndView = new ModelAndView();
+ modelAndView.setViewName("jsonView");
+
+ String bbsMngId = (String) commandMap.get("bbsMngId");
+ String bbsId = (String) commandMap.get("bbsId");
+ BoardMaster vo = new BoardMaster();
+ vo.setBbsId(bbsId);
+ vo.setBbsMngId(bbsMngId);
+
+ int mngId = bbsAttrbService.insertBBSMngInf(vo);
+ modelAndView.addObject("bbsMngId", bbsMngId);
+ modelAndView.addObject("mngId", mngId);
+
+ return modelAndView;
+ }
+
+ /**
+ * 게시판 관리자 삭제
+ * @param commandMap 파라메터전달용 commandMap
+ * @throws Exception
+ */
+ @RequestMapping(value = "/cop/bbs/deleteBBSMngInfAjax.do")
+ public ModelAndView deleteBBSMngInfAjax(@RequestParam Map commandMap) throws Exception {
+
+ ModelAndView modelAndView = new ModelAndView();
+ modelAndView.setViewName("jsonView");
+
+ String mngId = (String) commandMap.get("mngId");
+
+ BoardMaster vo = new BoardMaster();
+ vo.setMngId(Integer.parseInt(mngId));
+
+ bbsAttrbService.deleteBBSMngInf(vo);
+
+ modelAndView.addObject("mngId", mngId);
+ return modelAndView;
+ }
+
+ /**
+ * 게시판 관리 권한 여부 체크
+ * @param manageAuth 게시판 관리권한
+ * @param mngIdList 게시판 관리자 목록 (없을 시 null)
+ * @param bbsId 게시판Id (게시판 관리자ID 목록 없을 시 조회하기 위한 게시판ID. 게시판 관리자 목록 있을 시 null)
+ * @return boolean
+ * @throws Exception
+ */
+ private boolean isBBSManageAuthFlag(String manageAuth, List mngIdList, String bbsId) throws Exception {
+ boolean authFlag = false;
+ List authorities = EgovUserDetailsHelper.getAuthorities();
+ LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
+
+ if (manageAuth == null) {
+ BoardMasterVO vo = new BoardMasterVO();
+ vo.setBbsId(bbsId);
+ vo = bbsAttrbService.selectBBSMasterInf(vo);
+ manageAuth = vo.getManageAuth();
+ }
+
+ // 게시판 관리권한 체크
+ for (String authority : authorities) {
+ if (authority.equals(manageAuth)) authFlag = true;
+ }
+
+ // 게시판 관리자 체크
+ if (!authFlag) {
+ if (mngIdList == null) {
+ BoardMaster vo = new BoardMaster();
+ vo.setBbsId(bbsId);
+ mngIdList = (List)bbsAttrbService.selectBBSMngIdList(vo);
+ }
+
+ int mngYn = 0;
+ for(int i = 0; i < mngIdList.size(); i++) {
+ String emplyrId = (String) mngIdList.get(i).get("emplyrId");
+ if (emplyrId.equals(user.getId())) mngYn++;
+ }
+
+ if (mngYn != 0) authFlag = true;
+ }
+
+ return authFlag;
+ }
+
+ /**
+ * 게시판 공통코드 및 권한목록 Set
+ * @param model
+ * @throws Exception
+ */
+ private void setBBSModelInfo(ModelMap model) throws Exception {
+ ComDefaultCodeVO comDefaultCodeVO = new ComDefaultCodeVO();
+ comDefaultCodeVO.setCodeId("COM004");
+ List> codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
+ model.addAttribute("typeList", codeResult);
+ comDefaultCodeVO.setCodeId("COM009");
+ codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
+ model.addAttribute("attrbList", codeResult);
+ comDefaultCodeVO.setCodeId("COM005");
+ codeResult = cmmUseService.selectCmmCodeDetail(comDefaultCodeVO);
+ model.addAttribute("tmptList", codeResult);
+
+ AuthorManageVO authorManageVO = new AuthorManageVO();
+ authorManageVO.setAuthorManageList(egovAuthorManageService.selectAuthorAllList(authorManageVO));
+ model.addAttribute("authorList", authorManageVO.getAuthorManageList());
+ }
+
+
+ /**
+ * @@@@@@사용자 Test 용. 추후 삭제 @@@@@
+ * 게시판 마스터 목록을 조회한다.
+ *
+ * @param boardMasterVO
+ * @param model
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/cop/bbs/SelectBBSMasterInfsUsr.do")
+ public String selectBBSMasterInfsUsr(@ModelAttribute("searchVO") BoardMasterVO boardMasterVO, ModelMap model) throws Exception {
+
+ boardMasterVO.setPageUnit(propertyService.getInt("pageUnit"));
+ boardMasterVO.setPageSize(propertyService.getInt("pageSize"));
+
+ PaginationInfo paginationInfo = new PaginationInfo();
+
+ paginationInfo.setCurrentPageNo(boardMasterVO.getPageIndex());
+ paginationInfo.setRecordCountPerPage(boardMasterVO.getPageUnit());
+ paginationInfo.setPageSize(boardMasterVO.getPageSize());
+
+ boardMasterVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
+ boardMasterVO.setLastIndex(paginationInfo.getLastRecordIndex());
+ boardMasterVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
+
+ Map map = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
+ int totCnt = Integer.parseInt((String) map.get("resultCnt"));
+
+ paginationInfo.setTotalRecordCount(totCnt);
+
+ model.addAttribute("resultList", map.get("resultList"));
+ model.addAttribute("resultCnt", map.get("resultCnt"));
+ model.addAttribute("paginationInfo", paginationInfo);
+
+ return "cop/bbs/EgovBoardMstrList";
+ }
+
+ /**
+ * 게시판 ID를 조회한다.
+ * @param searchVO ComDefaultVO
+ * @return 출력페이지정보 "cop/bbs/EgovBoardIdSearch"
+ * @exception Exception
+ */
+ @RequestMapping(value = "/cop/bbs/EgovBBSIdListSearch.do")
+ public String selectBBSIdListSearch(@ModelAttribute("searchVO") ComDefaultVO searchVO, ModelMap model) throws Exception {
+
+ // 0. Spring Security 사용자권한 처리
+ Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
+ if (!isAuthenticated) {
+ model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
+ return "uat/uia/EgovLoginUsr";
+ }
+ // 내역 조회
+ searchVO.setPageUnit(propertiesService.getInt("pageUnit"));
+ searchVO.setPageSize(propertiesService.getInt("pageSize"));
+
+
+ /** pageing */
+ PaginationInfo paginationInfo = new PaginationInfo();
+ paginationInfo.setCurrentPageNo(searchVO.getPageIndex());
+ paginationInfo.setRecordCountPerPage(searchVO.getPageUnit());
+ paginationInfo.setPageSize(searchVO.getPageSize());
+
+ searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
+ searchVO.setLastIndex(paginationInfo.getLastRecordIndex());
+ searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
+System.out.println("===========");
+
+ /*OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY*/
+
+ Map map = bbsAttrbService.selectBBSIdList(searchVO);
+ int totCnt = Integer.parseInt((String) map.get("resultCnt"));
+
+ paginationInfo.setTotalRecordCount(totCnt);
+
+ model.addAttribute("resultList", map.get("resultList"));
+ model.addAttribute("paginationInfo", paginationInfo);
+
+ return "cop/bbs/EgovBoardIdSearch";
+ }
+
+ /**
+ * 선택된 게시판을 삭제한다.
+ * @param bbsIds String
+ * @param boardMasterVO BoardMasterVO
+ * @return String
+ * @exception Exception
+ */
+ @RequestMapping(value = "/cop/bbs/DeleteBBSMasterInfs.do")
+ public String deleteBBSMasterInfs(@RequestParam("bbsIds") String bbsIds, @ModelAttribute("BoardMasterVO") BoardMasterVO boardMasterVO, RedirectAttributes redirectAttributes)
+ throws Exception {
+
+ // 게시판 설정 관리권한 체크
+ boolean bbsAttrMngAuth = false;
+ LoginVO loginVo = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser() ;
+ if("ROLE_ADMIN".equals(loginVo.getAuthority())){
+ bbsAttrMngAuth = true;
+ }
+
+ if (!bbsAttrMngAuth) {
+ redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.auth"));
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ String[] strBbsIds = bbsIds.split(";");
+ for (int i = 0; i < strBbsIds.length; i++) {
+ boardMasterVO.setBbsId(strBbsIds[i]);
+ bbsAttrbService.deleteBBSMasterInf(boardMasterVO);
+ }
+
+ // status.setComplete(); // ?
+
+ boardMasterVO.setPageIndex(1);
+ redirectAttributes.addAttribute("pageIndex", boardMasterVO.getPageIndex());
+ redirectAttributes.addAttribute("searchCnd", boardMasterVO.getSearchCnd());
+ redirectAttributes.addAttribute("searchWrd", boardMasterVO.getSearchWrd());
+ redirectAttributes.addFlashAttribute("message", "정상적으로 처리 되었습니다.");
+ return "redirect:/cop/bbs/SelectBBSMasterInfs.do";
+ }
+
+ public String getBbsUrl(String bbsId , String bbsHomeUrl){
+ //원자력소식
+ if("BBSMSTR_000000000411".equals(bbsId)
+ ||"BBSMSTR_000000000412".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/NewsList.do"; return bbsHomeUrl ;}
+ //자료실
+ if("BBSMSTR_000000000493".equals(bbsId)
+ ||"BBSMSTR_000000000477".equals(bbsId)
+ ||"BBSMSTR_000000000476".equals(bbsId)
+ ||"BBSMSTR_000000000475".equals(bbsId)
+ ||"BBSMSTR_000000000474".equals(bbsId)
+ ||"BBSMSTR_000000000473".equals(bbsId)
+ ||"BBSMSTR_000000000472".equals(bbsId)
+ ||"BBSMSTR_000000000471".equals(bbsId)
+ ||"BBSMSTR_000000000461".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/LibList.do?bbsId="+bbsId; return bbsHomeUrl ;}
+
+ //자주하는질문
+ if("BBSMSTR_000000000429".equals(bbsId)
+ ||"BBSMSTR_000000000428".equals(bbsId)
+ ||"BBSMSTR_000000000427".equals(bbsId)
+ ||"BBSMSTR_000000000426".equals(bbsId)
+ ||"BBSMSTR_000000000425".equals(bbsId)
+ ||"BBSMSTR_000000000424".equals(bbsId)
+ ||"BBSMSTR_000000000423".equals(bbsId)
+ ||"BBSMSTR_000000000422".equals(bbsId)
+ ||"BBSMSTR_000000000421".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/FaqList.do"; return bbsHomeUrl ;}
+
+ //묻고답하기
+ if("BBSMSTR_000000000528".equals(bbsId)
+ ||"BBSMSTR_000000000527".equals(bbsId)
+ ||"BBSMSTR_000000000526".equals(bbsId)
+ ||"BBSMSTR_000000000525".equals(bbsId)
+ ||"BBSMSTR_000000000524".equals(bbsId)
+ ||"BBSMSTR_000000000523".equals(bbsId)
+ ||"BBSMSTR_000000000522".equals(bbsId)
+ ||"BBSMSTR_000000000521".equals(bbsId)
+ ||"BBSMSTR_000000000490".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/QnaList.do"; return bbsHomeUrl ;}
+
+ //사전정보공표
+ if("BBSMSTR_000000000541".equals(bbsId)
+ ||"BBSMSTR_000000000456".equals(bbsId)
+ ||"BBSMSTR_000000000455".equals(bbsId)
+ ||"BBSMSTR_000000000454".equals(bbsId)
+ ||"BBSMSTR_000000000453".equals(bbsId)
+ ||"BBSMSTR_000000000452".equals(bbsId)
+ ||"BBSMSTR_000000000451".equals(bbsId)
+ ||"BBSMSTR_000000000445".equals(bbsId)
+ ||"BBSMSTR_000000000444".equals(bbsId)
+ ||"BBSMSTR_000000000443".equals(bbsId)
+ ||"BBSMSTR_000000000442".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/PubOperList.do?bbsId="+bbsId; return bbsHomeUrl ;}
+
+ //통합경영공시
+ if("BBSMSTR_000000000581".equals(bbsId)
+ ||"BBSMSTR_000000000582".equals(bbsId)
+ ||"BBSMSTR_000000000583".equals(bbsId)
+ ||"BBSMSTR_000000000584".equals(bbsId)
+ ){bbsHomeUrl = "/web/content.do?proFn=9640000"; return bbsHomeUrl ;}
+
+ //사전정보공표(하단 리스트 게시판 ) BBSMSTR_000000000442 ~
+ if("BBSMSTR_000000000599".equals(bbsId)
+ ||"BBSMSTR_000000000551".equals(bbsId)
+ ||"BBSMSTR_000000000598".equals(bbsId)
+ ||"BBSMSTR_000000000597".equals(bbsId)
+ ||"BBSMSTR_000000000596".equals(bbsId)
+ ||"BBSMSTR_000000000595".equals(bbsId)
+ ||"BBSMSTR_000000000594".equals(bbsId)
+ ||"BBSMSTR_000000000593".equals(bbsId)
+ ||"BBSMSTR_000000000571".equals(bbsId)
+
+ ||"BBSMSTR_000000000602".equals(bbsId)
+ ||"BBSMSTR_000000000601".equals(bbsId)
+ ||"BBSMSTR_000000000600".equals(bbsId)
+ ||"BBSMSTR_000000000592".equals(bbsId)
+ ||"BBSMSTR_000000000591".equals(bbsId)
+
+ ||"BBSMSTR_000000000608".equals(bbsId)
+ ||"BBSMSTR_000000000607".equals(bbsId)
+ ||"BBSMSTR_000000000606".equals(bbsId)
+ ||"BBSMSTR_000000000605".equals(bbsId)
+ ||"BBSMSTR_000000000604".equals(bbsId)
+ ||"BBSMSTR_000000000603".equals(bbsId)
+
+
+ ||"BBSMSTR_000000000614".equals(bbsId)
+ ||"BBSMSTR_000000000613".equals(bbsId)
+ ||"BBSMSTR_000000000612".equals(bbsId)
+ ||"BBSMSTR_000000000611".equals(bbsId)
+ ||"BBSMSTR_000000000610".equals(bbsId)
+ ||"BBSMSTR_000000000609".equals(bbsId)
+
+ ||"BBSMSTR_000000000632".equals(bbsId)
+ ||"BBSMSTR_000000000631".equals(bbsId)
+ ||"BBSMSTR_000000000630".equals(bbsId)
+
+ ||"BBSMSTR_000000000616".equals(bbsId)
+ ||"BBSMSTR_000000000615".equals(bbsId)
+
+ ||"BBSMSTR_000000000618".equals(bbsId)
+ ||"BBSMSTR_000000000617".equals(bbsId)
+
+ ||"BBSMSTR_000000000621".equals(bbsId)
+ ||"BBSMSTR_000000000620".equals(bbsId)
+ ||"BBSMSTR_000000000619".equals(bbsId)
+
+ ||"BBSMSTR_000000000625".equals(bbsId)
+ ||"BBSMSTR_000000000622".equals(bbsId)
+
+ ||"BBSMSTR_000000000629".equals(bbsId)
+ ){bbsHomeUrl = "/web/cop/bbs/PubOperList.do?pubDetail=Y&bbsId="+bbsId; return bbsHomeUrl ;}
+ return bbsHomeUrl+bbsId;
+ }
+
+
+ //게시판 마스터 리스트 엑셀 다운로드
+ @RequestMapping(value="/cop/bbs/bbsMasterExcelDownload.do")
+ public void bbsMasterExcelDownload( BoardMasterVO boardMasterVO,
+ HttpServletRequest request,
+ HttpServletResponse response ,
+ ModelMap model) throws Exception {
+
+ boardMasterVO.setRecordCountPerPage(100000);
+ boardMasterVO.setFirstIndex(0);
+ LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
+ if(null != loginVO && !"super".equals(loginVO.getSiteId())){
+ boardMasterVO.setSiteId(loginVO.getSiteId());
+ }
+ // 메모리에 100개의 행을 유지합니다. 행의 수가 넘으면 디스크에 적습니다.
+ SXSSFWorkbook wb = new SXSSFWorkbook(100);
+ CellStyle style = wb.createCellStyle();
+ style.setBorderBottom(CellStyle.BORDER_THIN); //테두리 두껍게
+ style.setBorderLeft(CellStyle.BORDER_THIN);
+ style.setBorderRight(CellStyle.BORDER_THIN);
+ style.setBorderTop(CellStyle.BORDER_THIN);
+ Font font = wb.createFont();
+ font.setBoldweight(Font.BOLDWEIGHT_BOLD); //글씨 bold
+
+ Cell cell = null;
+ Row row = null;
+
+ String fileName ="게시판 마스터 리스트";
+
+ String sheetTitle = "";
+ try{
+ //List> userSearchList = userManageService.selectUserList(userSearchVO) ;
+ boardMasterVO.setDelSttus("Y");
+ Map bbsMasterList = bbsAttrbService.selectBBSMasterInfs(boardMasterVO);
+ { //화면 리스트
+ sheetTitle = "게시판 마스터 리스트(화면)" ; //제목
+ Sheet sheet = wb.createSheet(sheetTitle);
+ row = sheet.createRow(0);
+ for(int i=0 ; i < bbsMasterExcelValue.length ; i++) {
+ cell = row.createCell(i);
+ cell.setCellStyle(style);
+ cell.setCellValue(bbsMasterExcelValue[i][1]);
+ }
+
+ List bbsMasterCastList = (List)bbsMasterList.get("resultList") ;
+ for(int i=0; i < bbsMasterCastList.size(); i++){
+ row = sheet.createRow(i+1);
+ for(int j=0 ; j < bbsMasterExcelValue.length ; j++) {
+ cell = row.createCell(j);
+ cell.setCellStyle(style);
+ if(j==0) cell.setCellValue(i+1); //번호
+ if(j==1) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getSiteNm()); //사이트명
+ if(j==2) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getBbsNm()); //게시판명
+ if(j==3) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getNewCnt()+"/"+ ((BoardMasterVO)bbsMasterCastList.get(i)).getTotCnt()); //새글/총글수
+ if(j==4) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getBbsTyCodeNm()); //게시판유형
+ if(j==5) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getUseAtTxt()); //사용여부
+ if(j==6) cell.setCellValue(((BoardMasterVO)bbsMasterCastList.get(i)).getFrstRegisterPnttm()); //생성일
+ }
+ }
+ }
+ response.setHeader("Set-Cookie", "fileDownload=true; path=/");
+ SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat ( "yyyy_MM_dd_HH_mm_ss", Locale.KOREA );
+ Date currentTime = new Date ();
+ String mTime = mSimpleDateFormat.format ( currentTime );
+ fileName = fileName+"("+mTime+")";
+
+ response.setHeader("Content-Disposition", String.format("attachment; filename=\""+new String((fileName).getBytes("KSC5601"),"8859_1")+".xlsx"));
+ wb.write(response.getOutputStream());
+
+ }catch(Exception e) {
+ response.setHeader("Set-Cookie", "fileDownload=false; path=/");
+ response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
+ response.setHeader("Content-Type","text/html; charset=utf-8");
+ OutputStream out = null;
+ try {
+ out = response.getOutputStream();
+ byte[] data = new String("fail..").getBytes();
+ out.write(data, 0, data.length);
+ } catch(Exception ignore) {
+ System.out.println("bbsMasterExcelDownload Exception Error");
+ } finally {
+ if(out != null) try { out.close(); } catch(Exception ignore) {System.out.println("file Exception Error");}
+ }
+ }finally {
+ // 디스크 적었던 임시파일을 제거합니다.
+ wb.dispose();
+ try {
+ wb.close();
+ } catch(Exception ignore) {
+ System.out.println("bbsMasterExcelDownload Exception Error");
+ }
+ }
+ }
+
+}
diff --git a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/FndtnEnhanceTrnService.java b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/FndtnEnhanceTrnService.java
index 305e1998..507b03f5 100644
--- a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/FndtnEnhanceTrnService.java
+++ b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/FndtnEnhanceTrnService.java
@@ -1,7 +1,10 @@
package kcc.ve.aplct.fndtnEnhanceTrn.service;
+import java.util.List;
+
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
+import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
public interface FndtnEnhanceTrnService {
@@ -9,5 +12,9 @@ public interface FndtnEnhanceTrnService {
VEEduAplctVO findByAprvlCd(VEEduAplctVO vEEduAplctReqVO);
+ void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO);
+
+ List selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO);
+
}
diff --git a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/impl/FndtnEnhanceTrnServiceImpl.java b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/impl/FndtnEnhanceTrnServiceImpl.java
index 079e729d..f3a58a0b 100644
--- a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/impl/FndtnEnhanceTrnServiceImpl.java
+++ b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/service/impl/FndtnEnhanceTrnServiceImpl.java
@@ -48,4 +48,15 @@ public class FndtnEnhanceTrnServiceImpl implements FndtnEnhanceTrnService {
public VEEduAplctVO findByAprvlCd(VEEduAplctVO vEEduAplctReqVO) {
return vEEduAplctDAO.findByAprvlCd(vEEduAplctReqVO);
}
+
+ @Override
+ public void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
+ vEEduAplctDAO.insertVeEduQna(vEPrcsDetailVO);
+
+ }
+
+ @Override
+ public List selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
+ return vEEduAplctDAO.selectVeEduQna(vEPrcsDetailVO);
+ }
}
diff --git a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/web/FndtnEnhanceTrnController.java b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/web/FndtnEnhanceTrnController.java
index 80da7a34..60f71b76 100644
--- a/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/web/FndtnEnhanceTrnController.java
+++ b/src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/web/FndtnEnhanceTrnController.java
@@ -131,6 +131,10 @@ public class FndtnEnhanceTrnController {
@Resource(name="eduChasiGnrService")
private EgovIdGnrService eduChasiGnrService;
+ //qna순번
+ @Resource(name="prcsAplctPrdQnaOrdGnrService")
+ private EgovIdGnrService prcsAplctPrdQnaOrdGnrService;
+
//교육신청온라인
@Resource(name = "vEEduAplctOnlnService")
private VEEduAplctOnlnService vEEduAplctOnlnService;
@@ -219,6 +223,12 @@ public class FndtnEnhanceTrnController {
model.addAttribute("list", vEPrcsDetailVOList);
model.addAttribute("countMap", countMap);
+
+ // Q&A 영역
+ vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId());
+ List vEPrcsDetailQnaVOList = fndtnEnhanceTrnService.selectVeEduQna(vEPrcsDetailVO);
+ model.addAttribute("qnaList", vEPrcsDetailQnaVOList);
+
//3.pageing step3
return "/web/ve/aplct/fndtnEnhanceTrn/main";
}
@@ -503,6 +513,65 @@ public class FndtnEnhanceTrnController {
}
+ /**
+ * @methodName : fndthEduPrcsAplctPrdMngRegAjax
+ * @author : 이호영
+ * @date : 2023.11.16
+ * @description :
+ * @param vEPrcsDetailVO
+ * @param model
+ * @param request
+ * @return
+ * @throws Exception
+ */
+ @RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/qnaRegAjax.do")
+ public ModelAndView qnaRegAjax(
+ @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
+ , ModelMap model
+ , HttpServletRequest request
+ ) throws Exception {
+
+ ModelAndView modelAndView = new ModelAndView();
+ modelAndView.setViewName("jsonView");
+
+ //로그인 처리====================================
+ //로그인 정보 가져오기
+
+ String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
+ if (!"".equals(s_oprtnLoginCheckNInfo)) {
+ modelAndView.addObject("result", "loginFail");
+ return modelAndView;
+ }
+
+ //로그인 처리====================================
+ LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
+ SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
+
+
+ vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
+ vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId()); //esntl_id
+ vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
+ vEPrcsDetailVO.setPrcsAplctPrdQnaOrd(prcsAplctPrdQnaOrdGnrService.getNextStringId());
+ vEPrcsDetailVO.setQnaRegist(loginVO.getUniqId());
+
+ String msg = "등록되었습니다";
+ try {
+ fndtnEnhanceTrnService.insertVeEduQna(vEPrcsDetailVO);
+
+ } catch (Exception e) {
+ // TODO: handle exception
+ e.printStackTrace();
+ msg = "등록에 실패하였습니다. 관리자에게 문의해주세요";
+ }
+
+
+ modelAndView.addObject("msg", msg);
+ modelAndView.addObject("result", "success");
+
+ return modelAndView;
+
+ }
+
/**
* 교육 list select
*/
diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduAplctDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduAplctDAO.java
index c3a0313f..08ead63e 100644
--- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduAplctDAO.java
+++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduAplctDAO.java
@@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
+import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
@Repository("vEEduAplctDAO")
public class VEEduAplctDAO extends EgovAbstractDAO {
@@ -159,4 +160,14 @@ public class VEEduAplctDAO extends EgovAbstractDAO {
public void updateSbmtAtchFileId(VEEduAplctVO paramVO) throws Exception {
insert("VEEduAplctDAO.updateSbmtAtchFileId", paramVO);
}
+
+ public void insertVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
+ insert("VEEduAplctDAO.insertVeEduQna", vEPrcsDetailVO);
+ }
+
+ public List selectVeEduQna(VEPrcsDetailVO vEPrcsDetailVO) {
+ return (List) list("VEEduAplctDAO.selectVeEduQna", vEPrcsDetailVO);
+ }
+
+
}
diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java
index 717cd553..0f284399 100644
--- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java
+++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java
@@ -143,6 +143,13 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
private String prcsAplctPrdEtcOrd;
+ private String prcsAplctPrdQnaOrd;
+ private String qnaRegist;
+ private String qnaCn;
+ private String qnaAnswerCn;
+ private String qnaAnswerer;
+
+
public String getSearchDiv() {
@@ -686,6 +693,36 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
public void setPrcsAplctPrdEtcOrd(String prcsAplctPrdEtcOrd) {
this.prcsAplctPrdEtcOrd = prcsAplctPrdEtcOrd;
}
+ public String getPrcsAplctPrdQnaOrd() {
+ return prcsAplctPrdQnaOrd;
+ }
+ public void setPrcsAplctPrdQnaOrd(String prcsAplctPrdQnaOrd) {
+ this.prcsAplctPrdQnaOrd = prcsAplctPrdQnaOrd;
+ }
+ public String getQnaRegist() {
+ return qnaRegist;
+ }
+ public void setQnaRegist(String qnaRegist) {
+ this.qnaRegist = qnaRegist;
+ }
+ public String getQnaCn() {
+ return qnaCn;
+ }
+ public void setQnaCn(String qnaCn) {
+ this.qnaCn = qnaCn;
+ }
+ public String getQnaAnswerCn() {
+ return qnaAnswerCn;
+ }
+ public void setQnaAnswerCn(String qnaAnswerCn) {
+ this.qnaAnswerCn = qnaAnswerCn;
+ }
+ public String getQnaAnswerer() {
+ return qnaAnswerer;
+ }
+ public void setQnaAnswerer(String qnaAnswerer) {
+ this.qnaAnswerer = qnaAnswerer;
+ }
}
diff --git a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java
index 42e3c5e7..822e4c6e 100644
--- a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java
+++ b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java
@@ -208,6 +208,54 @@ public class FndthPrcsInfoMngController {
///kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do
}
+ @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduQnaMngList.do")
+ public String fndthEduQnaMngList(
+ @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
+ , ModelMap model
+ ) throws Exception {
+
+ //로그인 처리====================================
+ //로그인 정보 가져오기
+
+ String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
+ if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
+
+ //로그인 처리====================================
+
+ //1.pageing step1
+ PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
+
+ //임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
+ //paginationInfo.setRecordCountPerPage(10000);
+
+ //2. pageing step2
+ vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
+
+ //기반강화 조회
+ vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
+
+ if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchKeyword())){
+ String selectCondition = "AND a.PRCS_NM LIKE CONCAT ('%', '" +vEPrcsDetailVO.getSearchKeyword() + "', '%')";
+ vEPrcsDetailVO.setSelectPagingListQuery(selectCondition);
+ }
+
+ List vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
+
+ //3.pageing step3
+ paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
+
+
+ model.addAttribute("paginationInfo", paginationInfo);
+
+
+ //대상 리스트, 페이징 정보 전달
+ model.addAttribute("list", vEPrcsDetailVOList);
+
+
+ return "oprtn/fndthEnhanceTrn/fndthEduQnaMngList";
+// return "oprtn/fndthEnhanceTrn/fndthEduPrcsMngList";
+ }
+
/**
* 기반강화연수과정 등록 화면
*/
diff --git a/src/main/resources/egovframework/spring/com/context-idgen.xml b/src/main/resources/egovframework/spring/com/context-idgen.xml
index fcdfe196..ce0391d2 100644
--- a/src/main/resources/egovframework/spring/com/context-idgen.xml
+++ b/src/main/resources/egovframework/spring/com/context-idgen.xml
@@ -3013,5 +3013,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/resources/egovframework/sqlmap/let/cop/bbs/EgovBBSMaster_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/let/cop/bbs/EgovBBSMaster_SQL_Tibero.xml
index d099a335..91395f2a 100644
--- a/src/main/resources/egovframework/sqlmap/let/cop/bbs/EgovBBSMaster_SQL_Tibero.xml
+++ b/src/main/resources/egovframework/sqlmap/let/cop/bbs/EgovBBSMaster_SQL_Tibero.xml
@@ -606,20 +606,23 @@