using Meezi.Core.Enums;

namespace Meezi.Core.Entities;

public class Coupon : TenantEntity
{
    public string Code { get; set; } = string.Empty;
    public CouponType Type { get; set; }
    public decimal Value { get; set; }
    public decimal? MinOrderAmount { get; set; }
    public decimal? MaxDiscount { get; set; }
    public int? UsageLimit { get; set; }
    public int UsedCount { get; set; }
    public CustomerGroup? TargetGroup { get; set; }
    public DateTime? StartsAt { get; set; }
    public DateTime? ExpiresAt { get; set; }
    public bool IsActive { get; set; } = true;

    public Cafe Cafe { get; set; } = null!;
    public ICollection<Order> Orders { get; set; } = [];
}
