拆解钉钉流程审批功能:卡片式配置的审批流是怎样设计的?

有个客户要求我们做个定制开发,客户觉得钉钉的操作体验比较不错(用户使用的惯性),要求我们要实现钉钉的自动配置审批流程,不过幸不辱命,对比个钉钉的流程审批、表单配置的相关功能,做了个Java私有化的版本。

钉钉的流程审批操作确实相对于activity、flowable 更加贴近于业务人员,后面两个常用的流程引擎更加适合于技术人员。

如上图对比,其中,左侧的卡片式的流程配置要比右侧传统的流程配置,操作简洁、流程透明,体验好很多。本篇我们详细拆解审批功能,如果你的产品中涉及到业务审批流的,强烈推荐你了解一下卡片式配置的审批流是如何设计的。相信看完这篇后,你会对审批流有非常清晰的认知。

一、审批流基本内容

做审批流程,我们要思考流程审批的几个基础问题:

1、流程从哪里来?发起流程

2、流程到哪里去?流程的路径

3、参与人是谁?参与人员

4、要干什么事?交互的结果

要解决从上面几个问题,我们就需要深刻理解流程,流程包括集中核心能力拼装而成:

1、发起节点;

2、人工执行节点(审核);

3、路由判断节点;

4、自动化业务节点(触发);

分析我们逐一拆解,分析,讲解我们是如何实现仿钉钉审批功能。

二、流程发起

在日常的企业内部的业务过程中,发起流程的场景可以有

1、在用户的工作台里边发起一个流程 ,通过工作台的业务申请入口创建流程(例如,个人用户主动发起费用报销)

2、在业务执行过程中,需要发起流程审批,这种模式需要在数据管理或者列表管理的中,通过按钮/表单去触发流程 (例如,在创建入库单的时候,需要发起流程审批)

3、系统内部或者外部系统达到某种条件的时候,系统自动创建审批流程,这种模式下需要支持接口创建流程的能力 (例如,设备故障,自动创建一个故障处理的故障单)

这种我们构建了逻辑引擎,在逻辑引擎中实现了 通过接口创建工作流的功能

三、人工审批节点

人工节点审批包括:包括了环节名称、环节关联的表单、环节处理的人员(关联组织/公司/团队/角色/个人)、审批的时限、业务触发按钮等等,如下图所示。

其中,要支持自动审批、审批后触发的关联业务逻辑等等,如下图所示

审批人的表单,是可以独立设计的,点击设计后会进入表单设计器中

审批表单设计采用了“所见即所得”的拖拽式表单设计器。布局上,左侧是表单控件区、右侧是表单的信息和表单控件的属性设置,中间则是表单预览区。设计表单的时候,用户可以直接从左侧的表单控件区拖拽表单到预览区,然后在右侧设置该字段的属性即可完成一个表单字段的增加。删除表单字段只需要点击选中一个字段后,点击小垃圾桶图标删除即可。

除了审批环节,也可以支持抄送环节:

四、分支节点

分支条件:流程会随着表单的内容(分支条件变量)、发起人的信息不同而经过不同的审批环节,控制流程进入不同审批环节的元素称之为分支条件。举个例子,对于借款这个流程,有些公司会设置1000-5000天以内部门负责人审批即可,超过5000需要更高一级领导审批。

审批的条件可以根据表单的数据进行函数加工,灵活实现各种判断条件

五、在线测试

配套列表与测试功能,可以便捷的完成业务的测试与入口的构建。

六、会签功能

七、触发自动化业务

从人工业务联动自动化处理的业务,通过新增自动化业务节点实现。

八、总结

钉钉作为当下国内移动协同办公的老大,能够满足大部分企业的办公需求,当然在很多场景下,客户需要私有化部署、定制化开发、且成本需要控制的情况下,那么就可以考虑JVS快速开发平台。如果想要获得更多了解,可以在 Gitee上搜索“JVS”。

九、获取开源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jonyleek

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值