采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
List<HashMap<String, Object>> tempControlList = mapper.selectFormData(task.getProcessInstanceId());这个查询要带上task.getFormKey()的查询,假如一个流程实例有多个表单,会拿到多个formdata。
这个问题提的很好,说明有认真学习并思考。这个方法确实会查出来一个流程的所有表单。
课程的考虑是:
只要一个流程不同任务中,自定义控件ID是不同的,基于BPMNJS是自动随机命名的,一般控件ID不会相同。
mapper.selectFormData查出来了流程实例下所有的表单定义,后面的代码进一步处理。
UserTask userTask = (UserTask) repositoryService.getBpmnModel(task.getProcessDefinitionId()) .getFlowElement(task.getFormKey());
以及后续代码,拿到的是当前任务的所有控件,在去tempControlList->controlistMap里找控件属性。
所以课程里的代码是正确。
当然在
List<HashMap<String, Object>> tempControlList = mapper.selectFormData(task.getProcessInstanceId());
这个查询要带上task.getFormKey()的查询,这个也挺好,没问题。
登录后可查看更多问答,登录/注册
从0打造黑马潜力项目作品,掌握新版Activiti7核心+工程化思维。
4.5k 9
1.4k 6
1.7k 5
1.5k 5
5.5k 5
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号