IWorkflowApplication.cs 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. using Hotline.FlowEngine;
  2. using Hotline.FlowEngine.Definitions;
  3. using Hotline.FlowEngine.Workflows;
  4. using Hotline.Share.Dtos.FlowEngine;
  5. using Hotline.Share.Enums.FlowEngine;
  6. namespace Hotline.Application.FlowEngine
  7. {
  8. public interface IWorkflowApplication
  9. {
  10. Task<string> StartWorkflowAsync(StartWorkflowDto dto, CancellationToken cancellationToken = default);
  11. /// <summary>
  12. /// 流转至下一节点(节点办理)
  13. /// </summary>
  14. /// <param name="dto"></param>
  15. /// <param name="cancellationToken"></param>
  16. /// <returns></returns>
  17. Task NextAsync(NextWorkflowDto dto, CancellationToken cancellationToken);
  18. /// <summary>
  19. /// 查询流程下一节点配置参数
  20. /// </summary>
  21. Task<IReadOnlyList<NextStepOptions>> GetNextStepOptionsAsync(Workflow workflow, CancellationToken cancellationToken);
  22. /// <summary>
  23. /// 查询指派办理人的处理方式及实际办理人
  24. /// </summary>
  25. Task<FlowAssignMode> GetFlowAssignModeAsync(StepDefine StepDefine, List<string> Handlers, CancellationToken cancellationToken);
  26. }
  27. }