2026-03-12 10:30:13 +08:00

159 lines
3.2 KiB
C#

#nullable enable
using System.ComponentModel.DataAnnotations;
using YD_Event.Core.Enum;
using SqlSugar;
using Easy.Core;
namespace YD_Event.Application.AppUser.Dtos;
/// <summary>
/// 运动员查询输入
/// </summary>
public class AthleteQueryInput : Pagination
{
/// <summary>
/// 姓名
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 身份证号
/// </summary>
public string? IdCardNumber { get; set; }
/// <summary>
/// 开始注册时间
/// </summary>
public DateTime? StartTime { get; set; }
/// <summary>
/// 结束注册时间
/// </summary>
public DateTime? EndTime { get; set; }
}
/// <summary>
/// 新增运动员输入
/// </summary>
public class AddAthleteInput
{
/// <summary>
/// 姓名
/// </summary>
[Required(ErrorMessage = "姓名不能为空"), MaxLength(64)]
public string Name { get; set; } = null!;
/// <summary>
/// 性别
/// </summary>
public Gender Gender { get; set; }
/// <summary>
/// 出生日期
/// </summary>
public DateTime? BirthDate { get; set; }
/// <summary>
/// 身份证号
/// </summary>
[Required(ErrorMessage = "身份证号不能为空"), MaxLength(20)]
public string IdCardNumber { get; set; } = null!;
/// <summary>
/// 身份证图片URL
/// </summary>
[MaxLength(512)]
public string? IdCardImageUrl { get; set; }
/// <summary>
/// 联系电话
/// </summary>
[MaxLength(20)]
public string? Mobile { get; set; }
}
/// <summary>
/// 修改运动员输入
/// </summary>
public class UpdateAthleteInput : AddAthleteInput
{
/// <summary>
/// 主键Id
/// </summary>
[Required(ErrorMessage = "Id不能为空")]
public long Id { get; set; }
}
/// <summary>
/// 运动员信息输出
/// </summary>
public class AthleteOutput
{
/// <summary>
/// 主键Id
/// </summary>
public long Id { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; } = null!;
/// <summary>
/// 性别
/// </summary>
public Gender Gender { get; set; }
/// <summary>
/// 性别描述
/// </summary>
public string GenderName => Gender.Description();
/// <summary>
/// 年龄
/// </summary>
public int Age { get; set; }
/// <summary>
/// 出生日期
/// </summary>
public DateTime? BirthDate { get; set; }
/// <summary>
/// 身份证号
/// </summary>
public string IdCardNumber { get; set; } = null!;
/// <summary>
/// 身份证图片URL
/// </summary>
public string? IdCardImageUrl { get; set; }
/// <summary>
/// 联系电话
/// </summary>
public string? Mobile { get; set; }
/// <summary>
/// 状态
/// </summary>
public AvailabilityStatus Status { get; set; }
/// <summary>
/// 注册时间
/// </summary>
public DateTime CreatedTime { get; set; }
}
/// <summary>
/// OCR识别输入
/// </summary>
public class AthleteOcrInput
{
/// <summary>
/// 图片URL
/// </summary>
[Required(ErrorMessage = "图片URL不能为空")]
public string ImageUrl { get; set; } = null!;
}