ltx 25830581d2 feat(api): 完善小程序赛事角色与秩序册检录接口
新增成绩查询、裁判认证及检录员账号管理接口,并统一小程序角色登录与个人中心数据。

检录任务绑定赛事秩序册场次,按项目、组别、场地和场次顺序执行;支持最多三名检录员、分配检录轮次及前序检录校验。

补充检录任务、检录记录、裁判申请实体及四份数据库迁移,包含表字段备注、秩序册绑定和检录序号。
2026-08-07 14:59:15 +08:00

64 lines
2.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using YD_Event.Core.Enum;
namespace YD_Event.Core.Entities;
/// <summary>
/// 赛事检录任务,记录总检录次数以及当前检录轮次、组别。
/// </summary>
[SugarTable("CheckinTask")]
public class CheckinTask : Entity<long>, ISoftDelete, ICreatedUserId, ICreatedTime, IUpdatedUserId, IUpdatedTime, IAvailability
{
public long EventId { get; set; }
/// <summary>该检录员负责的检次:1-一检,2-二检,3-三检。</summary>
public int CheckinNo { get; set; } = 1;
[SugarColumn(IsNullable = true)]
public long? CheckerUserId { get; set; }
public int TotalRounds { get; set; } = 1;
public int CurrentRound { get; set; } = 1;
[SugarColumn(Length = 64, IsNullable = true)]
public string? CurrentSessionKey { get; set; }
public int CurrentSessionOrder { get; set; }
[SugarColumn(Length = 256, IsNullable = true)]
public string? CurrentSessionName { get; set; }
[SugarColumn(IsNullable = true)]
public long? CurrentEventProjectId { get; set; }
[SugarColumn(Length = 128, IsNullable = true)]
public string? CurrentSessionVenue { get; set; }
[SugarColumn(Length = 64)]
public string RoundName { get; set; } = "赛前检录";
[SugarColumn(IsNullable = true)]
public long? CurrentGroupId { get; set; }
[SugarColumn(Length = 128)]
public string CurrentGroupName { get; set; } = string.Empty;
public int GroupOrder { get; set; }
public int TotalGroups { get; set; }
[SugarColumn(Length = 128, IsNullable = true)]
public string? NextGroupName { get; set; }
[SugarColumn(Length = 128, IsNullable = true)]
public string? Venue { get; set; }
/// <summary>0-未开始,1-进行中,2-已结束。</summary>
public int TaskStatus { get; set; }
public AvailabilityStatus Status { get; set; } = AvailabilityStatus.Enable;
public bool DeleteMark { get; set; }
public long CreatedUserId { get; set; }
public DateTime CreatedTime { get; set; }
public long? UpdatedUserId { get; set; }
public DateTime? UpdatedTime { get; set; }
}