|
@@ -450,7 +450,19 @@ namespace Hotline.FlowEngine.Workflows
|
|
// .Include(d => d.StepHandlers)
|
|
// .Include(d => d.StepHandlers)
|
|
// .ExecuteCommandAsync();
|
|
// .ExecuteCommandAsync();
|
|
|
|
|
|
- var trace = await NextTraceAsync(workflow, dto, currentStep, cancellationToken);
|
|
|
|
|
|
+ //更新traces
|
|
|
|
+ var updateTraces = new List<WorkflowTrace>();
|
|
|
|
+ foreach (var updateStep in updateSteps)
|
|
|
|
+ {
|
|
|
|
+ var updateTrace = workflow.Traces.First(d => d.Id == updateStep.Id);
|
|
|
|
+ _mapper.Map(updateStep, updateTrace);
|
|
|
|
+ updateTraces.Add(updateTrace);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ await _workflowTraceRepository.UpdateRangeAsync(updateTraces, cancellationToken);
|
|
|
|
+
|
|
|
|
+ //var trace = await NextTraceAsync(workflow, dto, currentStep, cancellationToken);
|
|
|
|
+
|
|
|
|
|
|
#endregion
|
|
#endregion
|
|
|
|
|
|
@@ -537,8 +549,9 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
|
|
|
#endregion
|
|
#endregion
|
|
|
|
|
|
|
|
+ var currentTrace = workflow.Traces.First(d => d.Id == currentStep.Id);
|
|
await _publisher.PublishAsync(
|
|
await _publisher.PublishAsync(
|
|
- new NextStepNotify(workflow, dto, flowAssignInfo, trace, nextStepDefine,
|
|
|
|
|
|
+ new NextStepNotify(workflow, dto, flowAssignInfo, currentTrace, nextStepDefine,
|
|
current.RequiredOrgId, expiredTime.HasValue), PublishStrategy.ParallelWhenAll,
|
|
current.RequiredOrgId, expiredTime.HasValue), PublishStrategy.ParallelWhenAll,
|
|
cancellationToken);
|
|
cancellationToken);
|
|
}
|
|
}
|
|
@@ -2174,6 +2187,7 @@ namespace Hotline.FlowEngine.Workflows
|
|
}
|
|
}
|
|
|
|
|
|
await _workflowTraceRepository.AddAsync(trace, cancellationToken);
|
|
await _workflowTraceRepository.AddAsync(trace, cancellationToken);
|
|
|
|
+ workflow.Traces.Add(trace);
|
|
}
|
|
}
|
|
|
|
|
|
private async Task<WorkflowTrace> GetWorkflowTraceAsync(string workflowId, string stepId,
|
|
private async Task<WorkflowTrace> GetWorkflowTraceAsync(string workflowId, string stepId,
|