package kcg.faics.cmmn.service;

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

import kcg.faics.cmmn.MenuPosition;
import kcg.faics.cmmn.vo.MenuVO;

/**
 * 메뉴관련 서비스 객체.
 * 
 * @author kimnomin
 *
 */
public interface MenuService {

	/**
	 * 현재 메뉴와 상위메뉴 목록을 반환한다.
	 * 
	 * @param menuVO
	 *            검색조건 VO
	 * @return 현재 메뉴를 포함한 상위메뉴 목록
	 */
	List<MenuVO> selectListWithHigher(MenuVO menuVO);
	
	/**
	 * 메뉴 목록을 반환한다.
	 *
	 * @param menuVO
	 *            검색조건 VO
	 * @return 메뉴 목록
	 */
	List<MenuVO> selectMainMenuList(MenuVO menuVO);

	/**
	 * 상단 보조메뉴 목록을 반환한다.
	 * 
	 * @param menuVO
	 *            검색조건 VO
	 * @return 상단 보조메뉴 목록
	 */
	List<MenuVO> selectTopSubMenuList(MenuVO menuVO);

	/**
	 * 게시판 메뉴에 대한 정보를 가져온다.
	 * 
	 * @param menu
	 *            가져올 메뉴정보
	 * @return 데이터 맵
	 */
	HashMap<String, Object> getMenuInfo(HashMap<String, Object> menu);

	/**
	 * 서브 메뉴에 대한 정보를 가져온다.
	 * 
	 * @param menu
	 *            가져올 메뉴정보
	 * @return 데이터 맵
	 */
	List<HashMap<String, Object>> getSubmenu(HashMap<String, Object> menu);
}
