2026-08-11 23:41:18 +08:00
|
|
|
|
namespace YD_Event.Application.Event.Dtos;
|
|
|
|
|
|
|
|
|
|
|
|
public class RefereeApplicationOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public long ApplicationId { get; set; }
|
|
|
|
|
|
public long RefereeId { get; set; }
|
|
|
|
|
|
public string Name { get; set; } = null!;
|
|
|
|
|
|
public string RegionName { get; set; } = null!;
|
|
|
|
|
|
public string LevelName { get; set; } = null!;
|
|
|
|
|
|
public string CertificateUrl { get; set; } = null!;
|
|
|
|
|
|
public string Mobile { get; set; } = null!;
|
|
|
|
|
|
public int Roles { get; set; }
|
|
|
|
|
|
public List<string> RoleNames { get; set; } = new();
|
|
|
|
|
|
public DateTime CreatedTime { get; set; }
|
2026-08-17 00:14:48 +08:00
|
|
|
|
public int ApplicationStatus { get; set; }
|
|
|
|
|
|
public string ApplicationStatusName { get; set; } = null!;
|
|
|
|
|
|
public string? Remark { get; set; }
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class EventRefereeOutput : RefereeApplicationOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public long EventRefereeId { get; set; }
|
|
|
|
|
|
public int SourceType { get; set; }
|
|
|
|
|
|
public string SourceTypeName { get; set; } = null!;
|
2026-08-11 23:41:18 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class JudgeAssignmentBoardOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public bool ArrangementConfirmed { get; set; }
|
|
|
|
|
|
public bool Submitted { get; set; }
|
|
|
|
|
|
public List<JudgeAssignmentProjectOutput> Projects { get; set; } = new();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class JudgeAssignmentProjectOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public long EventProjectId { get; set; }
|
|
|
|
|
|
public string ProjectName { get; set; } = null!;
|
|
|
|
|
|
public string RuleName { get; set; } = null!;
|
2026-08-18 00:22:59 +08:00
|
|
|
|
/// <summary>裁判大类分组(难度裁判、表现裁判、主裁),由计分规则的裁判席位配置解析而来。</summary>
|
|
|
|
|
|
public List<JudgeRoleSectionOutput> JudgeRoleSections { get; set; } = new();
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public List<JudgeAssignmentSessionOutput> Sessions { get; set; } = new();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-08-18 00:22:59 +08:00
|
|
|
|
/// <summary>裁判大类分组。</summary>
|
|
|
|
|
|
public class JudgeRoleSectionOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public string Title { get; set; } = null!;
|
|
|
|
|
|
public List<JudgeRoleSlotOutput> Slots { get; set; } = new();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>裁判类型(如 DP 力量体操、DM 多摇、P 表现、T 主裁),一个类型可分配多名裁判。</summary>
|
|
|
|
|
|
public class JudgeRoleSlotOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public string Code { get; set; } = null!;
|
|
|
|
|
|
public string Name { get; set; } = null!;
|
|
|
|
|
|
/// <summary>该类型至少需要分配的裁判人数。</summary>
|
|
|
|
|
|
public int MinCount { get; set; }
|
|
|
|
|
|
/// <summary>该类型最多可分配的裁判人数,null 表示不限人数(成绩按平均值计算)。</summary>
|
|
|
|
|
|
public int? MaxCount { get; set; }
|
|
|
|
|
|
/// <summary>执裁该类型所需具备的裁判角色位标记。</summary>
|
|
|
|
|
|
public int RoleFlag { get; set; }
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public class JudgeAssignmentSessionOutput
|
|
|
|
|
|
{
|
|
|
|
|
|
public long SessionId { get; set; }
|
|
|
|
|
|
public string SessionName { get; set; } = null!;
|
|
|
|
|
|
public string VenueName { get; set; } = null!;
|
|
|
|
|
|
public bool Assigned { get; set; }
|
|
|
|
|
|
public List<JudgeAssignmentItemOutput> Assignments { get; set; } = new();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class JudgeAssignmentItemOutput
|
|
|
|
|
|
{
|
2026-08-17 00:14:48 +08:00
|
|
|
|
public long EventRefereeId { get; set; }
|
2026-08-18 00:22:59 +08:00
|
|
|
|
/// <summary>裁判席位编码(同一场次内唯一,如 DP1、DP2、T)。</summary>
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public string JudgeRole { get; set; } = null!;
|
2026-08-18 00:22:59 +08:00
|
|
|
|
/// <summary>裁判类型编码(如 DP、DM、DR、P、T),对应计分规则中的裁判类型。</summary>
|
|
|
|
|
|
public string JudgeRoleType { get; set; } = null!;
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public string JudgeRoleName { get; set; } = null!;
|
|
|
|
|
|
public long RefereeId { get; set; }
|
|
|
|
|
|
public string RefereeName { get; set; } = null!;
|
|
|
|
|
|
public string Mobile { get; set; } = null!;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class SaveJudgeAssignmentsInput
|
|
|
|
|
|
{
|
|
|
|
|
|
public long EventId { get; set; }
|
|
|
|
|
|
public long SessionId { get; set; }
|
|
|
|
|
|
public List<SaveJudgeAssignmentItem> Assignments { get; set; } = new();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class SaveJudgeAssignmentItem
|
|
|
|
|
|
{
|
2026-08-18 00:22:59 +08:00
|
|
|
|
/// <summary>裁判类型编码;同一类型可重复出现,表示该类型分配了多名裁判。</summary>
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public string JudgeRole { get; set; } = null!;
|
2026-08-17 00:14:48 +08:00
|
|
|
|
public long EventRefereeId { get; set; }
|
2026-08-11 23:41:18 +08:00
|
|
|
|
public long RefereeId { get; set; }
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class SubmitJudgeAssignmentsInput { public long EventId { get; set; } }
|