diff --git a/src/core/DigitalData.TaskFlow.Application/Features/Workflows/Queries/GetWorkflows/GetWorkflowsQuery.cs b/src/core/DigitalData.TaskFlow.Application/Features/Workflows/Queries/GetWorkflows/GetWorkflowsQuery.cs
index cc118d4..78a3e16 100644
--- a/src/core/DigitalData.TaskFlow.Application/Features/Workflows/Queries/GetWorkflows/GetWorkflowsQuery.cs
+++ b/src/core/DigitalData.TaskFlow.Application/Features/Workflows/Queries/GetWorkflows/GetWorkflowsQuery.cs
@@ -1,6 +1,7 @@
using DigitalData.TaskFlow.Application.Common.Factories;
using DigitalData.TaskFlow.Application.Common.Interfaces;
using DigitalData.TaskFlow.Domain.Common;
+using DigitalData.TaskFlow.Domain.Enums;
using DigitalData.TaskFlow.Domain.Workflows;
using FluentValidation;
using MediatR;
@@ -44,6 +45,20 @@ public sealed class GetWorkflowsQueryHandler(IWorkflowRepository workflowReposit
{
var data = await workflowRepository.GetAsync(request.WisagId, cancellationToken);
+ var hasListingData = data.Sources
+ .SelectMany(source => source switch
+ {
+ FerdinandSourceBlock ferdinand => ferdinand.Listing,
+ ContractsSourceBlock contracts => contracts.Listing,
+ _ => []
+ })
+ .Any();
+
+ if (!hasListingData)
+ {
+ return ApiEnvelopeFactory.Create(data, MetaCode.NoOpenWorkflows);
+ }
+
return ApiEnvelopeFactory.Create(data);
}
}
diff --git a/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/DocumentRepository.cs b/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/DocumentRepository.cs
index 646b891..234353e 100644
--- a/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/DocumentRepository.cs
+++ b/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/DocumentRepository.cs
@@ -16,12 +16,7 @@ public sealed class DocumentRepository : IDocumentRepository
/// Binary document payload.
public Task GetAsync(string id, CancellationToken cancellationToken)
{
- return Task.FromResult(new DocumentBinaryResult
- {
- Content = [],
- ContentType = "application/octet-stream",
- FileName = $"{id}.bin",
- Length = 0
- });
+ throw new NotSupportedException(
+ "Document retrieval source (DB/DMS) is not finalized yet. Configure final integration before enabling GetAsync.");
}
}
diff --git a/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/WorkflowRepository.cs b/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/WorkflowRepository.cs
index 09b4ee2..e550d7c 100644
--- a/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/WorkflowRepository.cs
+++ b/src/infrastructure/DigitalData.TaskFlow.Infrastructure/Repositories/WorkflowRepository.cs
@@ -94,10 +94,7 @@ public sealed class WorkflowRepository(TaskFlowDbContext dbContext) : IWorkflowR
CloseWorkflowDecision decision,
CancellationToken cancellationToken)
{
- return Task.FromResult(new CloseWorkflowResult
- {
- ProcessId = processId,
- IsClosed = true
- });
+ throw new NotSupportedException(
+ "Closing write procedure is not finalized yet. Configure final DB procedure mapping before enabling CloseAsync.");
}
}