|
@@ -654,7 +654,7 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
{
|
|
|
return await _workflowStepRepository.Queryable()
|
|
|
.Where(d => d.HandlerId == userId)
|
|
|
- .OrderBy(d=>d.CreationTime)
|
|
|
+ .OrderBy(d => d.CreationTime)
|
|
|
.ToListAsync(cancellationToken);
|
|
|
}
|
|
|
|
|
@@ -728,7 +728,7 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
foreach (var step in handler.steps)
|
|
|
{
|
|
|
step.FlowAssignType = EFlowAssignType.User;
|
|
|
- step.Assign(handler.userId, handler.username,
|
|
|
+ step.Assign(handler.userId, handler.username,
|
|
|
handler.orgId, handler.orgName);
|
|
|
}
|
|
|
}
|
|
@@ -1599,18 +1599,20 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
//会签未全部办理则不创建汇总节点
|
|
|
|
|
|
var csInnerSteps = workflow.Steps.Where(d => d.PrevStepId == countersignStartStep.Id).ToList();
|
|
|
- if (csInnerSteps.All(d => d.Status == EWorkflowStepStatus.Handled))
|
|
|
- {
|
|
|
- // 创建会签汇总节点
|
|
|
- var countersignEndStep =
|
|
|
- await CreateCountersignEndStepAsync(countersignStartStep, dto, expiredTime, cancellationToken);
|
|
|
- nextSteps = new List<WorkflowStep> { countersignEndStep };
|
|
|
+ if (csInnerSteps.Any(d => d.Status != EWorkflowStepStatus.Handled || (d.IsStartCountersign && !d.IsStartedCountersignEnd)))
|
|
|
+ return nextSteps;
|
|
|
+ //if (csInnerSteps.All(d => d.Status == EWorkflowStepStatus.Handled))
|
|
|
+ //{
|
|
|
+ // 创建会签汇总节点
|
|
|
+ var countersignEndStep =
|
|
|
+ await CreateCountersignEndStepAsync(countersignStartStep, dto, expiredTime, cancellationToken);
|
|
|
+ nextSteps = new List<WorkflowStep> { countersignEndStep };
|
|
|
|
|
|
- //create trace
|
|
|
- await CreateTraceAsync(workflow, countersignEndStep, EWorkflowTraceType.Normal, cancellationToken);
|
|
|
+ //create trace
|
|
|
+ await CreateTraceAsync(workflow, countersignEndStep, EWorkflowTraceType.Normal, cancellationToken);
|
|
|
|
|
|
- await _mediator.Publish(new CountersignEndAssigned(workflow), cancellationToken);
|
|
|
- }
|
|
|
+ await _mediator.Publish(new CountersignEndAssigned(workflow), cancellationToken);
|
|
|
+ //}
|
|
|
|
|
|
return nextSteps;
|
|
|
}
|