package jnpf.dmsMapper; import jnpf.dmsEntity.storage.pdf.DmsPdfGenerationTask; import jnpf.dmsEntity.storage.vo.DmsPersistentPdfGenerateVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.UUID; @Mapper public interface DmsPdfGenerationTaskMapper { int enqueue(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("sourceChecksum") String sourceChecksum); int requeue(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("sourceChecksum") String sourceChecksum); int clearInvalidPdf(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("sourceChecksum") String sourceChecksum, @Param("objectKey") String objectKey); int discover(@Param("limit") int limit); List candidates(@Param("limit") int limit, @Param("maxAttempts") int maxAttempts); int claim(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("token") String token, @Param("maxAttempts") int maxAttempts, @Param("leaseSeconds") int leaseSeconds); int writePdf(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("sourceChecksum") String sourceChecksum, @Param("pdf") DmsPersistentPdfGenerateVO pdf); int succeed(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("token") String token); int fail(@Param("tenantId") String tenantId, @Param("fileVersionId") UUID fileVersionId, @Param("token") String token, @Param("error") String error, @Param("delaySeconds") int delaySeconds, @Param("terminal") boolean terminal); }