namespace OrpaonVision.Core.Security.Contracts.Commands; /// /// 创建用户命令。 /// public sealed class CreateUserCommand { /// /// 用户名。 /// public string UserName { get; init; } = string.Empty; /// /// 显示名称。 /// public string DisplayName { get; init; } = string.Empty; /// /// 邮箱。 /// public string Email { get; init; } = string.Empty; /// /// 密码。 /// public string Password { get; init; } = string.Empty; /// /// 角色列表。 /// public IReadOnlyList Roles { get; init; } = []; /// /// 权限列表。 /// public IReadOnlyList Permissions { get; init; } = []; /// /// 是否激活。 /// public bool IsActive { get; init; } = true; /// /// 备注。 /// public string Remarks { get; init; } = string.Empty; /// /// 创建者。 /// public string CreatedBy { get; init; } = string.Empty; } /// /// 更新用户命令。 /// public sealed class UpdateUserCommand { /// /// 用户ID。 /// public Guid UserId { get; init; } /// /// 显示名称。 /// public string DisplayName { get; init; } = string.Empty; /// /// 邮箱。 /// public string Email { get; init; } = string.Empty; /// /// 角色列表。 /// public IReadOnlyList Roles { get; init; } = []; /// /// 权限列表。 /// public IReadOnlyList Permissions { get; init; } = []; /// /// 是否激活。 /// public bool IsActive { get; init; } /// /// 备注。 /// public string Remarks { get; init; } = string.Empty; /// /// 更新者。 /// public string UpdatedBy { get; init; } = string.Empty; } /// /// 删除用户命令。 /// public sealed class DeleteUserCommand { /// /// 用户ID。 /// public Guid UserId { get; init; } /// /// 删除原因。 /// public string DeleteReason { get; init; } = string.Empty; /// /// 删除者。 /// public string DeletedBy { get; init; } = string.Empty; } /// /// 重置用户密码命令。 /// public sealed class ResetUserPasswordCommand { /// /// 用户ID。 /// public Guid UserId { get; init; } /// /// 新密码。 /// public string NewPassword { get; init; } = string.Empty; /// /// 是否下次登录必须修改密码。 /// public bool ForceChangeOnNextLogin { get; init; } = true; /// /// 重置原因。 /// public string ResetReason { get; init; } = string.Empty; /// /// 重置者。 /// public string ResetBy { get; init; } = string.Empty; } /// /// 启用/禁用用户命令。 /// public sealed class ToggleUserStatusCommand { /// /// 用户ID。 /// public Guid UserId { get; init; } /// /// 是否激活。 /// public bool IsActive { get; init; } /// /// 原因。 /// public string Reason { get; init; } = string.Empty; /// /// 操作者。 /// public string Operator { get; init; } = string.Empty; }