package com.ejie.ab78.dao.denuncias;

import java.util.List;

import com.ejie.ab78.model.InfoEstablecimiento;
import com.ejie.x38.dto.TableRequestDto;

/**
 * InfoEstablecimientosDao  
 * 
 *  
 */

public interface InfoEstablecimientosDao {

	/**
	 * Finds a single row in the infoEstablecimiento table.
	 *
	 * @param infoEstablecimiento
	 *            InfoEstablecimiento
	 * @return infoEstablecimiento
	 */
	InfoEstablecimiento find(InfoEstablecimiento infoEstablecimiento);

	List<InfoEstablecimiento> findAll(InfoEstablecimiento infoEstablecimiento, TableRequestDto tableRequestDto);

	/**
	 * Finds rows in the InfoEstablecimiento table using like.
	 *
	 * @param infoEstablecimiento
	 *            InfoEstablecimiento
	 * @param tableRequestDto
	 *            TableRequestDto
	 * @param startsWith
	 *            Boolean
	 * @return List
	 */
	List<InfoEstablecimiento> findAllLike(InfoEstablecimiento infoEstablecimiento, TableRequestDto tableRequestDto,
			Boolean startsWith);

	/**
	 * Counts rows in the InfoEstablecimiento table using like.
	 *
	 * @param infoEstablecimiento
	 *            InfoEstablecimiento
	 * @param startsWith
	 *            Boolean
	 * @return Long
	 */
	Long findAllLikeCount(InfoEstablecimiento infoEstablecimiento, Boolean startsWith);

	/**
	 * Counts rows in the InfoEstablecimiento table.
	 *
	 * @param InfoEstablecimiento
	 *            InfoEstablecimiento
	 * @return Long
	 */
	Long findAllCount(InfoEstablecimiento infoEstablecimiento);

	InfoEstablecimiento findByIdentificadorEstablecimiento(InfoEstablecimiento infoEstablecimiento);

}
