|
@@ -418,8 +418,14 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
await _workflowStepRepository.UpdateRangeAsync(unhandleSteps, cancellationToken);
|
|
|
await _workflowTraceRepository.UpdateRangeAsync(unhandleTraces, cancellationToken);
|
|
|
|
|
|
- await _workflowDomainService.EndAsync(workflow, dto,
|
|
|
- endStepDefine, unhandleSteps.First(), current, expiredTime, cancellationToken);
|
|
|
+ if (workflow.Steps.All(d => d.StepType != EStepType.End))
|
|
|
+ {
|
|
|
+ var currentStep = unhandleSteps.FirstOrDefault()
|
|
|
+ ?? workflow.Steps.OrderBy(d => d.CreationTime).Last();
|
|
|
+
|
|
|
+ await _workflowDomainService.EndAsync(workflow, dto,
|
|
|
+ endStepDefine, currentStep, current, expiredTime, cancellationToken);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/// <summary>
|