springboot+activiti7+react实现模仿钉钉功能的审批流(十五、流程表单操作权限设计)

功能说明:类似钉钉流程设计里面的审批节点表单字段权限,流程设计可对节点上的字段做权限控制,比如流程节点A->B->C-D,表单字段F1、F2,B节点的审批人可对F2节点进行编辑,C节点的审批人不可见F3字段,适用于审批过程中控制审批人拥有不同字段权限的情况。

本人并未实际具体实现此功能,只是写下自己考虑实现该功能的大致实现思路,具体细节还需要打磨,以供交流,欢迎提出更优方案;

流程设计-配置A节点的表单操作权限

审批中,审批人可编辑表单:

 

具体实现思路:

  • 1.基于系列文章里面的《springboot+activiti7+react实现模仿钉钉功能的审批流(五、实现类似钉钉的流程设计器)》,可将表单的字段权限存到bpmn节点的扩展属性上面,结构可以类似这种:

比如表单有F1、F2、F3这3个字段,实现B节点的审批人可对F2节点进行编辑,不可见F3字段,可在用户审批(userTask)节点C上加2个扩展属性:

1.可编辑字段list扩展属性:
<activiti:field name="enableEditField">
    <activiti:string><![CDATA[F2]]></activiti:string>
</activiti:field>
2.隐藏字段list扩展属性:
<activiti:field name="hideField">
    <activiti:string><![CDATA[F3]]></activiti:string>
</activiti:field>

备注:这里不需要只读字段list扩展属性,因为字段默认就是只读;
  • 2.后端啥都不用动,前端在展示审批详情的时候,渲染表单,读取xml里面的这2个属性,根据属性转为antd组件的属性,就可实现表单字段的可编辑、隐藏;
  • 3.如果有字段的编辑权限,审批人修改了表单数据的,前端提交审批的时候将修改的表单数据存流程变量variables里面,后续的节点就可以查看到新的表单数据了;

备注:根据上一篇《springboot+activiti7+react实现模仿钉钉功能的审批流(十四、发起流程自动预判流程走向)》的内容,审批人如果修改了表单字段,预判的流程走向可能会变化,比如请假2天,修改为3天,网关的条件判断就会受影响,所以上一篇里面预判的流程走向,并不是固定的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小小绿豆

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

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

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

打赏作者

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

抵扣说明:

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

余额充值