using TakeoutSaaS.Shared.Abstractions.Entities;

namespace TakeoutSaaS.Domain.Identity.Entities;

/// <summary>
/// 管理后台账户实体（平台管理员、租户管理员或商户员工）。
/// </summary>
public sealed class IdentityUser : MultiTenantEntityBase
{
    /// <summary>
    /// 登录账号。
    /// </summary>
    public string Account { get; set; } = string.Empty;

    /// <summary>
    /// 展示名称。
    /// </summary>
    public string DisplayName { get; set; } = string.Empty;

    /// <summary>
    /// 密码哈希。
    /// </summary>
    public string PasswordHash { get; set; } = string.Empty;

    /// <summary>
    /// 所属商户（平台管理员为空）。
    /// </summary>
    public long? MerchantId { get; set; }

    /// <summary>
    /// 头像地址。
    /// </summary>
    public string? Avatar { get; set; }
}
