自定义表单可以挂载到流程引擎,也可单独存在,本文介绍自定义表单挂接流程引擎案例,流程引擎采用开源的框架elsa,并对部分代码做了修改以适应中国国内的审批业务,流程设计器也是基于elsa提供的前端实现框架,但全部移植到vue版本中以适应自身框架的需要。
1.关键业务流程:订单、报价处理、采购处理、合同审核、客户电话处理、供应链管理等
2.行政管理类:出差申请、加班申请、请假申请、用车申请、各种办公用品申请、购买申请、日报周报等凡是原来手工流转处理的行政表单。
3.人事管理类:员工培训安排、绩效考评、职位变动处理、员工档案信息管理等。
4.财务相关类:付款请求、应收款处理、日常报销处理、出差报销、预算和计划申请等。
6.特殊服务类:ISO系列对应流程、质量管理对应流程、产品数据信息管理、贸易公司报关处理、物流公司货物跟踪处理等
这里的案例设计为经营管理中的合同管理,并尽量朗阔流程引擎中的核心功能特性,以零代码配置合同审批功能。
说明:为了方便演示,流程定义的每一步活动的审批人都添加了发起人
流程定义管理
流程活动
活动分为审批活动和流程控制活动
用户审批活动->基本审批活动
子流程活动->定义子流程,流程运行到此活动时,流程引擎会自动发起子流程
Fork、Join活动->并行活动开始和并行活动结束控制,流程运行到Fork活动,会并行运行多个活动;Join活动会等待所有活动结束或任何一个活动完成才会继续往下运行
Switch活动->分支活动,通常判断用户审批或者表单自定义的表达式值从而确定流程运行哪一个分支
If/Else活动->分支活动,判断表达式为true或者false从而运行哪一个分支
活动规则引擎
规则引擎为整个流程引擎核心,流程根据规则引擎确定流程流转,部分规则说明:
审批活动_基本信息->定义活动名称,"是否可跳转到其他活动"控制审批活动是否可以强制跳转到其他任意活动,"是否可以回退到第一步"控制审批用户是否可以回退到第一步
审批活动_任务分配规则->配置哪些人可以审批此活动,哪些人会收到待阅任务,可以从角色选择,也可从具体人选择,角色可以限制部门; "是否需前一步骤用户指定"配置流程运行到此步骤,需要上一步审批用户选择审批用户
审批活动_路由选择规则->配置允许用户审批提交时,选择流程运行哪个分支
审批活动_权限规则->控制当前审批活动不能编辑哪些表单字段和不显示哪些表单字段,默认不限制
审批活动_完成规则->控制活动达到什么条件才算完成,否则不会往下流转,通常为会签业务
子流程活动->可配置为同步子流程或异步子流程,可选择子流程定义
Swith活动->配置分支判断表达式,自定义表达式,可选择javascript语法
流程表单定义
表单列表
包括合同管理和合同归档管理,均根据自定义表单配置而来。
流程实例管理
工作台待办、已办、待阅、已阅、流程管理、表单列表均可打开流程实例管理界面。可以以对话框或非对话框模式打开。
流程表单
流程引擎主要用于业务单据根据不同的规则在不同的人之间审批流转,这里有单据通常为业务表单。
流程跟踪图
流程跟踪图比较直观的查看流程流转情况以及不同活动的审批情况,在流程设计图的基础上增加审批状态及审批信息
流程审批历史
按照时间倒叙以列表的方式记录流程审批信息
流程附件
流程引擎可以在任何时间,任何节点添加附件信息
工作台
与流程相关的业务功能都在工作台可以办理,包括待办、待阅、流程实例管理等
待办、已办管理
主要管理我的待办已办任务
待阅、已阅管理
主要管理我的待阅已阅任务
流程实例管理
主要管理已发起的流程实例信息
流程运行时部分功能演示
为方便演示,所有的审批活动审批人都添加了流程发起人
基本审批
审批人员分配
主要确定哪些人能收到待办和待阅任务
分支判断
通过用户审批选择或者表达式值,结合Switch活动确定流程流转到哪个分支
审批用户由上一步骤审批活动指定
通常为上线下发任务情况,由领导安排下一步骤谁去完成活动
并行审批
流程运行时可以同时分出多可运行分支,所以分支完全等效,任何分支都可以先执行,并等待所有分支执行完成才往下流转,通常用于部门协作完成某一业务。
流程跟踪、流程审批历史、流程附件
流程跟踪和流程审批历史都可以比较方便的查看流程整个审批过程信息,流程附件统一管理流程涉及到的附件信息
任务转发
待办任务可以转发给其他人员审批
提交并转向其他活动
流程原则上需要按照预定义的活动流转,但在某些情况下可以允许用户执行任何其他审批活动
回退到第一步
流程可以设置在某些活动允许审批人强制回退到第一步,相当于打回整个流程
审批撤回
对刚提交的待办,且下一步审批用户未审批,可以在我的已办中打开已办信息,选择撤回已办信息。
待办催办
流程管理员或者流程发起人可以在流程管理实例管理界面对当前审批活动发送催办通知
活动权限控制
对于某些审批活动,可以设置不允许修改表单信息或者隐藏某些字段显示
流程强制作废
对于某些不再需要继续流转审批的流程可以强制作废,强制作废回收所有待办任务,并修改流程状态
流程表单信息管理
可以管理业务功能的同时查看流程信息
流程通知
在用户收到待办信息、流程状态改变、任务催办等业务,可以以邮件、实时消息、公众号、短信等发送流程通知
父子流程
某些流程之间可能存在父子关系,父流程流程到某一步活动时,会自动发起子流程,父流程可以同步或者异步等待子流程完成