package com.ejie.ab04b.dao.temp;

import java.util.List;

import com.ejie.ab04b.model.DocumentoOS3;
import com.ejie.x38.dto.JQGridRequestDto;
import com.ejie.x38.dto.TableRowDto;

/**
 * Ab0429stempDao generated by UDA, 29-jun-2017 10:57:16.
 * 
 * @author UDA
 */

public interface DocumentosOS3TempDao {

	/**
	 * Inserts a single row in the Ab0429stemp table.
	 * 
	 * ab0429stemp Ab0429stemp Ab0429stemp
	 * 
	 * @param ab0429stemp
	 *            the ab 0427 stemp
	 * @return the documento os3
	 */
	DocumentoOS3 add(DocumentoOS3 ab0429stemp);

	/**
	 * Updates a single row in the Ab0429stemp table.
	 * 
	 * ab0429stemp Ab0429stemp Ab0429stemp
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @return the documento os3
	 */
	DocumentoOS3 update(DocumentoOS3 ab0429stemp);

	/**
	 * Finds a single row in the Ab0429stemp table.
	 * 
	 * ab0429stemp Ab0465stemp Ab0429stemp
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @return the documento os3
	 */
	DocumentoOS3 find(DocumentoOS3 ab0429stemp);

	/**
	 * Removes a single row in the Ab0429stemp table.
	 * 
	 * ab0429stemp Ab0429stemp
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 */
	void remove(DocumentoOS3 ab0429stemp);

	/**
	 * Removes a single row in the Ab0429stemp table.
	 * 
	 * ab0429stemp Ab0429stemp
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 */
	void removeByIdApertura(DocumentoOS3 ab0429stemp);

	/**
	 * Finds a List of rows in the Ab0429stemp table.
	 * 
	 * ab0465stemp Ab0429stemp jqGridRequestDto JQGridRequestDto List
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @param jqGridRequestDto
	 *            the jq grid request dto
	 * @return the list
	 */
	List<DocumentoOS3> findAll(DocumentoOS3 ab0429stemp,
			JQGridRequestDto jqGridRequestDto);

	/**
	 * Finds rows in the Ab0429stemp table using like.
	 * 
	 * ab0429stemp Ab0429stemp jqGridRequestDto JQGridRequestDto startsWith
	 * Boolean List
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @param jqGridRequestDto
	 *            the jq grid request dto
	 * @param startsWith
	 *            the starts with
	 * @return the list
	 */
	List<DocumentoOS3> findAllLike(DocumentoOS3 ab0429stemp,
			JQGridRequestDto jqGridRequestDto, Boolean startsWith);

	/*
	 * OPERACIONES RUP_TABLE
	 */

	/**
	 * Counts rows in the Ab0429stemp table using like.
	 * 
	 * ab0465stemp Ab0429stemp startsWith Boolean Long
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @param startsWith
	 *            the starts with
	 * @return the long
	 */
	Long findAllLikeCount(DocumentoOS3 ab0429stemp, Boolean startsWith);

	/**
	 * Counts rows in the Ab0429stemp table.
	 * 
	 * ab0465stemp Ab0429stemp Long
	 * 
	 * @param ab0429stemp
	 *            the ab 0429 stemp
	 * @return the long
	 */
	Long findAllCount(DocumentoOS3 ab0429stemp);

	/**
	 * Reorder selection.
	 * 
	 * filterAb0427stemp Ab0429stemp jqGridRequestDto JQGridRequestDto
	 * startsWith Boolean List<TableRowDto<Ab0429stemp>>
	 * 
	 * @param filterAb0429stemp
	 *            the filter ab 0429 stemp
	 * @param jqGridRequestDto
	 *            the jq grid request dto
	 * @param startsWith
	 *            the starts with
	 * @return the list
	 */
	List<TableRowDto<DocumentoOS3>> reorderSelection(
			DocumentoOS3 filterAb0429stemp, JQGridRequestDto jqGridRequestDto,
			Boolean startsWith);

	/**
	 * Searches in the Ab0429stemp table.
	 * 
	 * filterAb0429stemp Ab0429stemp searchAb0429stemp Ab0429stemp
	 * jqGridRequestDto JQGridRequestDto startsWith Boolean
	 * List<TableRowDto<Ab0429stemp>>
	 * 
	 * @param filterAb0429stemp
	 *            the filter ab 0429 stemp
	 * @param searchAb0429stemp
	 *            the search ab 0429 stemp
	 * @param jqGridRequestDto
	 *            the jq grid request dto
	 * @param startsWith
	 *            the starts with
	 * @return the list
	 */
	List<TableRowDto<DocumentoOS3>> search(DocumentoOS3 filterAb0429stemp,
			DocumentoOS3 searchAb0429stemp, JQGridRequestDto jqGridRequestDto,
			Boolean startsWith);

	/**
	 * Busca documentos con el mismo nombre de fichero (sin tener en cuenta
	 * mayúsculas/minúsculas ni la extensión)
	 * 
	 * documento DocumentoOS3
	 * 
	 * List<DocumentoOS3>.
	 * 
	 * @param documento
	 *            the documento os3
	 * @return the list
	 */
	List<DocumentoOS3> buscarDocumentosOS3TempTipo(DocumentoOS3 documento);

	/**
	 * Busca documentos con el mismo nombre de fichero (sin tener en cuenta
	 * mayúsculas/minúsculas ni la extensión)
	 * 
	 * documento DocumentoOS3
	 * 
	 * List<DocumentoOS3>.
	 * 
	 * @param documento
	 *            the documento os3
	 * @return the list
	 */
	/*
	 * List<DocumentoOS3> buscarDocumentosAperturasInspeccion( DocumentoOS3
	 * documento);
	 */

	/**
	 * Busca documentos con el mismo nombre de fichero (sin tener en cuenta
	 * mayúsculas/minúsculas ni la extensión)
	 * 
	 * documento DocumentoOS3
	 * 
	 * List<DocumentoOS3>.
	 * 
	 * @param documento
	 *            the documento os3
	 * @return the list
	 */
	List<DocumentoOS3> buscarDocumentosOS3Temp(DocumentoOS3 documento);

	/**
	 * Finds a list of rows in the SolicDocumentos table.
	 * 
	 * solicdocumentos DocumentoOS3 jqGridRequestDto JQGridRequestDto
	 * List<DocumentoOS3>
	 * 
	 * @param solicdocumentos
	 *            the documentos os3
	 * @param jqGridRequestDto
	 *            the jq grid request dto
	 * @return the list
	 */
	/*
	 * List<DocumentoOS3> buscarPorIdApeYMetadatoNombre(DocumentoOS3 documentos,
	 * JQGridRequestDto jqGridRequestDto);
	 */
}
