101 lines
3.0 KiB
C#
Raw Normal View History

2026-04-07 13:10:11 +08:00
#nullable enable
using System.ComponentModel.DataAnnotations;
namespace YD_Event.Application.Auth.Dtos;
/// <summary>
/// 用户注册输入参数
/// </summary>
public class RegisterInput
{
/// <summary>
/// 手机号
/// </summary>
[Required(ErrorMessage = "手机号不能为空")]
[RegularExpression(@"^1[3456789]\d{9}$", ErrorMessage = "手机号格式不正确")]
public string Phone { get; set; } = null!;
/// <summary>
/// 密码
/// </summary>
[Required(ErrorMessage = "密码不能为空")]
[MinLength(6, ErrorMessage = "密码至少6个字符")]
[MaxLength(18, ErrorMessage = "密码最多18个字符")]
public string Password { get; set; } = null!;
/// <summary>
/// 确认密码
/// </summary>
[Required(ErrorMessage = "请再次输入密码")]
[Compare(nameof(Password), ErrorMessage = "两次输入的密码不一致")]
public string ConfirmPassword { get; set; } = null!;
/// <summary>
/// 短信验证码
/// </summary>
[Required(ErrorMessage = "验证码不能为空")]
[StringLength(6, MinimumLength = 4, ErrorMessage = "验证码格式不正确")]
public string Code { get; set; } = null!;
/// <summary>
/// 同意用户协议
/// </summary>
[Required(ErrorMessage = "请同意用户协议")]
public bool AgreeTerms { get; set; }
}
/// <summary>
/// 短信登录输入参数
/// </summary>
public class SmsLoginInput
{
/// <summary>
/// 手机号
/// </summary>
[Required(ErrorMessage = "手机号不能为空")]
[RegularExpression(@"^1[3456789]\d{9}$", ErrorMessage = "手机号格式不正确")]
public string Phone { get; set; } = null!;
/// <summary>
/// 验证码
/// </summary>
[Required(ErrorMessage = "验证码不能为空")]
[StringLength(6, MinimumLength = 4, ErrorMessage = "验证码格式不正确")]
public string Code { get; set; } = null!;
}
/// <summary>
/// 重置密码输入参数
/// </summary>
public class ResetPasswordInput
{
/// <summary>
/// 手机号
/// </summary>
[Required(ErrorMessage = "手机号不能为空")]
[RegularExpression(@"^1[3456789]\d{9}$", ErrorMessage = "手机号格式不正确")]
public string Phone { get; set; } = null!;
/// <summary>
/// 验证码
/// </summary>
[Required(ErrorMessage = "验证码不能为空")]
[StringLength(6, MinimumLength = 4, ErrorMessage = "验证码格式不正确")]
public string Code { get; set; } = null!;
/// <summary>
/// 新密码
/// </summary>
[Required(ErrorMessage = "密码不能为空")]
[MinLength(6, ErrorMessage = "密码至少6个字符")]
[MaxLength(18, ErrorMessage = "密码最多18个字符")]
public string NewPassword { get; set; } = null!;
/// <summary>
/// 确认新密码
/// </summary>
[Required(ErrorMessage = "请再次输入密码")]
[Compare(nameof(NewPassword), ErrorMessage = "两次输入的密码不一致")]
public string ConfirmNewPassword { get; set; } = null!;
}