版本260406
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
using OrpaonVision.Core.Enums;
|
||||
|
||||
namespace OrpaonVision.Core.Annotation.Contracts;
|
||||
|
||||
/// <summary>
|
||||
/// 标注任务详情 DTO。
|
||||
/// </summary>
|
||||
public sealed class AnnotationTaskDetailDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 平台类型(当前固定为 Cvat)。
|
||||
/// </summary>
|
||||
public AnnotationPlatformEnum Platform { get; init; } = AnnotationPlatformEnum.Cvat;
|
||||
|
||||
/// <summary>
|
||||
/// CVAT 任务 ID。
|
||||
/// </summary>
|
||||
public long CvatTaskId { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// CVAT 任务名称。
|
||||
/// </summary>
|
||||
public string TaskName { get; init; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// CVAT 项目 ID。
|
||||
/// </summary>
|
||||
public long? CvatProjectId { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// CVAT 任务状态。
|
||||
/// </summary>
|
||||
public string TaskStatus { get; init; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 任务内图像或条目数量。
|
||||
/// </summary>
|
||||
public int ItemCount { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// 最近更新时间(UTC)。
|
||||
/// </summary>
|
||||
public DateTime? UpdatedAtUtc { get; init; }
|
||||
}
|
||||
@@ -21,4 +21,9 @@ public interface IAnnotationSyncAppService
|
||||
/// 查询同步状态。
|
||||
/// </summary>
|
||||
Task<Result<AnnotationSyncStatusDto>> GetSyncStatusAsync(Guid projectId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 查询 CVAT 任务详情。
|
||||
/// </summary>
|
||||
Task<Result<AnnotationTaskDetailDto>> GetTaskDetailAsync(long cvatTaskId, CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
||||
24
OrpaonVision.Core/Annotation/IAnnotationTaskStore.cs
Normal file
24
OrpaonVision.Core/Annotation/IAnnotationTaskStore.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using OrpaonVision.Core.Annotation.Contracts;
|
||||
using OrpaonVision.Core.Results;
|
||||
|
||||
namespace OrpaonVision.Core.Annotation;
|
||||
|
||||
/// <summary>
|
||||
/// 标注任务持久化仓储(最小可运行骨架)。
|
||||
/// </summary>
|
||||
public interface IAnnotationTaskStore
|
||||
{
|
||||
/// <summary>
|
||||
/// 保存或更新任务快照。
|
||||
/// </summary>
|
||||
/// <param name="detail">任务详情快照。</param>
|
||||
/// <returns>处理结果。</returns>
|
||||
Result SaveOrUpdate(AnnotationTaskDetailDto detail);
|
||||
|
||||
/// <summary>
|
||||
/// 按 CVAT 任务 ID 获取任务快照。
|
||||
/// </summary>
|
||||
/// <param name="cvatTaskId">CVAT 任务 ID。</param>
|
||||
/// <returns>任务快照。</returns>
|
||||
Result<AnnotationTaskDetailDto?> GetByCvatTaskId(long cvatTaskId);
|
||||
}
|
||||
Reference in New Issue
Block a user