package cokr.xit.fims.crdn.dao;

import java.util.List;

import org.egovframe.rte.psl.dataaccess.mapper.Mapper;

import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;

/**단속 대장 목록 조회 DAO
 * @author leebj
 */
@Mapper("crdnListMapper")
public interface CrdnListMapper extends AbstractMapper {

	/**금일 등록한 단속자료 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 단속자료 목록 조회 조건
	 * @return 단속자료 목록
	 */
	List<DataObject> selectTodayCrackdownList(CrdnQuery query);

	/**단속자료 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 단속자료 목록 조회 조건
	 * @return 단속자료 목록
	 */
	List<DataObject> selectCrackdownList(CrdnQuery query);

	/**단속사진 검사 자료 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 단속사진 검사 자료 목록 조회 조건
	 * @return 단속사진 검사 자료 목록
	 */
	List<DataObject> selectPhotoInspectionDataList(CrdnQuery query);

	/**동일 차량 단속 그룹 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 동일 차량 단속 그룹 목록 조회 조건
	 * @return 동일 차량 단속 그룹 목록
	 */
	List<DataObject> selectSameVehicleMainList(CrdnQuery query);

	/**동일 차량 단속 자료 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 동일 차량 단속 자료 목록 조회 조건
	 * @return 동일 차량 단속 자료 목록
	 */
	List<DataObject> selectSameVehicleSubList(CrdnQuery query);

	/**표지정보 미확인 자료 목록을 조회한다.<br />
	 * {@link cokr.xit.fims.crdn.service.bean.CrdnService#getCrackdownList(CrdnQuery)} 참고
	 * @param query 표지정보 미확인 자료 목록 조회 조건
	 * @return 표지정보 미확인 자료 목록
	 */
	List<DataObject> selectTagInformationUndefinedDataList(CrdnQuery query);

}
