214 lines
4.7 KiB
C#
Raw Normal View History

2026-03-08 15:46:19 +08:00
namespace YD_Event.Application.Event.Dtos;
2026-02-08 18:09:05 +08:00
/// <summary>
/// 编排项目列表输出
/// </summary>
public class ArrangementProjectListOutput
{
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目ID
/// </summary>
2026-02-08 18:09:05 +08:00
public long ProjectId { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string ProjectName { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目类型
/// </summary>
2026-02-08 18:09:05 +08:00
public string ProjectType { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 比赛时长(秒)
/// </summary>
2026-02-08 18:09:05 +08:00
public int DurationSeconds { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 组别列表
/// </summary>
2026-02-08 18:09:05 +08:00
public List<ArrangementGroupDto> Groups { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 场地数量
/// </summary>
2026-02-08 18:09:05 +08:00
public int VenueCount { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 排序索引
/// </summary>
2026-02-08 18:09:05 +08:00
public int SortIndex { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
2026-04-14 17:30:20 +08:00
/// 总时长(秒)
/// </summary>
public int TotalDurationSeconds { get; set; }
/// <summary>
/// 总时长(分钟,向上取整)
2026-03-18 13:47:34 +08:00
/// </summary>
2026-02-08 18:09:05 +08:00
public int TotalDurationMinutes { get; set; }
/// <summary>
/// 团队总数(仅团队项目有效)
/// </summary>
public int TotalTeams { get; set; }
2026-02-08 18:09:05 +08:00
}
2026-03-18 13:47:34 +08:00
/// <summary>
/// 编排组别DTO
/// </summary>
2026-02-08 18:09:05 +08:00
public class ArrangementGroupDto
{
2026-03-18 13:47:34 +08:00
/// <summary>
/// 组别名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string GroupName { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 参与人数
/// </summary>
2026-02-08 18:09:05 +08:00
public int ParticipantCount { get; set; }
}
/// <summary>
/// 更新编排设置输入
/// </summary>
public class ArrangementUpdateInput
{
2026-03-18 13:47:34 +08:00
/// <summary>
/// 赛事ID
/// </summary>
2026-02-08 18:09:05 +08:00
public long EventId { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目设置列表
/// </summary>
2026-02-08 18:09:05 +08:00
public List<ProjectArrangementSetting> Settings { get; set; }
}
2026-08-11 23:41:18 +08:00
public class ConfirmArrangementOutput
{
public int VenueCount { get; set; }
public int SessionCount { get; set; }
public int EntryCount { get; set; }
}
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目编排设置
/// </summary>
2026-02-08 18:09:05 +08:00
public class ProjectArrangementSetting
{
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目ID
/// </summary>
2026-02-08 18:09:05 +08:00
public long ProjectId { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 场地数量
/// </summary>
2026-02-08 18:09:05 +08:00
public int VenueCount { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 排序索引
/// </summary>
2026-02-08 18:09:05 +08:00
public int SortIndex { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 比赛时长(秒)
/// </summary>
2026-03-08 15:46:19 +08:00
public int DurationSeconds { get; set; }
2026-02-08 18:09:05 +08:00
}
/// <summary>
/// 编排预览输出
/// </summary>
public class ArrangementPreviewOutput
{
/// <summary>
/// 是否为团队项目。团队项目按报名项目整队检录,个人项目按报名人员逐人检录。
/// </summary>
public bool IsTeamProject { get; set; }
/// <summary>
/// 赛事项目ID,关联 EventProject.Id。
/// </summary>
public long EventProjectId { get; set; }
/// <summary>
/// 项目基础数据ID,关联 Project.Id。
/// </summary>
public long ProjectId { get; set; }
/// <summary>
/// 赛事项目组别ID;同一场次跨组别时,由使用方按人员明细汇总。
/// </summary>
public long? EventProjectGroupId { get; set; }
2026-04-21 23:56:08 +08:00
/// <summary>
/// 报名项目ID(唯一标识符)
/// </summary>
public long RegistrationItemId { get; set; }
/// <summary>
/// 当前秩序册条目包含的报名人员ID。团队项目可能包含多人。
/// </summary>
public List<long> RegistrationPersonIds { get; set; } = new();
2026-03-18 13:47:34 +08:00
/// <summary>
/// 时间范围
/// </summary>
2026-02-08 18:09:05 +08:00
public string TimeRange { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 项目名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string ProjectName { get; set; }
2026-03-18 13:47:34 +08:00
2026-04-13 05:20:09 +08:00
/// <summary>
/// 项目类型
/// </summary>
public string ProjectType { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 组别名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string GroupName { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 团队名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string TeamName { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 运动员名称
/// </summary>
2026-02-08 18:09:05 +08:00
public string AthleteName { get; set; }
2026-03-18 13:47:34 +08:00
2026-04-21 11:43:49 +08:00
/// <summary>
/// 单位名称
/// </summary>
public string UnitName { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 场次索引(同一赛事内按项目顺序全局连续)
2026-03-18 13:47:34 +08:00
/// </summary>
2026-02-08 18:09:05 +08:00
public int SessionIndex { get; set; }
2026-03-18 13:47:34 +08:00
/// <summary>
/// 场地索引
/// </summary>
2026-02-08 18:09:05 +08:00
public int VenueIndex { get; set; }
2026-04-14 23:34:16 +08:00
/// <summary>
/// 项目总时长(秒)
/// </summary>
public int ProjectTotalDurationSeconds { get; set; }
/// <summary>
/// 项目总时长(格式化字符串)
/// </summary>
public string ProjectTotalDuration { get; set; }
2026-02-08 18:09:05 +08:00
}