|
@@ -142,8 +142,6 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
/// <summary>
|
|
|
/// 流转至下一节点(节点办理)
|
|
|
/// </summary>
|
|
|
-
|
|
|
- //new
|
|
|
public async Task NextAsync(NextWorkflowDto dto, CancellationToken cancellationToken)
|
|
|
{
|
|
|
var workflow = await _workflowDomainService.GetWorkflowAsync(dto.WorkflowId, true, true, withCountersigns: true,
|
|
@@ -419,24 +417,17 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
if (currentStep.StepType is EStepType.End)
|
|
|
throw new UserFriendlyException("结束节点无需办理");
|
|
|
|
|
|
- //var dto = new NextStepsDto
|
|
|
- //{
|
|
|
- // DefinitionId = workflow.DefinitionId,
|
|
|
- // InstanceMode = currentStep.InstanceMode,
|
|
|
- // DynamicPolicy = currentStep.InstancePolicy
|
|
|
- //};
|
|
|
+ var dto = new NextStepsDto
|
|
|
+ {
|
|
|
+ CanReject = currentStep.CanReject
|
|
|
+ };
|
|
|
|
|
|
if (currentStep.InstanceMode is EInstanceMode.Dynamic && !DynamicShouldTerminal(currentStep))
|
|
|
{
|
|
|
//动态生成下一步
|
|
|
- //var nextStepOption = CreateDynamicStep(currentStep.InstancePolicy);
|
|
|
- //dto.Steps = new List<NextStepOption> { nextStepOption };
|
|
|
- //return dto;
|
|
|
var nextStepOption = await CreateDynamicStepAsync(currentStep.InstancePolicy.Value, cancellationToken);
|
|
|
- return new NextStepsDto
|
|
|
- {
|
|
|
- Steps = new List<NextStepOption> { nextStepOption }
|
|
|
- };
|
|
|
+ dto.Steps = new List<NextStepOption> { nextStepOption };
|
|
|
+ return dto;
|
|
|
}
|
|
|
|
|
|
if (currentStep.IsInCountersign())
|
|
@@ -448,8 +439,8 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
//当前待办节点为会签汇总节点时:检查是否为顶级会签发起节点(csstate==none),t:按配置往下走,f:继续往上汇总,不需要重复往下指派
|
|
|
if (currentStep.CountersignStartStepId != workflow.TopCountersignStepId)
|
|
|
{
|
|
|
- var steps = new List<NextStepOption> { countersignEndOption };
|
|
|
- return new NextStepsDto { Steps = steps };
|
|
|
+ dto.Steps = new List<NextStepOption> { countersignEndOption };
|
|
|
+ return dto;
|
|
|
}
|
|
|
|
|
|
//var startCountersignStep = workflow.Steps.FirstOrDefault(d => d.Id == currentStep.CountersignStartStepId);
|
|
@@ -467,8 +458,8 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
{
|
|
|
//按会签策略
|
|
|
var nextStepOption = await CreateDynamicStepAsync(currentStep.CountersignPolicy.Value, cancellationToken);
|
|
|
- var steps = new List<NextStepOption> { nextStepOption, countersignEndOption };
|
|
|
- return new NextStepsDto { Steps = steps };
|
|
|
+ dto.Steps = new List<NextStepOption> { nextStepOption, countersignEndOption };
|
|
|
+ return dto;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -476,10 +467,8 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
if (!nextDefines.Any())
|
|
|
throw new UserFriendlyException("未正确配置下一节点");
|
|
|
|
|
|
- return new NextStepsDto
|
|
|
- {
|
|
|
- Steps = await CreateConfigStepsAsync(nextDefines, cancellationToken)
|
|
|
- };
|
|
|
+ dto.Steps = await CreateConfigStepsAsync(nextDefines, cancellationToken);
|
|
|
+ return dto;
|
|
|
|
|
|
|
|
|
//return new NextStepsDto
|