fix(api): Task - получение статусов задач, доработка отчетов workload

This commit is contained in:
Mikhail Trubnikov
2026-05-15 16:09:49 +10:00
parent 87db7c5fd6
commit 911e6febcd
22 changed files with 334 additions and 323 deletions

View File

@@ -0,0 +1,9 @@
namespace PARR.API.Contracts.V1.Responses
{
public record ActiveTaskResponse : TaskItemBaseResponse
{
public required TaskItemTypeResponse Type { get; init; }
public required TaskItemStatusResponse Status { get; init; }
}
}

View File

@@ -0,0 +1,21 @@
namespace PARR.API.Contracts.V1.Responses
{
public record TaskItemBaseResponse
{
public Guid Id { get; init; }
public DateTimeOffset DateCreated { get; init; }
public DateTimeOffset? DateModified { get; init; }
public int RetryCount { get; init; }
public DateTimeOffset? ProcessedAt { get; init; }
}
public record TaskItemResponse : TaskItemBaseResponse
{
}
}

View File

@@ -0,0 +1,13 @@
using PARR.Domain.Enums;
namespace PARR.API.Contracts.V1.Responses
{
public record TaskItemStatusResponse
{
public TaskItemStatusEnum Code { get; init; }
public required string Name { get; init; }
public required string Description { get; init; }
}
}

View File

@@ -0,0 +1,33 @@
using PARR.Domain.Enums;
namespace PARR.API.Contracts.V1.Responses
{
public record TaskItemTypeResponse
{
public TaskTypeEnum Code { get; init; }
public required string Name { get; init; }
public required string Description { get; init; }
/// <summary>
/// Максимальное кол-во попыток
/// </summary>
public int MaxRetries { get; init; }
/// <summary>
/// Максимальное время выполнения
/// </summary>
public int MaxExecutionTimeMinutes { get; init; }
/// <summary>
/// Одновременно может быть только одна задача или несколько
/// </summary>
public bool IsSingleton { get; init; }
/// <summary>
/// Сколько дней хранить в БД
/// </summary>
public int RetentionDays { get; init; }
}
}