新增流程条件选项
willian fu 2022 ~
新增流程条件选项
现有流程条件可能并不满足大家的需求,有时候需要二开新增条件项
前端
条件组添加设置项
条件组设置组件位于 src\views\common\process\config\ConditionGroupItemConfig.vue
,能够支持条件设置的表单字段,需要在计算属性 conditionList
中进行返回,然后在template中新增该类型条件设置组件
条件节点条件回显
新增了条件选项后,在条件设置完成后,需要在流程节点上显示条件的设置信息,参见 src\views\common\process\nodes\ConditionNode.vue
的 computed -> content
发起审批流程时全过程渲染
发起流程时,右侧会渲染流程执行过程,涉及到条件节点时,需要对条件进行解析,大部分条件是通过前端直接解析的,因此,如果大家设置的条件是表单字段并且能直接在前端判断的话,在此处直接通过前端进行解析。
该流程过程渲染文件为 src\views\process\ProcessRender.vue
,其中 getConditionResultByGroup()
函数为条件解析,在其中根据需要解析自己新增的条件类型判断,返回一个 true / false 即可
switch (cd.valueType) {
case ValueType.number:
result = this.numberCompare(cd)
break
case ValueType.string:
result = this.stringCompare(cd)
break
case ValueType.date:
result = this.dateCompare(cd)
break
case ValueType.user:
result = this.userCompare(cd)
break
case ValueType.array:
result = this.arrayCompare(cd)
break
case xxxx新增条件......
}
后端
后端也需要进行条件解析,条件解析逻辑在 UELTools.conditionCompare()
入口方法,根据自己需求新增条件,支持所有能够使用代码进行判断的条件关系!!