using TakeoutSaaS.Domain.Tenants.Enums;
using TakeoutSaaS.Shared.Abstractions.Entities;
namespace TakeoutSaaS.Domain.Tenants.Entities;
///
/// 平台租户信息,描述租户的生命周期与基础资料。
///
public sealed class Tenant : AuditableEntityBase
{
///
/// 租户短编码,作为跨系统引用的唯一标识。
///
public string Code { get; set; } = string.Empty;
///
/// 租户全称或品牌名称。
///
public string Name { get; set; } = string.Empty;
///
/// 对外展示的简称。
///
public string? ShortName { get; set; }
///
/// 法人或公司主体名称。
///
public string? LegalEntityName { get; set; }
///
/// 所属行业,如餐饮、零售等。
///
public string? Industry { get; set; }
///
/// LOGO 图片地址。
///
public string? LogoUrl { get; set; }
///
/// 品牌海报或封面图。
///
public string? CoverImageUrl { get; set; }
///
/// 官网或主要宣传链接。
///
public string? Website { get; set; }
///
/// 所在国家/地区。
///
public string? Country { get; set; }
///
/// 所在省份或州。
///
public string? Province { get; set; }
///
/// 所在城市。
///
public string? City { get; set; }
///
/// 详细地址信息。
///
public string? Address { get; set; }
///
/// 主联系人姓名。
///
public string? ContactName { get; set; }
///
/// 主联系人电话。
///
public string? ContactPhone { get; set; }
///
/// 主联系人邮箱。
///
public string? ContactEmail { get; set; }
///
/// 系统内对应的租户所有者账号 ID。
///
public long? PrimaryOwnerUserId { get; set; }
///
/// 租户当前状态,涵盖审核、启用、停用等场景。
///
public TenantStatus Status { get; set; } = TenantStatus.PendingReview;
///
/// 服务生效时间(UTC)。
///
public DateTime? EffectiveFrom { get; set; }
///
/// 服务到期时间(UTC)。
///
public DateTime? EffectiveTo { get; set; }
///
/// 最近一次暂停服务时间。
///
public DateTime? SuspendedAt { get; set; }
///
/// 暂停或终止的原因说明。
///
public string? SuspensionReason { get; set; }
///
/// 业务标签集合(逗号分隔)。
///
public string? Tags { get; set; }
///
/// 备注信息,用于运营记录特殊说明。
///
public string? Remarks { get; set; }
}