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; }
|
2026-04-28 00:02:01 +08:00
|
|
|
|
|
|
|
|
|
|
/// <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
|
|
|
|
|
|
{
|
2026-09-21 14:55:44 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 是否为团队项目。团队项目按报名项目整队检录,个人项目按报名人员逐人检录。
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public bool IsTeamProject { get; set; }
|
|
|
|
|
|
|
2026-08-07 14:59:15 +08:00
|
|
|
|
/// <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; }
|
|
|
|
|
|
|
2026-08-07 14:59:15 +08:00
|
|
|
|
/// <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-09-16 10:39:11 +08:00
|
|
|
|
/// 场次索引(同一赛事内按项目顺序全局连续)
|
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
|
|
|
|
}
|