|
@@ -78,7 +78,7 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
/// <param name="dto"></param>
|
|
|
/// <param name="cancellationToken"></param>
|
|
|
/// <returns></returns>
|
|
|
- public async Task StartAsync(Workflow workflow, BasicWorkflowDto dto, StepDefine nextStepBoxDefine, CancellationToken cancellationToken)
|
|
|
+ public async Task StartAsync(Workflow workflow, BasicWorkflowDto dto, StepDefine nextStepBoxDefine, FlowAssignMode flowAssignMode, CancellationToken cancellationToken)
|
|
|
{
|
|
|
//var nextStepBoxDefine = GetStepBoxDefine(workflow.Definition, dto.NextStepCode);
|
|
|
|
|
@@ -96,10 +96,14 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
|
|
|
//更新当前节点名称、时间、会签节点code 等字段
|
|
|
workflow.SetWorkflowCurrentStepInfo(isStartCountersign, nextStepBox);
|
|
|
+
|
|
|
+ workflow.UpdateHandlers(_sessionContext.RequiredUserId, _sessionContext.RequiredOrgCode,
|
|
|
+ flowAssignMode.FlowAssignType, flowAssignMode.Handlers);
|
|
|
+
|
|
|
await _workflowRepository.UpdateAsync(workflow, cancellationToken);
|
|
|
|
|
|
//publish
|
|
|
- _mediator.Publish(new StartWorkflowNotify(workflow, nextStepBoxDefine, dto, isStartCountersign), cancellationToken);
|
|
|
+ _mediator.Publish(new StartWorkflowNotify(workflow, dto, isStartCountersign, flowAssignMode));
|
|
|
}
|
|
|
|
|
|
public async Task<Workflow> GetWorkflowAsync(string workflowId,
|
|
@@ -190,7 +194,8 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
/// <summary>
|
|
|
/// 办理(流转至下一节点)
|
|
|
/// </summary>
|
|
|
- public async Task NextAsync(Workflow workflow, BasicWorkflowDto dto, StepDefine nextStepBoxDefine, bool isOutOfCallCenter, bool isStartCountersign, CancellationToken cancellationToken)
|
|
|
+ public async Task NextAsync(Workflow workflow, BasicWorkflowDto dto, StepDefine nextStepBoxDefine,
|
|
|
+ bool isOutOfCallCenter, bool isStartCountersign, FlowAssignMode flowAssignMode, CancellationToken cancellationToken)
|
|
|
{
|
|
|
CheckWhetherRunnable(workflow.Status);
|
|
|
|
|
@@ -328,6 +333,9 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
//更新当前节点名称、时间、会签节点code 等字段
|
|
|
workflow.SetWorkflowCurrentStepInfo(isStartCountersign, nextStepBox);
|
|
|
|
|
|
+ workflow.UpdateHandlers(_sessionContext.RequiredUserId, _sessionContext.RequiredOrgCode,
|
|
|
+ flowAssignMode.FlowAssignType, flowAssignMode.Handlers);
|
|
|
+
|
|
|
await _workflowRepository.UpdateAsync(workflow, cancellationToken);
|
|
|
|
|
|
#endregion
|
|
@@ -338,7 +346,7 @@ namespace Hotline.FlowEngine.Workflows
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
- _mediator.Publish(new NextStepNotify(workflow, nextStepBoxDefine, dto, isStartCountersign, isCountersignOver));
|
|
|
+ _mediator.Publish(new NextStepNotify(workflow, dto, isStartCountersign, isCountersignOver, flowAssignMode));
|
|
|
}
|
|
|
|
|
|
/// <summary>
|