namespace OTSSignsOrchestrator.Server.Data.Entities;

public enum JobStatus
{
    Queued,
    Running,
    Completed,
    Failed
}

public class Job
{
    public Guid Id { get; set; }
    public Guid CustomerId { get; set; }
    public string JobType { get; set; } = string.Empty;
    public JobStatus Status { get; set; }
    public string? TriggeredBy { get; set; }
    public string? Parameters { get; set; }
    public DateTime CreatedAt { get; set; }
    public DateTime? StartedAt { get; set; }
    public DateTime? CompletedAt { get; set; }
    public string? ErrorMessage { get; set; }

    public Customer Customer { get; set; } = null!;
    public ICollection<JobStep> Steps { get; set; } = [];
}
