YD_Event.Admin/YD_Event.Core/Entities/EventJudgeAssignment.cs

98 lines
2.5 KiB
C#
Raw Normal View History

2026-08-11 23:41:18 +08:00
using YD_Event.Core.Enum;
namespace YD_Event.Core.Entities;
/// <summary>
2026-08-17 00:14:48 +08:00
/// 赛事裁判分配表
2026-08-11 23:41:18 +08:00
/// </summary>
[SugarTable("EventJudgeAssignment")]
public class EventJudgeAssignment : Entity<long>, ISoftDelete, ICreatedUserId, ICreatedTime, IUpdatedUserId, IUpdatedTime, IAvailability
{
/// <summary>
/// 关联的赛事ID
/// </summary>
public long EventId { get; set; }
/// <summary>
/// 关联的比赛场次ID
/// </summary>
public long SessionId { get; set; }
/// <summary>
2026-08-17 00:14:48 +08:00
/// 关联的赛事裁判记录ID
/// </summary>
public long EventRefereeId { get; set; }
/// <summary>
/// 关联的裁判档案ID(兼容历史查询的冗余字段)
2026-08-11 23:41:18 +08:00
/// </summary>
public long RefereeId { get; set; }
/// <summary>
/// 关联的小程序用户ID(裁判尚未注册小程序账号时为空)
/// </summary>
[SugarColumn(IsNullable = true)]
public long? JudgeUserId { get; set; }
/// <summary>
/// 裁判席位编码(取自计分规则的裁判席位配置,如 T、DP1、P)
/// </summary>
[SugarColumn(Length = 32)]
public string JudgeRole { get; set; } = null!;
2026-08-17 23:07:15 +08:00
/// <summary>
/// 裁判角色类别编码(如 DP、DM、DR、P、T)
/// </summary>
[SugarColumn(Length = 16, IsNullable = true)]
public string? JudgeRoleType { get; set; }
2026-08-11 23:41:18 +08:00
/// <summary>
/// 分配状态:0-草稿,1-已提交,2-已替换,9-已停用
/// </summary>
public int AssignmentStatus { get; set; }
/// <summary>
/// 提交时间
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? SubmittedTime { get; set; }
/// <summary>
/// 备注
/// </summary>
[SugarColumn(Length = 512, IsNullable = true)]
public string? Remark { get; set; }
/// <summary>
/// 可用状态
/// </summary>
public AvailabilityStatus Status { get; set; } = AvailabilityStatus.Enable;
/// <summary>
/// 标记删除
/// </summary>
public bool DeleteMark { get; set; }
/// <summary>
/// 创建人
/// </summary>
public long CreatedUserId { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreatedTime { get; set; }
/// <summary>
/// 更新人
/// </summary>
[SugarColumn(IsNullable = true)]
public long? UpdatedUserId { get; set; }
/// <summary>
/// 更新时间
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? UpdatedTime { get; set; }
}