2026-03-20 02:00:34 +08:00

286 lines
5.6 KiB
C#

using System.ComponentModel.DataAnnotations;
using YD_Event.Core.Enum;
using MiniExcelLibs.Attributes;
namespace YD_Event.Application.Event.Dtos;
/// <summary>
/// 成绩查询输入
/// </summary>
public class ScoreQueryInput : Pagination
{
/// <summary>
/// 赛事ID
/// </summary>
public long EventId { get; set; }
/// <summary>
/// 项目ID
/// </summary>
public long? ProjectId { get; set; }
/// <summary>
/// 组别名称
/// </summary>
public string? GroupName { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 单位名称
/// </summary>
public string? UnitName { get; set; }
}
/// <summary>
/// 成绩列表输出
/// </summary>
public class ScoreListOutput
{
/// <summary>
/// 报名人员ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 成绩
/// </summary>
public string Score { get; set; }
/// <summary>
/// 单位名称
/// </summary>
public string UnitName { get; set; }
/// <summary>
/// 名次
/// </summary>
public int Rank { get; set; }
/// <summary>
/// 性别
/// </summary>
public string Gender { get; set; }
/// <summary>
/// 成绩ID
/// </summary>
public long ResultId { get; set; }
/// <summary>
/// 证书ID
/// </summary>
public long CertificateId { get; set; }
}
/// <summary>
/// 教练/领队查询输入
/// </summary>
public class CoachLeaderQueryInput : Pagination
{
/// <summary>
/// 赛事ID
/// </summary>
public long EventId { get; set; }
/// <summary>
/// 人员类型 (2-教练, 3-领队)
/// </summary>
public PersonType PersonType { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 电话
/// </summary>
public string? Phone { get; set; }
}
/// <summary>
/// 教练/领队列表输出
/// </summary>
public class CoachLeaderListOutput
{
/// <summary>
/// 报名人员ID
/// </summary>
public long Id { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 年龄
/// </summary>
public int Age { get; set; }
/// <summary>
/// 性别
/// </summary>
public string Gender { get; set; }
/// <summary>
/// 身份证号
/// </summary>
public string IdCard { get; set; }
/// <summary>
/// 电话
/// </summary>
public string Phone { get; set; }
/// <summary>
/// 证书ID
/// </summary>
public long CertificateId { get; set; }
}
/// <summary>
/// 发放证书输入
/// </summary>
public class IssueCertificateInput
{
/// <summary>
/// 人员ID列表
/// </summary>
public List<long> PersonIds { get; set; }
/// <summary>
/// 赛事ID
/// </summary>
public long EventId { get; set; }
}
/// <summary>
/// 成绩导入DTO
/// </summary>
public class ScoreImportDto
{
/// <summary>
/// 赛事地址
/// </summary>
[ExcelColumnName("赛事地址")]
public string EventAddress { get; set; }
/// <summary>
/// 项目名称
/// </summary>
[ExcelColumnName("项目")]
public string ProjectName { get; set; }
/// <summary>
/// 组别名称
/// </summary>
[ExcelColumnName("组别")]
public string GroupName { get; set; }
/// <summary>
/// 姓名
/// </summary>
[ExcelColumnName("姓名")]
public string Name { get; set; }
/// <summary>
/// 联系方式
/// </summary>
[ExcelColumnName("联系方式")]
public string Contact { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[ExcelColumnName("单位")]
public string UnitName { get; set; }
/// <summary>
/// 成绩
/// </summary>
[ExcelColumnName("成绩")]
public string Score { get; set; }
/// <summary>
/// 名次(文字)
/// </summary>
[ExcelColumnName("名次")]
public string RankText { get; set; }
/// <summary>
/// 名次
/// </summary>
[ExcelColumnName("名次 ")]
public int Rank { get; set; }
}
/// <summary>
/// 证书导出DTO
/// </summary>
public class CertificateExportDto
{
/// <summary>
/// 证书编号
/// </summary>
[ExcelColumnName("证书编号")]
public string CertificateNo { get; set; }
/// <summary>
/// 姓名
/// </summary>
[ExcelColumnName("姓名")]
public string ParticipantName { get; set; }
/// <summary>
/// 项目名称
/// </summary>
[ExcelColumnName("项目")]
public string ProjectName { get; set; }
/// <summary>
/// 组别名称
/// </summary>
[ExcelColumnName("组别")]
public string GroupName { get; set; }
/// <summary>
/// 单位名称
/// </summary>
[ExcelColumnName("单位")]
public string UnitName { get; set; }
/// <summary>
/// 成绩
/// </summary>
[ExcelColumnName("成绩")]
public string Score { get; set; }
/// <summary>
/// 名次
/// </summary>
[ExcelColumnName("名次")]
public int Rank { get; set; }
/// <summary>
/// 证书类型
/// </summary>
[ExcelColumnName("证书类型")]
public string CertificateType { get; set; }
/// <summary>
/// 发放时间
/// </summary>
[ExcelColumnName("发放时间")]
public DateTime? IssuedTime { get; set; }
}