概述
代码示例:查询一个任务并审批
Task task = configuration.getTaskService().createTaskQuery().taskAssignee("kermit").singleResult();
if(StringUtils.isBlank(task.getAssignee())){
//认领任务
configuration.getTaskService().claim(task.getId(),"kermit");
//取消认领任务
//configuration.getTaskService().unclaim(kermit.getId(),"zhangpf");
}
//设置当前用户ID,若不设置在插入Comment时数据表userid字段为null
Authentication.setAuthenticatedUserId("kermit");
//添加审批意见
configuration.getTaskService().addComment(task.getId(), task.getProcessInstanceId(), "打招呼", "vx你有吗");
//提交任务
configuration.getTaskService().complete(task.getId());
注意事项:Authentication.setAuthenticatedUserId(“kermit”)是设置当前用户ID(真实的生产环境需要考虑此代码的写入时机),若不设置在插入Comment时数据表userid字段为null,底层其实维护了一个ThreadLocal。具体源码如图。Comment插入只是其中一种获取当前用户的情况,按照acrtiviti的思想应当在在流程引擎中维护当前用户id信息。
最后
以上就是饱满可乐为你收集整理的流程引擎(flowable)之用户任务的全部内容,希望文章能够帮你解决流程引擎(flowable)之用户任务所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复