using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Login; using GB5Shared.DTO.Qualifier; using GB5Shared.QueryExecutor; namespace GB5Shared.GOP.Qualifier { public interface IQualifierBulkRunDAL { Task InsertRunAsync(QualifierBulkRunDTO dto, LoginDTO login, CancellationToken ct = default); Task MarkRunningAsync(int qualifierBulkRunId, LoginDTO login, CancellationToken ct = default); Task UpdateProgressAsync(int qualifierBulkRunId, int processedRecords, int errorCount, int warningCount, LoginDTO login, CancellationToken ct = default); Task CompleteRunAsync(int qualifierBulkRunId, byte runStatus, int processedRecords, int errorCount, int warningCount, string? errorMessage, LoginDTO login, CancellationToken ct = default); Task> GetHistoryAsync(string entityCode, int offset, int pageSize, LoginDTO login, CancellationToken ct = default); Task GetByIdAsync(int qualifierBulkRunId, LoginDTO login, CancellationToken ct = default); Task BulkInsertFindingsAsync(System.Collections.Generic.IEnumerable findings, LoginDTO login, CancellationToken ct = default); Task> GetFindingsAsync(int qualifierBulkRunId, byte? severity, int offset, int pageSize, LoginDTO login, CancellationToken ct = default); } }