|
@@ -1770,7 +1770,10 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
var removeSteps = GetStepsBehindTargetStep(workflow.Steps, targetStep);
|
|
|
if (removeSteps.Any())
|
|
|
{
|
|
|
- await _workflowStepRepository.RemoveRangeAsync(removeSteps, cancellationToken);
|
|
|
+ //await _workflowStepRepository.RemoveRangeAsync(removeSteps, cancellationToken);
|
|
|
+ await _workflowStepRepository.RemoveNav(removeSteps)
|
|
|
+ .Include(d => d.StepHandlers)
|
|
|
+ .ExecuteCommandAsync();
|
|
|
workflow.Steps.RemoveAll(d => removeSteps.Contains(d));
|
|
|
}
|
|
|
|
|
@@ -1788,23 +1791,16 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
null, expiredTime, cancellationToken: cancellationToken)).First();
|
|
|
|
|
|
|
|
|
- //更新当前办理节点信息
|
|
|
- //workflow.UpdateWorkflowCurrentStepInfo(dto.IsStartCountersign,
|
|
|
- // _sessionContext.RequiredUserId, _sessionContext.UserName,
|
|
|
- // _sessionContext.RequiredOrgId, _sessionContext.OrgName,
|
|
|
- // _sessionContext.OrgAreaCode, _sessionContext.OrgAreaName,
|
|
|
- // nextStep: targetStepNew);
|
|
|
+ //更新实际办理节点信息
|
|
|
workflow.UpdateActualStepWhenAssign(targetStepNew, targetStep.HandlerOrgName, targetStep.HandlerOrgId);
|
|
|
|
|
|
//calc workflow expired time
|
|
|
var isOrgToCenter = CheckIfFlowFromOrgToCenter(workflow, targetStep);
|
|
|
- //if (isOrgToCenter)
|
|
|
- // workflow.ExpiredTime = CalculateExpiredTime("");//todo calc expiredTime
|
|
|
-
|
|
|
+
|
|
|
return isOrgToCenter;
|
|
|
}
|
|
|
|
|
|
- private ICollection<WorkflowStep> GetStepsBehindTargetStep(List<WorkflowStep> steps, WorkflowStep targetStep)
|
|
|
+ private List<WorkflowStep> GetStepsBehindTargetStep(List<WorkflowStep> steps, WorkflowStep targetStep)
|
|
|
{
|
|
|
var behindSteps = new List<WorkflowStep> { targetStep };
|
|
|
if (!steps.Any()) return behindSteps;
|