前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Activiti 实战

Activiti 实战

原创
作者头像
派大星在吗
发布2021-12-18 11:07:02
3430
发布2021-12-18 11:07:02
举报
文章被收录于专栏:我的技术专刊我的技术专刊

1.实战

代码语言:txt
复制
//渲染动态表单
代码语言:txt
复制
    @GetMapping(path = "/formDataShow")
代码语言:txt
复制
    public AjaxResponse formDataShow(String taskId) {
代码语言:txt
复制
        try {
代码语言:txt
复制
            if(GlobalConfig.Test){
代码语言:txt
复制
                securityUtil.logInAs("bajie");
代码语言:txt
复制
            }
代码语言:txt
复制
            Task task = taskRuntime.task(taskId);
代码语言:txt
复制
            UserTask userTask = (UserTask)repositoryService.getBpmnModel(task.getProcessDefinitionId())
代码语言:txt
复制
                    .getFlowElement(task.getFormKey());
代码语言:txt
复制
            List<FormProperty> formPropertiesList = userTask.getFormProperties();
代码语言:txt
复制
            for(FormProperty formProperty:formPropertiesList){
代码语言:txt
复制
            }
代码语言:txt
复制
            return AjaxResponse.ajaxData(GlobalConfig.ResponseCode.SUCCESS.getCode(),
代码语言:txt
复制
                    GlobalConfig.ResponseCode.SUCCESS.getDesc(),null);
代码语言:txt
复制
        }catch (Exception e){
代码语言:txt
复制
            return AjaxResponse.ajaxData(GlobalConfig.ResponseCode.ERROR.getCode(),"渲染动态表单失败!",null);
代码语言:txt
复制
        }
代码语言:txt
复制
    }
代码语言:txt
复制
Task task = taskRuntime.task(taskId);
代码语言:txt
复制
            UserTask userTask = (UserTask)repositoryService.getBpmnModel(task.getProcessDefinitionId())
代码语言:txt
复制
                    .getFlowElement(task.getFormKey());
代码语言:txt
复制
            List<FormProperty> formPropertiesList = userTask.getFormProperties();
代码语言:txt
复制
            for(FormProperty formProperty:formPropertiesList){
代码语言:txt
复制
            }

其中我们通过获取到任务,然后再通过表单的key(task.getFormKey())来获取到userTask,理论上来讲我们应该传入任务的key也就是:

这个值才可获取到表单的属性,但是我们是获取不到这个key,所以只能在绘制流程图的时候,我们把表单key与任务的key设置成一致的,这样我们通过传入表单的key也就是跟任务key一致来获取到userTask了。

下面我们绘制流程图:

两个任务的执行人指定为bajie,然后我们把表单key都赋值为task key一致。

然后我们就如图一样随便添加几个表单,随便写值,然后把这个流程下载然后发布了。

然后调用上面我们写的接口,查看下表单的属性值:

发现我们好像并没有拿到什么数据,就拿到一个表单的类型和key。

不过我们可以使用另一种方式来获取到数据:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.实战
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档