31 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
		
		
			
		
	
	
			31 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
|  | using System.Collections.Generic; | ||
|  | using System.Threading.Tasks; | ||
|  | using GestionIntegral.Api.Dtos.Anomalia; | ||
|  | 
 | ||
|  | namespace GestionIntegral.Api.Services.Anomalia | ||
|  | { | ||
|  |     public interface IAlertaService | ||
|  |     { | ||
|  |         /// <summary> | ||
|  |         /// Obtiene todas las alertas que no han sido marcadas como leídas. | ||
|  |         /// </summary> | ||
|  |         /// <returns>Una colección de DTOs de alertas genéricas.</returns> | ||
|  |         Task<IEnumerable<AlertaGenericaDto>> ObtenerAlertasNoLeidasAsync(); | ||
|  | 
 | ||
|  |         /// <summary> | ||
|  |         /// Marca una alerta específica como leída. | ||
|  |         /// </summary> | ||
|  |         /// <param name="idAlerta">El ID de la alerta a marcar.</param> | ||
|  |         /// <returns>Una tupla indicando si la operación fue exitosa y un mensaje de error si falló.</returns> | ||
|  |         Task<(bool Exito, string? Error)> MarcarComoLeidaAsync(int idAlerta); | ||
|  | 
 | ||
|  |         /// <summary> | ||
|  |         /// Marca como leídas todas las alertas de un mismo tipo y para una misma entidad. | ||
|  |         /// (Ej: todas las alertas de "DevolucionAnomala" para el Canillita ID 45). | ||
|  |         /// </summary> | ||
|  |         /// <param name="tipoAlerta">El tipo de alerta a marcar (ej. "DevolucionAnomala").</param> | ||
|  |         /// <param name="idEntidad">El ID de la entidad afectada (ej. el IdCanilla).</param> | ||
|  |         /// <returns>Una tupla indicando si la operación fue exitosa y un mensaje de error si falló.</returns> | ||
|  |         Task<(bool Exito, string? Error)> MarcarGrupoComoLeidoAsync(string tipoAlerta, int idEntidad); | ||
|  |     } | ||
|  | } |