namespace TakeoutSaaS.Application.App.Tenants.Dto;
///
/// 套餐使用统计 DTO(订阅关联数量、使用租户数量)。
///
public sealed class TenantPackageUsageDto
{
///
/// 套餐 ID。
///
public long TenantPackageId { get; init; }
///
/// 当前有效订阅数量(以当前时间为准)。
///
public int ActiveSubscriptionCount { get; init; }
///
/// 当前使用租户数量(以当前时间为准,按租户去重)。
///
public int ActiveTenantCount { get; init; }
///
/// 历史总订阅记录数量(不含软删)。
///
public int TotalSubscriptionCount { get; init; }
///
/// MRR(Monthly Recurring Revenue)粗看:按“当前有效订阅数 × 套餐月付等效价”估算。
///
public decimal Mrr { get; init; }
///
/// ARR(Annual Recurring Revenue)粗看:按“当前有效订阅数 × 套餐年付等效价”估算。
///
public decimal Arr { get; init; }
///
/// 未来 7 天内到期的使用租户数量(按租户去重,以当前时间为准,口径:有效订阅)。
///
public int ExpiringTenantCount7Days { get; init; }
///
/// 未来 15 天内到期的使用租户数量(按租户去重,以当前时间为准,口径:有效订阅)。
///
public int ExpiringTenantCount15Days { get; init; }
///
/// 未来 30 天内到期的使用租户数量(按租户去重,以当前时间为准,口径:有效订阅)。
///
public int ExpiringTenantCount30Days { get; init; }
}