using Microsoft.EntityFrameworkCore; namespace SVSim.Database.Models; /// /// Marker row recording that a viewer has already redeemed CardId from PackId's /// gacha-point exchange. Drives the per-entry is_received flag in /// /pack/get_gacha_point_rewards. Owned collection on . /// Unique index on (ViewerId, PackId, CardId) per project_owned_collection_unique_index. /// [Owned] public class ViewerGachaPointReceived { public int PackId { get; set; } public long CardId { get; set; } public DateTime ReceivedAt { get; set; } }