using System;

namespace EventsAppQuest.Web.Domain
{
    /// <summary>
    /// Estado final consolidado do ciclo: leitura global para gestão (concluído, em andamento, em risco, travado).
    /// Agregador; não substitui dashboard, alertas, ações nem resumo executivo.
    /// </summary>
    [Serializable]
    public class EventCycleClosureState
    {
        public string CycleId;
        /// <summary>Status global de encerramento.</summary>
        public string ClosureStatus;

        public bool IsCycleCompleted;
        public bool IsCycleHealthy;
        public bool IsCycleAtRisk;
        public bool IsCycleBlocked;

        public string ClosureSummary;
        public string ClosingRecommendation;
        public string MainBlockingReason;
        public string MainProgressReason;
        public string FinalManagementNote;

        public DateTime? EvaluatedAt;
    }
}
