package incheon.ags.por.service.impl;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Predicate;
import java.util.stream.Collectors;

import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl;
import org.springframework.stereotype.Service;

import incheon.ags.por.mapper.PorDstrctMapper;
import incheon.ags.por.service.PorDstrctService;
import incheon.ags.por.vo.PorDstrctHistResultVO;
import incheon.ags.por.vo.PorDstrctIdResultVO;
import incheon.ags.por.vo.PorDstrctPlanResultVO;
import lombok.RequiredArgsConstructor;

/**
 * 지구단위계획내용을 위한 서비스 구현 클래스
 */
@Service("porDstrctService")
@RequiredArgsConstructor
public class PorDstrctServiceImpl extends EgovAbstractServiceImpl implements PorDstrctService {

	private final PorDstrctMapper porDstrctMapper;
	
	/**
	 * 지구단위계획을 조회한다.
	 * 
	 * @param String value - 조회할 정보가 담긴 pnu
	 * @return 게시물 목록
	 * @exception Exception
	 */
	@Override
	public PorDstrctPlanResultVO selectDstrctPlanList(PorDstrctPlanResultVO vo) throws Exception {
		return porDstrctMapper.selectDstrctPlanList(vo);
	}
	
	
	/**
	 * 지구단위계획 연혁을 조회한다.
	 * 
	 * @param String value - 조회할 정보가 담긴 pnu
	 * @return 게시물 목록
	 * @exception Exception
	 */
	@Override
	public List<PorDstrctHistResultVO> selectDstrctHistList(PorDstrctHistResultVO vo) throws Exception {
		return porDstrctMapper.selectDstrctHistList(vo);
	}
	
	
	/**
	 * 지구단위계획 구역 아이디를 조회한다.
	 * 
	 * @param String value - 조회할 정보가 담긴 lan lot
	 * @return 아이디
	 * @exception Exception
	 */
	@Override
	public PorDstrctIdResultVO selectDstrctId(PorDstrctIdResultVO vo) throws Exception {
		return porDstrctMapper.selectDstrctId(vo);
	}
	
	
	/**
	 * 위경도 기반 지구단위계획을 조회한다.
	 * 
	 * @param String value - 조회할 정보가 담긴 pnu
	 * @return 게시물 목록
	 * @exception Exception
	 */
	@Override
	public PorDstrctPlanResultVO selectDstrctPlanListByPoint(PorDstrctPlanResultVO vo) throws Exception {
		return porDstrctMapper.selectDstrctPlanListByPoint(vo);
	}

}