流程在一个业务节点办理完成后,到达下一个节点,产生下一个节点的任务,并派发给任务的执行人。任务执行人登录到系统后,从我的待办任务列表中,能够查询到任务信息,并接受任务执行任务完成任务。 任务派发的过程,也可以给任务执行人推送即时的信息,通知任务执行人即时处理业务,实现流程的流转。
在给节点定义任务,设置任务执行人的时候,可以是直接选择具体的人员,也可以按角色来设置。如设置任务的参与人是人事经理角色,当具有人事经理角色的人登录系统,就可以接受任务了; 也可以按组织机构部门或岗位的范畴来设置,如指定财务部中拥有会计岗位的人可以审核报销单; 也可以动态的来指定任务的参与人,即在流程运行的时候,当前节点办理的时候,由办理人选择具体的下一步任务的执行人。
在流程流转的时候,当前节点的办理人完成本节点任务,提交到下一个节点。下一节点任务的办理人,需要是本节点的上级; 如技术部门员工填写的报销单,首先要本技术部的部门经理先审批通过,再提交给财务部门; 人事部门的员工填写报销单,首先需要本部门的人事经理审批通过,再提交财务部门审核。
这样就需要在提交报销单的时候,动态的获取到填写人所在的部门经理,作为下一个审批节点任务的执行人。
在流程中扩展一个函数事件类,在函数事件类中,流程上下文信息中获取到当前执行人,并通过组织机构部门岗位等的关联关系获取到当前部门经理,增加到下一审批节点的任务执行人中。
如下:
如果需求变更一下,员工在填写请假申请的时候,先提交给人事部门审核,审核通过后,再提交给本部门的部门经理审核,也是需要找填写人所在的部门经理来审核。如行政部门的员工,就需要找行政经理来最后审批。 这其实就是需要获取指定步骤执行人的上级,在设置审核节点任务的参与人时,需要明确指定是那个步骤的执行人。 如下:
需要指定具体的步骤参数。
在扩展的函数事件类中,实现查找指定步骤的执行人,并通过组织机构部门岗位人员的关联关系来查找到上级,增加到审核节点的任务参与人中。
通过这个示例,也可也扩展为,按区域来取上级;按管理的业务范畴来取业务上级,等等。只要有关联关系,就能找到。最终获取到的可以是一个执行人,也可以是多个执行人。