using System.ComponentModel.DataAnnotations;
namespace DorkNet.Server.Data.Entities;
public class GameRewardSelectionEntity
{
public long Id { get; set; }
public long PlayerId { get; set; }
public int RewardType { get; set; }
public int GiftContext { get; set; }
[MaxLength(256)] public string Message { get; set; } = string.Empty;
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime? SelectedAt { get; set; }
public int? SelectedGiftDropId { get; set; }
/// The three store-item ids offered as the choose-1-of-3
/// reward. Persisted so re-fetching the pending reward is stable and
/// /select can grant exactly what was shown. 0 = empty slot.
public long Offer1ItemId { get; set; }
public long Offer2ItemId { get; set; }
public long Offer3ItemId { get; set; }
/// Set once the chosen item has been granted to inventory, so
/// a replayed /select can't grant twice.
public long GrantedItemId { get; set; }
}