using System;

namespace HoneyBox.Model.Entities;

/// <summary>
/// 指定中奖配置实体，用于配置特定奖品只能被指定用户抽中
/// </summary>
public class GoodsDesignatedPrize
{
    /// <summary>
    /// 主键ID
    /// </summary>
    public int Id { get; set; }

    /// <summary>
    /// 商品/盒子ID
    /// </summary>
    public int GoodsId { get; set; }

    /// <summary>
    /// 奖品ID
    /// </summary>
    public int GoodsItemId { get; set; }

    /// <summary>
    /// 指定用户ID
    /// </summary>
    public int UserId { get; set; }

    /// <summary>
    /// 是否启用 true-启用 false-禁用
    /// </summary>
    public bool IsActive { get; set; } = true;

    /// <summary>
    /// 备注
    /// </summary>
    public string? Remark { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    public DateTime CreatedAt { get; set; }

    /// <summary>
    /// 更新时间
    /// </summary>
    public DateTime? UpdatedAt { get; set; }

    // 导航属性
    /// <summary>
    /// 关联的商品/盒子
    /// </summary>
    public virtual Good? Goods { get; set; }

    /// <summary>
    /// 关联的奖品
    /// </summary>
    public virtual GoodsItem? GoodsItem { get; set; }

    /// <summary>
    /// 关联的用户
    /// </summary>
    public virtual User? User { get; set; }
}
