feat(core): WorkloadCacheService - логика
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
namespace PARR.Core.Services.TaskServices.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// Отчет о выполнении Reconciliation Job.
|
||||
/// Используется для мониторинга и логирования.
|
||||
/// </summary>
|
||||
internal class ReconciliationReport
|
||||
{
|
||||
/// <summary>
|
||||
/// Время начала выполнения
|
||||
/// </summary>
|
||||
public DateTimeOffset StartedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Время завершения выполнения
|
||||
/// </summary>
|
||||
public DateTimeOffset CompletedAt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Сколько задач проверено
|
||||
/// </summary>
|
||||
public int CheckedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Сколько задач исправлено (переведено в retry или failed)
|
||||
/// </summary>
|
||||
public int FixedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Сколько задач отправлено на retry
|
||||
/// </summary>
|
||||
public int RetriedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Сколько задач переведено в финальный failed
|
||||
/// </summary>
|
||||
public int FailedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Сообщения/ошибки (для логирования)
|
||||
/// </summary>
|
||||
public List<string> Messages { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// Длительность выполнения
|
||||
/// </summary>
|
||||
public TimeSpan Duration => CompletedAt - StartedAt;
|
||||
|
||||
/// <summary>
|
||||
/// Были ли какие-то действия (повторные отправки, перевод в ошибку)
|
||||
/// </summary>
|
||||
public bool HasChanged => FixedCount > 0;
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user