package com.pms.service; import java.sql.Clob; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.ibatis.session.SqlSession; import org.springframework.stereotype.Service; import com.pms.common.Message; import com.pms.common.SqlMapConfig; import com.pms.common.bean.PersonBean; import com.pms.common.utils.CommonUtils; import com.pms.common.utils.Constants; @Service public class BoardService { /** * 공지사항/Q&A의 목록을 가져온다. * @param paramMap * @return */ public ArrayList getBoardList(HttpServletRequest request, Map paramMap){ ArrayList> resultList = new ArrayList(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try{ String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+""); paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage)); Map pageMap = (HashMap)sqlSession.selectOne("board.getBoardListCnt", paramMap); pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap); paramMap.put("PAGE_END", CommonUtils.checkNull(pageMap.get("PAGE_END"))); paramMap.put("PAGE_START", CommonUtils.checkNull(pageMap.get("PAGE_START"))); resultList = (ArrayList)sqlSession.selectList("board.getBoardPagingList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 공지사항 최신건 * @param paramMap * @return */ public List getpopupList(HttpServletRequest request,Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = (ArrayList)sqlSession.selectList("board.getpopupList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 공지사항/Q&A의 상세 정보를 가져온다. * @param paramMap * @return */ public HashMap getBoardDetailInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); HashMap detailMap = new HashMap(); try{ detailMap = (HashMap)sqlSession.selectOne("board.getBoardDetailInfo", paramMap); // if(!detailMap.isEmpty()){ // String reqContents = CommonUtils.getClobToString((Clob)detailMap.get("REQ_CONTENTS")); // detailMap.put("REQ_CONTENTS",reqContents); // String resContents = CommonUtils.getClobToString((Clob)detailMap.get("RES_CONTENTS")); // detailMap.put("RES_CONTENTS",resContents); // } }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(detailMap); } /** * 해당 게시물의 댓글 정보를 가져온다. * @param paramMap * @return */ public ArrayList getBoardCommentsInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); ArrayList> commentsMap = new ArrayList(); try{ commentsMap = (ArrayList)sqlSession.selectList("board.getBoardCommentsInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(commentsMap); } /** * 해당 게시물의 댓글 정보를 가져온다. * @param paramMap * @return */ public Map getBoardCommentsInfoMap(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); Map commentsMap = new HashMap(); try{ commentsMap = sqlSession.selectOne("board.getBoardCommentsInfoMap", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(commentsMap); } /** * 공지사항/Q&A의 상세 정보를 가져온다. * @param paramMap * @return */ public void saveQnaReqInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try{ sqlSession.update("board.mergeReqBoardInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } } /** * Q&A의 정보를 삭제한다. * @param paramMap * @return */ public void deleteQnaReqInfo(HttpServletRequest request, Map paramMap) { SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try { sqlSession.delete("board.deleteReqBoardInfo", paramMap); } catch(Exception e) { e.printStackTrace(); } finally { sqlSession.close(); } } /** * 공지사항/Q&A의 상세 정보를 가져온다. * @param paramMap * @return */ public void saveQnaResInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try{ sqlSession.update("board.mergeResBoardInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } } /** * 공지사항/Q&A의 상세 정보를 가져온다. * @param paramMap * @return */ public void saveBoardInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try{ sqlSession.update("board.mergeBoardInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } } /** * 공지사항 해당 리스트 팝업 내 삭제 * @param paramMap * @return */ public void delBoardInfo(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(); try{ sqlSession.update("board.deleteBoardInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } } /** * 공지사항 체크 리스트 삭제 * @param paramMap * @return */ public Map delBoardListInfo(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ String check[] = request.getParameterValues("ListCheck"); System.out.println("ListCheck=" + check ); if(null != check && 0 < check.length){ for(int i=0; i