103 lines
2.3 KiB
C#
103 lines
2.3 KiB
C#
namespace LingAdmin.Shared.DTOs;
|
|
|
|
#region 请求 DTOs
|
|
|
|
/// <summary>
|
|
/// 用户注册请求
|
|
/// </summary>
|
|
public class RegisterRequest
|
|
{
|
|
public required string Name { get; set; }
|
|
public required string Email { get; set; }
|
|
public required string Password { get; set; }
|
|
public string? PhoneNumber { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 用户登录请求
|
|
/// </summary>
|
|
public class LoginRequest
|
|
{
|
|
public required string Email { get; set; }
|
|
public required string Password { get; set; }
|
|
public bool RememberMe { get; set; } = false;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 刷新令牌请求
|
|
/// </summary>
|
|
public class RefreshTokenRequest
|
|
{
|
|
public required string RefreshToken { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改密码请求
|
|
/// </summary>
|
|
public class ChangePasswordRequest
|
|
{
|
|
public required string CurrentPassword { get; set; }
|
|
public required string NewPassword { get; set; }
|
|
public required string ConfirmPassword { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 重置密码请求
|
|
/// </summary>
|
|
public class ResetPasswordRequest
|
|
{
|
|
public required string Token { get; set; }
|
|
public required string NewPassword { get; set; }
|
|
public required string ConfirmPassword { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 请求重置密码
|
|
/// </summary>
|
|
public class ForgotPasswordRequest
|
|
{
|
|
public required string Email { get; set; }
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 响应 DTOs
|
|
|
|
/// <summary>
|
|
/// 用户信息 DTO
|
|
/// </summary>
|
|
public class UserDto
|
|
{
|
|
public int Id { get; set; }
|
|
public required string Name { get; set; }
|
|
public required string Email { get; set; }
|
|
public required string Status { get; set; }
|
|
public List<string> Roles { get; set; } = new();
|
|
public List<string> Permissions { get; set; } = new();
|
|
public DateTime CreatedAt { get; set; }
|
|
public DateTime? LastLoginAt { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 登录响应
|
|
/// </summary>
|
|
public class LoginResponse
|
|
{
|
|
public required string AccessToken { get; set; }
|
|
public required string RefreshToken { get; set; }
|
|
public required UserDto User { get; set; }
|
|
public DateTime ExpiresAt { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Token 刷新响应
|
|
/// </summary>
|
|
public class TokenRefreshResponse
|
|
{
|
|
public required string AccessToken { get; set; }
|
|
public required string RefreshToken { get; set; }
|
|
public DateTime ExpiresAt { get; set; }
|
|
}
|
|
|
|
#endregion
|