using dy.net.model.dto; using SqlSugar; namespace dy.net.model.entity { [SugarTable(TableName = "video_download_task_item")] [SugarIndex("idx_video_task_item_task_stage", nameof(TaskId), OrderByType.Asc, nameof(Stage), OrderByType.Asc)] public class VideoDownloadTaskItem { [SugarColumn(IsPrimaryKey = true, Length = 50)] public string Id { get; set; } [SugarColumn(Length = 50)] public string TaskId { get; set; } [SugarColumn(Length = 200, IsNullable = true)] public string VideoId { get; set; } [SugarColumn(Length = 200, IsNullable = true)] public string AwemeId { get; set; } [SugarColumn(Length = 200, IsNullable = true)] public string CookieId { get; set; } [SugarColumn(Length = 500, IsNullable = true)] public string CookieName { get; set; } [SugarColumn(IsNullable = true)] public VideoTypeEnum? VideoType { get; set; } [SugarColumn(Length = 2000, IsNullable = true)] public string VideoTitle { get; set; } [SugarColumn(Length = 500, IsNullable = true)] public string Author { get; set; } [SugarColumn(Length = 2000, IsNullable = true)] public string TargetPath { get; set; } public VideoTaskItemStage Stage { get; set; } public VideoTaskErrorType ErrorType { get; set; } public VideoTaskSkipReason SkipReason { get; set; } public int Attempts { get; set; } public bool WorkerManaged { get; set; } public long ExpectedLength { get; set; } public long ActualLength { get; set; } [SugarColumn(ColumnDataType = "TEXT", Length = -1, IsNullable = true)] public string SourceUrlsJson { get; set; } [SugarColumn(ColumnDataType = "TEXT", Length = -1, IsNullable = true)] public string RetrySnapshotJson { get; set; } [SugarColumn(ColumnDataType = "TEXT", Length = -1, IsNullable = true)] public string ErrorMessage { get; set; } [SugarColumn(ColumnDataType = "TEXT", Length = -1, IsNullable = true)] public string WarningMessage { get; set; } public bool CleanupPending { get; set; } [SugarColumn(ColumnDataType = "TEXT", Length = -1, IsNullable = true)] public string CleanupError { get; set; } [SugarColumn(Length = 255, IsNullable = true)] public string SourceHost { get; set; } [SugarColumn(IsNullable = true)] public int? HttpStatusCode { get; set; } [SugarColumn(IsNullable = true)] public DateTime? RetryAfter { get; set; } [SugarColumn(Length = 50, IsNullable = true)] public string ExclusionId { get; set; } [SugarColumn(IsNullable = true)] public DateTime? ExclusionReleasedAt { get; set; } [SugarColumn(Length = 50, IsNullable = true)] public string RelatedTaskId { get; set; } public DateTime CreatedAt { get; set; } public DateTime UpdatedAt { get; set; } [SugarColumn(IsNullable = true)] public DateTime? CompletedAt { get; set; } } }