using Predictalytics.Domain.Enums;
namespace Predictalytics.Domain.Entities;
///
/// An alert triggered by the system based on configurable rules.
///
public class Alert
{
public int Id { get; set; }
/// Type of alert.
public AlertType Type { get; set; }
/// Platform where the triggering event occurred.
public PlatformType Platform { get; set; }
/// Optional reference to the trader who triggered this alert.
public int? TraderId { get; set; }
/// Alert title / headline.
public string Title { get; set; } = string.Empty;
/// Detailed message describing the alert.
public string Message { get; set; } = string.Empty;
/// Severity: 1=Low, 2=Medium, 3=High, 4=Critical.
public int Severity { get; set; } = 1;
/// Whether the alert has been read/acknowledged.
public bool IsRead { get; set; }
/// When the alert was created.
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
// Navigation
public Trader? Trader { get; set; }
}