12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- using Hotline.FlowEngine.Definitions;
- using Hotline.Share.Dtos.FlowEngine;
- namespace Hotline.FlowEngine.Workflows
- {
- public interface IWorkflowDomainService
- {
- Task<Workflow> CreateWorkflowAsync(Definition definition, string title, CancellationToken cancellationToken);
- /// <summary>
- /// 进行流程的开始节点
- /// </summary>
- Task StartAsync(Workflow workflow, BasicWorkflowDto dto, CancellationToken cancellationToken);
- /// <summary>
- /// 查询工作流
- /// </summary>
- Task<Workflow> GetWorkflowAsync(string workflowId, bool withDefine = false, bool withSteps = false, bool withTraces = false, bool withSupplements = false, CancellationToken cancellationToken = default);
- /// <summary>
- /// 受理,接办
- /// </summary>
- Task AcceptAsync(Workflow workflow, CancellationToken cancellationToken);
- /// <summary>
- /// 办理(流转至下一节点)
- /// </summary>
- Task NextAsync(Workflow workflow, BasicWorkflowDto dto, StepDefine nextStepBoxDefine, bool isOutOfCallCenter, bool isStartCountersign, CancellationToken cancellationToken);
- /// <summary>
- /// 退回(返回前一节点)
- /// </summary>
- /// <returns></returns>
- Task PreviousAsync(Workflow workflow, PreviousWorkflowDto dto, CancellationToken cancellationToken);
- /// <summary>
- /// 撤回(返回到之前任意节点)
- /// </summary>
- Task RecallAsync(Workflow workflow, RecallDto dto, CancellationToken cancellationToken);
- /// <summary>
- /// 跳转(直接将流程跳转至任意节点)
- /// </summary>
- Task JumpAsync(Workflow workflow, RecallDto dto, CancellationToken cancellationToken);
- /// <summary>
- /// 补充
- /// </summary>
- /// <returns></returns>
- Task SupplementAsync(Workflow workflow, EndWorkflowDto dto, CancellationToken cancellationToken);
- /// <summary>
- /// 终止流程
- /// </summary>
- Task TerminateAsync(string id, CancellationToken cancellationToken);
- StepDefine GetStepBoxDefine(Definition definition, string stepCode);
- /// <summary>
- /// 查询当前待办节点的下一级节点配置(办理参数)
- /// </summary>
- IReadOnlyList<StepDefine> GetNextStepOptions(Workflow workflow, CancellationToken cancellationToken);
- }
- }
|