namespace YD_Event.Application.Scoring.Dtos; /// /// 后台记分台:单个裁判类型的评分提交进度 /// public class JudgeBoardRoleProgressOutput { /// /// 裁判类型编码 /// public string RoleType { get; set; } = string.Empty; /// /// 裁判类型名称 /// public string RoleName { get; set; } = string.Empty; /// /// 计分符号,如 T1、T2、T3 /// public string Symbol { get; set; } = string.Empty; /// /// 应提交人数 /// public int ExpectedCount { get; set; } /// /// 已提交人数 /// public int SubmittedCount { get; set; } /// /// 未提交的裁判姓名 /// public List PendingJudges { get; set; } = new(); } /// /// 后台记分台:单个裁判的评分 /// public class JudgeBoardSheetScoreOutput { /// /// 评分单ID /// public long ScoreSheetId { get; set; } /// /// 裁判ID /// public long RefereeId { get; set; } /// /// 裁判姓名 /// public string RefereeName { get; set; } = string.Empty; /// /// 裁判席位编码 /// public string JudgeRole { get; set; } = string.Empty; /// /// 裁判类型编码 /// public string JudgeRoleType { get; set; } = string.Empty; /// /// 该裁判的得分 /// public string Value { get; set; } = string.Empty; /// /// 是否由该裁判判定取消比赛资格 /// public bool IsDisqualified { get; set; } /// 裁判记录画板地址。 public string? AnnotationUrl { get; set; } } /// /// 后台记分台:单个计分符号的聚合得分 /// public class JudgeSymbolScoreOutput { /// /// 计分符号,如 T1 /// public string Symbol { get; set; } = string.Empty; /// /// 计分名称,如创意分 /// public string Label { get; set; } = string.Empty; /// /// 裁判类型编码 /// public string RoleType { get; set; } = string.Empty; /// /// 聚合方式:avg、sum、max、min /// public string Aggregate { get; set; } = string.Empty; /// /// 参与总分的符号:1-加分,-1-减分 /// public int Sign { get; set; } /// /// 聚合后的分值 /// public string Value { get; set; } = string.Empty; /// /// 参与聚合的各裁判评分 /// public List Judges { get; set; } = new(); } /// /// 后台记分台:一个出场的成绩 /// public class JudgeScoreBoardEntryOutput { /// /// 出场记录ID /// public long SessionEntryId { get; set; } /// /// 出场编号 /// public string EntryNo { get; set; } = string.Empty; /// /// 出场顺序 /// public int PlayOrder { get; set; } /// /// 参赛者/参赛队名称 /// public string ParticipantName { get; set; } = string.Empty; /// /// 组别名称 /// public string GroupName { get; set; } = string.Empty; /// /// 出场状态:0-待出场,10-已检录,20-已叫号,30-进行中,40-已完成,80-退赛,90-取消比赛资格 /// public int EntryStatus { get; set; } /// /// 是否所有应到裁判都已提交评分 /// public bool IsCompleted { get; set; } /// /// 是否跳过计分(退赛、成绩作废) /// public bool IsSkipped { get; set; } /// /// 跳过原因 /// public string? SkipReason { get; set; } /// /// 是否取消比赛资格 /// public bool IsDisqualified { get; set; } /// /// 总分 /// public string TotalScore { get; set; } = string.Empty; /// /// 名次,0 表示暂未排名 /// public int Rank { get; set; } /// /// 成绩状态:0-未生成,10-待复核,20-已确认,90-已作废 /// public int ResultStatus { get; set; } /// /// 成绩状态名称 /// public string ResultStatusName { get; set; } = string.Empty; /// /// 各计分符号的聚合明细 /// public List Symbols { get; set; } = new(); /// /// 各裁判类型的提交进度 /// public List Progress { get; set; } = new(); } /// /// 后台记分台 /// public class JudgeScoreBoardOutput { /// /// 场次ID /// public long SessionId { get; set; } /// /// 赛事ID /// public long EventId { get; set; } /// /// 场次名称 /// public string SessionName { get; set; } = string.Empty; /// /// 场地名称 /// public string VenueName { get; set; } = string.Empty; /// /// 项目名称 /// public string ProjectName { get; set; } = string.Empty; /// /// 计分规则名称 /// public string RuleName { get; set; } = string.Empty; /// /// 计分公式,如 T1 + T2 - T3 /// public string Formula { get; set; } = string.Empty; /// /// 场次状态:0-草稿,10-就绪,20-检录中,30-进行中,40-暂停,50-待确认,60-已结束,90-已取消 /// public int SessionStatus { get; set; } /// /// 出场总数 /// public int EntryCount { get; set; } /// /// 已算出成绩的出场数 /// public int CompletedCount { get; set; } /// /// 出场成绩 /// public List Entries { get; set; } = new(); } /// /// 成绩排名查询 /// public class JudgeRankingQueryInput { /// /// 赛事ID /// public long EventId { get; set; } /// /// 项目ID /// public long? ProjectId { get; set; } /// /// 组别名称 /// public string? GroupName { get; set; } /// /// 成绩状态:10-待复核,20-已确认 /// public int? ResultStatus { get; set; } } /// /// 成绩排名行 /// public class JudgeRankingRowOutput { /// /// 成绩ID /// public long ResultId { get; set; } /// /// 出场记录ID /// public long? SessionEntryId { get; set; } /// /// 项目ID /// public long ProjectId { get; set; } /// /// 项目类型名称 /// public string ProjectTypeName { get; set; } = string.Empty; /// /// 组别名称 /// public string GroupName { get; set; } = string.Empty; /// /// 参赛者/参赛队名称 /// public string ParticipantName { get; set; } = string.Empty; /// /// 名次 /// public int Rank { get; set; } /// /// 总分 /// public string TotalScore { get; set; } = string.Empty; /// /// 难度分 /// public decimal DifficultyScore { get; set; } /// /// 表现分(规定赛创意分 T1) /// public decimal PerformanceScore { get; set; } /// /// 规定分(规定赛完成分 T2) /// public decimal RequiredScore { get; set; } /// /// 扣分(规定赛主裁扣分 T3) /// public decimal DeductionScore { get; set; } /// /// 是否取消比赛资格 /// public bool IsDisqualified { get; set; } /// /// 成绩状态:10-待复核,20-已确认,90-已作废 /// public int ResultStatus { get; set; } /// /// 成绩状态名称 /// public string ResultStatusName { get; set; } = string.Empty; /// /// 成绩版本号 /// public int ResultVersion { get; set; } /// /// 复核人(后台系统用户ID) /// public long? ReviewUserId { get; set; } /// /// 复核时间 /// public DateTime? ReviewTime { get; set; } } /// /// 后台发起成绩修正 /// public class InitiateJudgeCorrectionInput { /// /// 评分单ID /// public long ScoreSheetId { get; set; } /// /// 修正原因 /// public string Reason { get; set; } = null!; } /// /// 审批成绩修正申请 /// public class ApproveJudgeCorrectionInput { /// /// 修正申请ID /// public long CorrectionId { get; set; } /// /// 是否同意 /// public bool Approved { get; set; } /// /// 审批意见 /// public string? ApproveRemark { get; set; } } /// /// 成绩修正申请 /// public class JudgeCorrectionOutput { /// /// 修正申请ID /// public long Id { get; set; } /// /// 场次ID /// public long SessionId { get; set; } /// /// 场次名称 /// public string SessionName { get; set; } = string.Empty; /// /// 出场记录ID /// public long SessionEntryId { get; set; } /// /// 出场编号 /// public string EntryNo { get; set; } = string.Empty; /// /// 参赛者/参赛队名称 /// public string ParticipantName { get; set; } = string.Empty; /// /// 原评分单ID /// public long OriginalScoreSheetId { get; set; } /// /// 修正后的新评分单ID /// public long? NewScoreSheetId { get; set; } /// /// 裁判席位编码 /// public string JudgeRole { get; set; } = string.Empty; /// /// 裁判姓名 /// public string RefereeName { get; set; } = string.Empty; /// /// 修正前的得分 /// public string OriginalScore { get; set; } = string.Empty; /// /// 修正后的得分 /// public string? NewScore { get; set; } /// /// 申请修正原因 /// public string ApplyReason { get; set; } = string.Empty; /// /// 审批意见 /// public string? ApproveRemark { get; set; } /// /// 修正状态:0-已申请,10-已批准,20-已拒绝,30-裁判修改中,40-已完成,90-已取消 /// public int CorrectionStatus { get; set; } /// /// 修正状态名称 /// public string CorrectionStatusName { get; set; } = string.Empty; /// /// 申请时间 /// public DateTime CreatedTime { get; set; } /// /// 审批时间 /// public DateTime? ApproveTime { get; set; } /// /// 完成时间 /// public DateTime? CompletedTime { get; set; } } /// /// 场次成绩确认结果 /// public class ConfirmSessionScoreOutput { /// /// 已确认的成绩条数 /// public int ConfirmedCount { get; set; } /// /// 仍未完成评分的出场编号 /// public List PendingEntries { get; set; } = new(); /// /// 场次是否已整场结束 /// public bool SessionFinished { get; set; } }