Camunda大杂烩(三:会签)
会签
根据我们画的图,在用户提交节点,branch==2时,会到达“二级领导审批”的会签节点:
会签节点详情(这边没填completion condition,导致必须串行审批人全部审批结束才能继续往下走,相当于无法一人拒绝就退回):
开启流程
我们先正常开启一个流程,获取到流程号为:a5908a6a-d1bd-11ec-8f83-a4b1c191e7b9
进入会签
完成用户提交任务,branch==2,且处理审批人列表字段approverList
{ "map": {"branch":2,"approverList":["demo1","demo2"]}, "taskId": "a590b17e-d1bd-11ec-8f83-a4b1c191e7b9" }
通过后台或者对应接口可以看到,当前审批人approver为demo1,未到达/已处理/总人数分别为1/0/2:
此处新增一个方法,根据taskId获取任务下的全部variables:
/** * 获取所有参数 * @param taskId 任务Id * @return 参数信息 */ @Override public Map<String, Object> getVariables(String taskId) { return taskService.getVariables(taskId); }
会签操作
由于我这里没有做任务对应人员的处理,因此会签就是一个逐步taskComplate的过程,再执行一次taskComplete后,可以发现当前处理人变成了demo2,也就是最后一个需要进行处理的人:
由于继续往下走又需要传branch参数,因此demo2用户再执行一次taskComplete即可完成这个流程:
{ "map": {"branch":0}, "taskId": "30ead6f6-d1c2-11ec-b082-a4b1c191e7b9" }
执行后发现,本流程已经完结
总结:
会签流程并不复杂,只是画图的时候需要设置对应的审批人列表,实际业务中可能在代码里处理对应的审批人即可,流程的流转依然是taskService.complete()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!