根据条件选择不同的审批流程
有时我们需要根据不同的情况使用不同的审批流程,比如请假功能中,请假天数较多或者需要离市时,需要更高级的人员比如院系领导甚至是校领导批假。
为此我们的系统提供了审批规则编辑器,可以自定义在不同的条件下使用不同的审批流程。
规则编辑器同样可以从老师中心的首页左侧菜单“高级管理/基础管理”进入:

内置规则
系统内置了一些常用规则:

这些规则只简单地使用了相应的审批流程,未添加判断逻辑。您可以根据需要自定义复杂的规则。下面以请假模块为例说明。在点击右上角的“新建”按钮时,系统可能也会提示需要从相应业务系统中进入,这是因为要读取对应模块的数据。
自定义规则(请假)
目前请假模块除了内置的审批流程外,已深度集成了统一审批系统。两套审批系统可以自由选择使用,其中统一审批系统提供更强大的流程定制功能。
老师中心设置
默认新建的院系都将使用统一审批系统。请假和销假默认都使用“管理团队中老师身份审核”规则。

您可以根据需要分别自定义请假和销假的审批规则/流程。“点击修改”后,会显示一下设置页面:

“请假”和“销假”的设置步骤一样,下面以请假为例说明。点击“修改规则”按钮,会弹出规则编辑器:

在这里可以修改当前的审批规则,或点击返回按钮选择其他的规则,或新建规则:

规则编辑器里的术语说明:
- 分支:每一个分支是一个独立的判断单元,判断条件满足后就执行该分支设置的动作,并结束本次规则判定。
- 多个分支的判定从上往下,当有分支判定为真后就不再往下面走了;
- 目前每个分支可以设置一个动作;
- 最后的“否则”是一个默认分支,不需要设置条件,当上面的分支都判断为假时执行该动作。
- 条件:分支中可以设置多个条件;各个条件之间是“并且”的关系,即只有当这些条件都满足时,才会执行该分支设置的动作,否则就进入下一个分支继续判断。
- 动作:当该分支判定为真时执行的操作,输出(返回)的内容或使用的流程。这里以请假为例就是使用的审批流程。
比如某个院系的请假审批规则如下:
- 1 天以内的不离校请假,班长审批即可;
- 其他情况都由老师审批。
在规则设置编辑器中点击添加分支和设置条件、动作后,对应的规则设置如图所示:

保存该规则,再保存请假审批规则设置后,新的请假申请就会根据该上面设置的规则去匹配对应的审批流程。
院校后台设置
开通了院系后台的学校,可以设置学校级别的审批规则,应用到所有院系,并且可以设置学院或学校领导参与审批。
这里还是以请假为例,点击首页的请假设置:

在全校请假设置中,“点击修改”统一审批系统,即可分别设置请假和销假的审批规则,并且可以设置是否“允许辅导员自定义审批的规则”,未勾选时全校都将使用这里设置的规则。

比如某个学校的请假审批规则如下:
- 1 天以内的不离校请假,班长审批即可;
- 5 天以内的离校请假或 1 天以上的不离校申请,由老师审批;
- 5 天以上的离校申请需要由老师和院系副书记审批。
首先需要添加类似如下图的自定义审批流程,来实现先由老师审批,再由副书记审批的流程:

然后定义如下的审批规则:

条件的判断
条件的判断主要由变量、谓词、取值三部分组成。
- 变量:院系、班级、学生、以及相关业务中的变量,比如请假模块就是请假表单、请假附加表单、销假表单、销假附加表单中的字段,如下图所示。同时我们在不断添加新的变量支持,具体内容以系统中显示的列表为准。

- 谓词:根据变量类型的不同,支持不同的谓词。目前系统中支持以下谓词:
- (不)取值:下拉框、单选、多选等
- (不)介于:主要针对数字类型,包含两端
- (不)为空
- (不)包含文字:主要针对文本框等类型
- (不)位于:主要针对地图选点、自动定位等类型,可以设置多个地图范围
- (不)在疫情中高风险地区:省市县的选择框,比如请假表单里的具体去向字段
- 大于
- 大于等于
- 小于
- 小于等于
- 取值:根据谓词的不同,支持设置以下取值:
- 下拉框、单选、多选里的可用选项
- 文本值或范围
- 日期、时间值或范围
- 地图范围;支持设置多个,如下图:
