package com.ejie.ab79.dao.expedientes;

import java.util.List;

import com.ejie.ab79.model.expedientes.Expedientes;
import com.ejie.x38.dto.TableRequestDto;

/**
 * ExpedientesDao  
 * 
 *  
 */

public interface ExpedientesDao {

	/**
	 * Finds a single row in the Expedientes table.
	 *
	 * @param expedientes
	 *            Expedientes
	 * @return Expedientes
	 */
	Expedientes findIdExpediente(Expedientes expedientes);

	/**
	 * Finds a single row in the Expedientes table.
	 *
	 * @param expedientes
	 *            Expedientes
	 * @return Expedientes
	 */
	Expedientes findByIdExpediente(Expedientes expedientes);

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

	/**
	 * Finds a single row in the Expedientes table por FolderId.
	 *
	 * @param expedientes
	 *            Expedientes
	 * @return Expedientes
	 */

	Expedientes findByFolderId(Expedientes expedientes);

	Expedientes findByIdInspeccion(Expedientes expedientes);

	Expedientes findByIdExpedienteOrigen(Expedientes expedientesOrigen);

	Expedientes findByExpedienteIdExpediente(Expedientes expedientes);

	List<Expedientes> findDocumentacionExpRel(Expedientes filterExpedientes, TableRequestDto tableRequestDto,
			String documentosTitular);

	Long findDocumentacionExpRelCount(Expedientes filterExpedientes, String documentosTitular);

	void actualizarTituloTerritorioHistorico(Expedientes expediente);

	boolean findExpedienteCerrado(Expedientes expediente);

}
