package com.zhengmeng.ocrplatform.task;

import com.zhengmeng.ocrplatform.extraction.OcrKeyValueItem;
import com.zhengmeng.ocrplatform.recognition.OcrRawResultItem;
import com.zhengmeng.ocrplatform.recognition.OcrTextBlockItem;

import java.time.LocalDateTime;
import java.util.List;

public record OcrTaskDetail(
        String taskId,
        String clientCode,
        TaskStatus status,
        String sourceSystem,
        String businessType,
        String templateCode,
        Integer priority,
        LocalDateTime submittedAt,
        LocalDateTime startedAt,
        LocalDateTime finishedAt,
        LocalDateTime createdAt,
        LocalDateTime updatedAt,
        Long processingDurationMs,
        Long totalDurationMs,
        String errorCode,
        String errorMessage,
        int attemptCount,
        OcrTaskResultSummary summary,
        OcrFieldExtractionQualitySummary extractionQuality,
        List<OcrTaskDocumentItem> documents,
        List<OcrRawResultItem> rawResults,
        List<OcrTextBlockItem> textBlocks,
        List<OcrKeyValueItem> keyValues,
        List<TaskEventItem> events
) {
}
