using TakeoutSaaS.Shared.Abstractions.Entities;

namespace TakeoutSaaS.Domain.Analytics.Entities;

/// <summary>
/// 指标快照，用于大盘展示。
/// </summary>
public sealed class MetricSnapshot : MultiTenantEntityBase
{
    /// <summary>
    /// 指标定义 ID。
    /// </summary>
    public long MetricDefinitionId { get; set; }

    /// <summary>
    /// 维度键（JSON）。
    /// </summary>
    public string DimensionKey { get; set; } = string.Empty;

    /// <summary>
    /// 统计时间窗口开始。
    /// </summary>
    public DateTime WindowStart { get; set; }

    /// <summary>
    /// 统计时间窗口结束。
    /// </summary>
    public DateTime WindowEnd { get; set; }

    /// <summary>
    /// 数值。
    /// </summary>
    public decimal Value { get; set; }
}
