namespace Deal.Infrastructure.Persistence.Entities; /// /// Строка очереди входящих пайплайна /// public sealed class QueueItemEntity { /// /// Короткий id строки очереди /// public string Id { get; set; } = string.Empty; /// /// Ключ дедупликации записи источника /// public string SourceKey { get; set; } = string.Empty; /// /// Ссылка на источник, сериализованная в JSON /// public string SourceJson { get; set; } = string.Empty; /// /// Содержимое источника, сериализованное в JSON /// public string ContentJson { get; set; } = string.Empty; /// /// Текст сообщения /// public string Text { get; set; } = string.Empty; /// /// Время получения исходного сообщения /// public DateTimeOffset MsgAt { get; set; } /// /// Статус строки: new — ждёт разбора воркером, filtered — прошла фильтры и ждёт ИИ/ML. /// public string Status { get; set; } = "new"; /// /// Признак возврата из отсева /// public bool Force { get; set; } /// /// Время постановки в очередь. /// public DateTimeOffset CreatedAt { get; set; } /// /// Время последнего изменения строки. /// public DateTimeOffset UpdatedAt { get; set; } }