using System.ComponentModel.DataAnnotations;

namespace TakeoutSaaS.Infrastructure.App.Options;

/// <summary>
/// 默认租户种子配置。
/// </summary>
public sealed class TenantSeedOptions
{
    /// <summary>
    /// 自定义租户标识，不填则自动生成。
    /// </summary>
    public long TenantId { get; set; }

    /// <summary>
    /// 租户编码。
    /// </summary>
    [Required]
    [MaxLength(64)]
    public string Code { get; set; } = string.Empty;

    /// <summary>
    /// 租户名称。
    /// </summary>
    [Required]
    [MaxLength(128)]
    public string Name { get; set; } = string.Empty;

    /// <summary>
    /// 租户简称。
    /// </summary>
    [MaxLength(128)]
    public string? ShortName { get; set; }

    /// <summary>
    /// 联系人姓名。
    /// </summary>
    [MaxLength(64)]
    public string? ContactName { get; set; }

    /// <summary>
    /// 联系电话。
    /// </summary>
    [MaxLength(32)]
    public string? ContactPhone { get; set; }
}
