= 게시판 관리 == 개요 SDL에서 제공하는 게시판 관리 기능으로 공지사항(메인화면 공지팝업 연동)이나 FAQ 게시판 등 Community 성격으로 게시글 등록 및 답변기능을 사용할 수 있는 게시판 기능이다. + 관리 기능에서 게시판 등록 및 관리를 할 수 있으며 사용자용과 관리자용 메뉴를 따로 만들어 권한별로 게시판 기능을 사용할 수 있도록 제공한다. == Table * 게시판 : TN_CF_BOARD * 게시판 분류 : TN_CF_BOARD_CLASSIFICATION * 게시판 컬럼 : TN_CF_BOARD_COLUMN == API .BoardController.java . 게시판 목록 조회(페이징) + GET /boards-with-paging + Query ID : selectBoardPagingList . 게시판 상세정보 조회 + GET /boards/{boardId} + Query ID : selectBoard . 게시판 등록 + POST /boards + Query ID : insertBoard, insertBoardClassification, insertBoardColumn * 게시판 등록 시 등록화면에서 추가한 게시판 분류 목록과 default 컬럼 정보가 저장된다. [source,java] ---- @Override @Transactional public void insertBoard(Board board) { // 게시판 저장. boardDao.insertBoard(board); // 게시판 분류 저장. if (!board.getClassifications().isEmpty()) { for (BoardClassification boardClassification : board.getClassifications()) { boardClassification.setBoardId(board.getBoardId()); boardClassification.setClassificationId(idGenService.getNextStringId()); boardDao.insertBoardClassification(boardClassification); } } // 게시판 컬럼 저장. boardDao.insertBoardColumn(board.getBoardId()); } ---- [start=5] . 게시판 수정 + PUT /boards/{boardId} + Query ID : updateBoard, updateBoardClassification, updateBoardColumn * 게시판 수정시 변경된 게시판 분류 목록과 컬럼 정보가 수정된다. [source,java] ---- @Override @Transactional public void updateBoard(Board board) { // 게시판 수정. boardDao.updateBoard(board); // 게시판 분류 수정. List beforeClassifications = boardDao.getBoardClassificationList(board.getBoardId()); List beforeClassificationIdList = new ArrayList<>(); -- 생략 -- } ---- [start=6] . 게시판 삭제 + DELETE /boards/{boardId} + Query ID : deleteBoard == 화면 . 게시판 목록 화면 image::boardManagement_01.png[] * 게시판 목록을 확인할 수 있다. * 해당 게시판의 등록된 게시글 등록건수와 현재 사용 여부등의 정보를 보여준다. * 등록 버튼 클릭 시 등록화면으로 이동되며 게시판 명 클릭 시 게시판 수정화면으로 이동된다. [start=2] . 게시판 등록 화면 image::boardManagement_02.png[] * 게시판을 등록할 수 있다. * 게시판 세부기능 속성 ** 에디터 사용여부 : CafeNote 등 에디터를 사용할지 선택('미사용' 선택 시 textarea 태그로 구현된다) ** 이미지파일사용 : 이미지 파일 등록 시 본문에 이미지를 표시한다.(사진형 게시판일 경우 필수사용) ** 메인 공지팝업 : 게시글 등록 시 메인 공지사항 팝업창에 해당 기간동안 게시글이 노출된다. ** 게시글 '공지'라벨 표시 : 게시글 등록 시 게시글 목록 상단에 공지 게시글로 노출된다. [start=3] . 게시판 상세정보 수정 화면 image::boardManagement_03.png[] * 게시판 세부기능 속성 변경이 가능하다. * '공지팝업 제한' 기능은 해당 게시판의 공지게시글을 일시적으로 제한할 수 있는 기능이다. image::boardManagement_04.png[] * 게시판의 검색 조건을 선택할 수 있다. * 게시글 목록화면에서 보여줄 정보를 선택 할수 있다. ** 각 컬럼의 사용 여부에 따라서 넓이가 합산 100%로 변경된다. * 게시글 목록 정렬 기준을 선택 할 수 있으며 작성일 내림차순이 기본으로 선택된다.