package kcg.faics.board.service.impl;

import java.util.HashMap;
import java.util.List;

import kcg.faics.board.vo.BoardCommentVO;

import org.springframework.stereotype.Repository;

import egovframework.rte.psl.dataaccess.EgovAbstractMapper;

/** 
 * BoardCommentMapper.java 
 * @author 임새미 
 * @since 2016. 9. 29.
 *
 *  	 수정일                     수정자                                       수정내용
 *  -------------	--------	---------------------------
 *  2016. 9. 29. 	    임새미				       최초생성
 * 
 */
@Repository("boardCommentMapper")
public class BoardCommentMapper extends EgovAbstractMapper {
	
	/**
	 *  throws Exception {한 게시물의 덧글 리스트를 반환한다.
	 * 
	 * @param boardCommentVO 게시판 아이디
	 * @return 선택한 게시물의 덧글 리스트
	 * @throws Exception 기본 예외 처리
	 */
	public List<BoardCommentVO> selectCommentList(final BoardCommentVO boardCommentVO) throws Exception {
		return selectList("BoardComment.selectCommentList", boardCommentVO);
	}

	
	/**
	 * 선택한 덧글을 반환한다.
	 * 
	 * @param boardCommentVO 덧글 아이디
	 * @return 선택한 덧글의 상세 내용
	 * @throws Exception 기본 예외 처리
	 */
	public BoardCommentVO selectBoardComment(final BoardCommentVO boardCommentVO) throws Exception {
		return selectOne("BoardComment.selectBoardComment", boardCommentVO);
	}

	
	/**
	 * 덧글을 추가한다.
	 * 
	 * @param boardCommentVO 덧글 데이터
	 * @return 성공 - 1, 실패 - 0
	 * @throws Exception 기본 예외 처리
	 */
	public HashMap<String, Object> insertBoardComment(final BoardCommentVO boardCommentVO) throws Exception {
		HashMap<String, Object> map = new HashMap<String, Object>();
		int result = 0;
		result = insert("BoardComment.insertBoardComment", boardCommentVO);
		
		map.put("seq", boardCommentVO.getSeq());
		map.put("result", result);
		return map;
	}

	
	/**
	 * 선택한 덧글을 삭제한다.
	 * 
	 * @param boardCommentVO 덧글 아이디
	 * @return 성공 - 1, 실패 - 0
	 * @throws Exception 기본 예외 처리
	 */
	public int deleteBoardComment(final BoardCommentVO boardCommentVO) throws Exception {
		return delete("BoardComment.deleteBoardComment", boardCommentVO);
	}

	
	/**
	 * 선택한 게시물의 모든 덧글을 삭제한다.
	 * 
	 * @param boardCommentVO 선택한 게시물 아이디
	 * @return 성공 - 1, 실패 - 0
	 * @throws Exception 기본 예외 처리
	 */
	public int deleteBoardCommentAll(final BoardCommentVO boardCommentVO) throws Exception {
		return delete("BoardComment.deleteBoardCommentAll", boardCommentVO);
	}

}
