Fix workflow definition query

This commit is contained in:
Sipke Schoorstra 2022-05-27 11:01:54 +02:00
parent cce2a8731f
commit 105d060d71
4 changed files with 4 additions and 9 deletions

View file

@ -33,7 +33,7 @@ public class List : Controller
[FromQuery] string? versionOptions = default,
[FromQuery] string? definitionIds = default,
[FromQuery(Name = "materializer")] string? materializerName = default,
[FromQuery(Name = "label")] string[]? labels = default,
//[FromQuery(Name = "label")] string[]? labels = default,
[FromQuery] int? page = default,
[FromQuery] int? pageSize = default)
{
@ -51,7 +51,7 @@ public class List : Controller
}
else
{
var pageOfSummaries = await _store.ListSummariesAsync(parsedVersionOptions, materializerName, labels, pageArgs, cancellationToken);
var pageOfSummaries = await _store.ListSummariesAsync(parsedVersionOptions, materializerName, pageArgs, cancellationToken);
return Json(pageOfSummaries, serializerOptions);
}
}

View file

@ -75,7 +75,6 @@ public class EFCoreWorkflowDefinitionStore : IWorkflowDefinitionStore
public async Task<Page<WorkflowDefinitionSummary>> ListSummariesAsync(
VersionOptions? versionOptions = default,
string? materializerName = default,
IEnumerable<string>? labelNames = default,
PageArgs? pageArgs = default,
CancellationToken cancellationToken = default)
{
@ -83,9 +82,8 @@ public class EFCoreWorkflowDefinitionStore : IWorkflowDefinitionStore
var workflowDefinitions = dbContext.WorkflowDefinitions;
var query = workflowDefinitions.AsQueryable();
if (versionOptions != null) query = workflowDefinitions.WithVersion(versionOptions.Value);
if (!string.IsNullOrWhiteSpace(materializerName)) query = workflowDefinitions.Where(x => x.MaterializerName == materializerName);
if (labelNames != null) query = await FilterByLabelsAsync(dbContext, query, labelNames, cancellationToken);
if (versionOptions != null) query = query.WithVersion(versionOptions.Value);
if (!string.IsNullOrWhiteSpace(materializerName)) query = query.Where(x => x.MaterializerName == materializerName);
query = query.OrderBy(x => x.Name); //.Distinct();

View file

@ -99,7 +99,6 @@ public class MemoryWorkflowDefinitionStore : IWorkflowDefinitionStore
public Task<Page<WorkflowDefinitionSummary>> ListSummariesAsync(
VersionOptions? versionOptions = default,
string? materializerName = default,
IEnumerable<string>? labelNames = default,
PageArgs? pageArgs = default,
CancellationToken cancellationToken = default)
{
@ -107,7 +106,6 @@ public class MemoryWorkflowDefinitionStore : IWorkflowDefinitionStore
if (versionOptions != null) query = query.WithVersion(versionOptions.Value);
if (!string.IsNullOrWhiteSpace(materializerName)) query = query.Where(x => x.MaterializerName == materializerName);
if (labelNames != null) query = FilterByLabels(query, labelNames);
var page = query.Paginate(x => WorkflowDefinitionSummary.FromDefinition(x), pageArgs);
return Task.FromResult(page);

View file

@ -31,7 +31,6 @@ public interface IWorkflowDefinitionStore
Task<Page<WorkflowDefinitionSummary>> ListSummariesAsync(
VersionOptions? versionOptions = default,
string? materializerName = default,
IEnumerable<string>? labelNames = default,
PageArgs? pageArgs = default,
CancellationToken cancellationToken = default);