51 lines
1.3 KiB
C#
51 lines
1.3 KiB
C#
using TakeoutSaaS.Domain.Tenants.Enums;
|
||
using TakeoutSaaS.Shared.Abstractions.Entities;
|
||
|
||
namespace TakeoutSaaS.Domain.Tenants.Entities;
|
||
|
||
/// <summary>
|
||
/// 租户套餐订阅记录。
|
||
/// </summary>
|
||
public sealed class TenantSubscription : MultiTenantEntityBase
|
||
{
|
||
/// <summary>
|
||
/// 当前订阅关联的套餐标识。
|
||
/// </summary>
|
||
public long TenantPackageId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 订阅生效时间(UTC)。
|
||
/// </summary>
|
||
public DateTime EffectiveFrom { get; set; }
|
||
|
||
/// <summary>
|
||
/// 订阅到期时间(UTC)。
|
||
/// </summary>
|
||
public DateTime EffectiveTo { get; set; }
|
||
|
||
/// <summary>
|
||
/// 下一个计费时间,配合自动续费使用。
|
||
/// </summary>
|
||
public DateTime? NextBillingDate { get; set; }
|
||
|
||
/// <summary>
|
||
/// 订阅当前状态。
|
||
/// </summary>
|
||
public SubscriptionStatus Status { get; set; } = SubscriptionStatus.Pending;
|
||
|
||
/// <summary>
|
||
/// 是否开启自动续费。
|
||
/// </summary>
|
||
public bool AutoRenew { get; set; }
|
||
|
||
/// <summary>
|
||
/// 若已排期升降配,对应的新套餐 ID。
|
||
/// </summary>
|
||
public long? ScheduledPackageId { get; set; }
|
||
|
||
/// <summary>
|
||
/// 运营备注信息。
|
||
/// </summary>
|
||
public string? Notes { get; set; }
|
||
}
|