38 lines
916 B
C#
38 lines
916 B
C#
using System.Text.Json.Serialization;
|
||
using TakeoutSaaS.Shared.Abstractions.Serialization;
|
||
|
||
namespace TakeoutSaaS.Application.Identity.Contracts;
|
||
|
||
/// <summary>
|
||
/// 角色 DTO。
|
||
/// </summary>
|
||
public sealed class RoleDto
|
||
{
|
||
/// <summary>
|
||
/// 角色 ID(雪花,序列化为字符串)。
|
||
/// </summary>
|
||
[JsonConverter(typeof(SnowflakeIdJsonConverter))]
|
||
public long Id { get; init; }
|
||
|
||
/// <summary>
|
||
/// 租户 ID。
|
||
/// </summary>
|
||
[JsonConverter(typeof(SnowflakeIdJsonConverter))]
|
||
public long TenantId { get; init; }
|
||
|
||
/// <summary>
|
||
/// 角色名称。
|
||
/// </summary>
|
||
public string Name { get; init; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// 角色编码(租户内唯一)。
|
||
/// </summary>
|
||
public string Code { get; init; } = string.Empty;
|
||
|
||
/// <summary>
|
||
/// 描述。
|
||
/// </summary>
|
||
public string? Description { get; init; }
|
||
}
|