using TakeoutSaaS.Domain.Coupons.Enums; using TakeoutSaaS.Shared.Abstractions.Entities; namespace TakeoutSaaS.Domain.Coupons.Entities; /// /// 用户领取的券。 /// public sealed class Coupon : MultiTenantEntityBase { /// /// 模板标识。 /// public long CouponTemplateId { get; set; } /// /// 券码或序列号。 /// public string Code { get; set; } = string.Empty; /// /// 归属用户。 /// public long UserId { get; set; } /// /// 订单 ID(已使用时记录)。 /// public long? OrderId { get; set; } /// /// 状态。 /// public CouponStatus Status { get; set; } = CouponStatus.Available; /// /// 发放时间。 /// public DateTime IssuedAt { get; set; } = DateTime.UtcNow; /// /// 使用时间。 /// public DateTime? UsedAt { get; set; } /// /// 到期时间。 /// public DateTime ExpireAt { get; set; } }