package com.zhengmeng.ocrplatform.recognition;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.EntityGraph;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;

import java.util.List;
import java.util.Optional;

public interface OcrRawResultRepository extends JpaRepository<OcrRawResultEntity, Long> {
    List<OcrRawResultEntity> findByTaskIdOrderByRunNoAscIdAsc(String taskId);

    List<OcrRawResultEntity> findByTaskIdAndRunNoOrderByIdAsc(String taskId, int runNo);

    Optional<OcrRawResultEntity> findByIdAndTaskId(Long id, String taskId);

    long countByTaskId(String taskId);

    long countByTaskIdAndRunNo(String taskId, int runNo);

    @Query("select max(r.runNo) from OcrRawResultEntity r where r.taskId = :taskId")
    Integer findMaxRunNoByTaskId(@Param("taskId") String taskId);
}
