namespace DramaLing.Api.Models.DTOs.SpacedRepetition;

/// <summary>
/// 復習結果響應
/// </summary>
public class ReviewResult
{
    /// <summary>
    /// 新的間隔天數
    /// </summary>
    public int NewInterval { get; set; }

    /// <summary>
    /// 下次復習日期
    /// </summary>
    public DateTime NextReviewDate { get; set; }

    /// <summary>
    /// 更新後的熟悉度
    /// </summary>
    public int MasteryLevel { get; set; }

    /// <summary>
    /// 當前熟悉度 (考慮衰減)
    /// </summary>
    public int CurrentMasteryLevel { get; set; }

    /// <summary>
    /// 是否逾期
    /// </summary>
    public bool IsOverdue { get; set; }

    /// <summary>
    /// 逾期天數
    /// </summary>
    public int OverdueDays { get; set; }

    /// <summary>
    /// 表現係數 (調試用)
    /// </summary>
    public double PerformanceFactor { get; set; }

    /// <summary>
    /// 增長係數 (調試用)
    /// </summary>
    public double GrowthFactor { get; set; }

    /// <summary>
    /// 逾期懲罰係數 (調試用)
    /// </summary>
    public double PenaltyFactor { get; set; }
}