package com.ejie.ad74a.service;

import java.util.List;

import com.ejie.ad74a.model.NotifPostales;
import com.ejie.ad74a.util.constantes.TipoNotificacionComunicacionEnum;
import com.ejie.x38.dto.TableRequestDto;

/**
 * NotifPostalesService generated by UDA, 09-ene-2024 16:08:21.
 * 
 * @author UDA
 */

public interface NotifPostalesService {

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

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

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

	/**
	 * Actualiza desde AA66 la situación de envío de la notificación para los
	 * registros de notificacion indicados. Los registros deben ser de tipo
	 * {@link TipoNotificacionComunicacionEnum.NOTIFICACION}
	 * 
	 * @param notifPostalesList
	 * @return
	 */
	List<NotifPostales> updateMultipleSituacionEnvio(List<NotifPostales> notifPostalesList);

}
