using Meezi.Core.Enums;
namespace Meezi.Core.Entities;
public class SubscriptionPayment : TenantEntity
{
public PlanTier PlanTier { get; set; }
public int Months { get; set; }
public decimal AmountToman { get; set; }
public long AmountRials { get; set; }
public PaymentProvider Provider { get; set; } = PaymentProvider.ZarinPal;
public string? Authority { get; set; }
public string? RefId { get; set; }
public SubscriptionPaymentStatus Status { get; set; } = SubscriptionPaymentStatus.Pending;
/// When this paid period starts. For an immediately-activated purchase this is
/// (around) the payment time; for a queued (Scheduled) purchase it is the end of the
/// current coverage. Null until the payment completes.
public DateTime? EffectiveFrom { get; set; }
/// When this paid period ends (EffectiveFrom + Months). Null until completed.
public DateTime? EffectiveTo { get; set; }
public Cafe Cafe { get; set; } = null!;
}