Files
TakeoutSaaS.AdminApi/src/Domain/TakeoutSaaS.Domain/Tenants/Entities/TenantPackage.cs

76 lines
2.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using TakeoutSaaS.Domain.Tenants.Enums;
using TakeoutSaaS.Shared.Abstractions.Entities;
namespace TakeoutSaaS.Domain.Tenants.Entities;
/// <summary>
/// 平台提供的租户套餐定义。
/// </summary>
public sealed class TenantPackage : AuditableEntityBase
{
/// <summary>
/// 套餐名称,展示给租户的简称。
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 套餐描述,包含适用场景、权益等。
/// </summary>
public string? Description { get; set; }
/// <summary>
/// 套餐分类(试用、标准、旗舰等)。
/// </summary>
public TenantPackageType PackageType { get; set; } = TenantPackageType.Standard;
/// <summary>
/// 月付价格,单位:人民币元。
/// </summary>
public decimal? MonthlyPrice { get; set; }
/// <summary>
/// 年付价格,单位:人民币元。
/// </summary>
public decimal? YearlyPrice { get; set; }
/// <summary>
/// 允许的最大门店数。
/// </summary>
public int? MaxStoreCount { get; set; }
/// <summary>
/// 允许创建的最大账号数。
/// </summary>
public int? MaxAccountCount { get; set; }
/// <summary>
/// 存储容量上限GB
/// </summary>
public int? MaxStorageGb { get; set; }
/// <summary>
/// 每月短信额度上限。
/// </summary>
public int? MaxSmsCredits { get; set; }
/// <summary>
/// 每月可调用的配送单数量上限。
/// </summary>
public int? MaxDeliveryOrders { get; set; }
/// <summary>
/// 权益明细 JSON记录自定义特性开关。
/// </summary>
public string? FeaturePoliciesJson { get; set; }
/// <summary>
/// 是否仍可售卖。
/// </summary>
public bool IsActive { get; set; } = true;
/// <summary>
/// 展示排序,数值越小越靠前。
/// </summary>
public int SortOrder { get; set; } = 0;
}