using TakeoutSaaS.Domain.Identity.Enums;
namespace TakeoutSaaS.Application.Identity.Contracts;
///
/// 角色详情 DTO。
///
public sealed record RoleDetailDto
{
///
/// 角色所属 Portal。
///
public PortalType Portal { get; init; }
///
/// 角色 ID。
///
public long Id { get; init; }
///
/// 租户 ID(Portal=Tenant 必填;Portal=Admin 为空)。
///
public long? TenantId { get; init; }
///
/// 角色名称。
///
public string Name { get; init; } = string.Empty;
///
/// 角色编码。
///
public string Code { get; init; } = string.Empty;
///
/// 描述。
///
public string? Description { get; init; }
///
/// 权限列表。
///
public IReadOnlyList Permissions { get; init; } = [];
}