package com.ejie.aa20b.service;

import java.util.List;

import com.ejie.aa20b.model.Partetecgmaorechazo;
import com.ejie.aa20b.model.Partetecnicosgmao;
import com.ejie.x38.dto.Pagination;

public interface PartetecnicosgmaoService {

	/**
	 * Inserts a single row in the Partetecnicosgmao table.
	 * 
	 * @param partetecnicos
	 *            Partetecnicosgmao
	 * @return Partetecnicosgmao
	 */
	Partetecnicosgmao add(Partetecnicosgmao partetecnicos);

	/**
	 * Updates a single row in the Partetecnicosgmao table.
	 * 
	 * @param partetecnicos
	 *            Partetecnicosgmao
	 * @return Partetecnicosgmao
	 */
	Partetecnicosgmao update(Partetecnicosgmao partetecnicos);

	/**
	 * Finds a single row in the Partetecnicos table.
	 * 
	 * @param partetecnicos
	 *            Partetecnicosgmao
	 * @return Partetecnicosgmao
	 */
	Partetecnicosgmao find(Partetecnicosgmao partetecnicos);

	Partetecnicosgmao findByGUID(Partetecnicosgmao partetecnicos);

	List<Partetecnicosgmao> findAll(Partetecnicosgmao partetecnicosgmao,
			Pagination pagination);

	void remove(Partetecnicosgmao partetecnicosgmao);

	void actualizarTiempoPausaParte(Partetecnicosgmao partetecnicosgmao);

	Partetecnicosgmao marcarPausaAutoParte(Partetecnicosgmao partetecnicosgmao);

	List<Partetecnicosgmao> obtenerPartesUrgentesPendientes();

	Partetecgmaorechazo addRechazoTec(
			Partetecgmaorechazo partetecnicosrechazogmao);

	Partetecgmaorechazo findRechazoTec(
			Partetecgmaorechazo partetecnicosrechazogmao);

	Partetecnicosgmao findParteSinTecnico(Partetecnicosgmao partetecnicosgmao);

	Partetecnicosgmao findByIdParte(Partetecnicosgmao partetecnicosgmao);

	List<Partetecnicosgmao> findAllnoAsignadosMovilGmao(
			Partetecnicosgmao partetecnicosgmao, Pagination pagination);
}