activiti,根据任务id获取该节点配置的表单信息

具体的实现代码如下:

/**
     * @Title: getDefFormIdByTaskId
     * @Description: TODO(根据任务id获取该节点配置的表单id)
     * @param taskId 任务id
     * @return
     * @return String (当前任务节点配置的表单id)
     */ 
    public String getDefFormIdByTaskId(String taskId){
    	
    	Task task=processEngine.getTaskService().createTaskQuery() // 创建任务查询 
    			.taskId(taskId) // 根据任务id查询
    			.singleResult(); 
    	String processDefinitionId=task.getProcessDefinitionId(); // 获取流程定义id 
    	
    	ProcessDefinitionEntity processDefinitionEntity=(ProcessDefinitionEntity) processEngine.getRepositoryService()
    			.getProcessDefinition(processDefinitionId); 
    	
    	ActivityImpl activityImpl=processDefinitionEntity.findActivity(task.getTaskDefinitionKey()); // 根据活动id获取活动实例 
    	TaskDefinition taskDef = (TaskDefinition)activityImpl.getProperties().get("taskDefinition");
    	
    	DefaultTaskFormHandler fh = (DefaultTaskFormHandler)taskDef.getTaskFormHandler();
    	
    	List<FormPropertyHandler> flList = fh == null?null: (List<FormPropertyHandler>)fh.getFormPropertyHandlers();
    	
    	String formKey = "";
    	
    	if (flList != null && flList.size() > 0) {
    		formKey = ((FormPropertyHandler)flList.get(0)).getId();
		}
    	
    	return formKey;
    }

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值