activiti 根据 流程实例ID 获取发起人

简介: activiti 根据 流程实例ID 获取发起人

/**获取发起人

 * @param PROC_INST_ID_ //流程实例ID
 * @from  fhadmin.cn
 */

protected String getInitiator(String PROC_INST_ID_) {

    HistoricProcessInstance hip = historyService.createHistoricProcessInstanceQuery().processInstanceId(PROC_INST_ID_).singleResult();             //获取历史流程实例
    List<HistoricActivityInstance> hais = historyService.createHistoricActivityInstanceQuery().processInstanceId(PROC_INST_ID_)
                                                                                                .orderByHistoricActivityInstanceId().asc().list();    //获取流程中已经执行的节点,按照执行先后顺序排序
    BpmnModel bpmnModel = repositoryService.getBpmnModel(hip.getProcessDefinitionId()); // 获取bpmnModel
    List<FlowNode> historicFlowNodeList = new LinkedList<FlowNode>();                    //全部活动实例
    for(HistoricActivityInstance hai : hais) {
        historicFlowNodeList.add((FlowNode) bpmnModel.getMainProcess().getFlowElement(hai.getActivityId(), true));
        if(hai.getAssignee() != null) {
            return hai.getAssignee();    //不为空的第一个节点办理人就是发起人
        }
    }
    return null;
}
目录
相关文章
|
12月前
22activiti - 流程管理定义(查询流程状态)
22activiti - 流程管理定义(查询流程状态)
131 0
|
SQL XML 存储
Flowable 流程部署与删除
Flowable 流程部署与删除
|
5月前
|
移动开发 前端开发 Java
基于jeecg-boot的flowable流程提供一种动态设置发起人部门负责人的方式
基于jeecg-boot的flowable流程提供一种动态设置发起人部门负责人的方式
105 0
|
5月前
Activiti 流程发布
Activiti 流程发布
47 0
|
12月前
|
数据库
19activiti - 流程管理定义(启动流程实例)
19activiti - 流程管理定义(启动流程实例)
42 0
|
12月前
37activiti - 用户任务(工作流定义的角色组)
37activiti - 用户任务(工作流定义的角色组)
109 0
|
存储 Java API
流程引擎Activiti流程实例讲解
流程引擎Activiti流程实例讲解
250 0
|
Java 数据库连接 API
Activiti-流程操作2
Activiti-流程操作2
Activiti-流程操作2
|
Java API 数据库
Activiti-流程操作
Activiti-流程操作
Activiti-流程操作
|
XML 网络协议 安全
Activiti中工作流的生命周期详细解析!一个BPMN流程示例带你认识项目中流程的生命周期
本文详细说明了在工作流Activiti框架中的BPMN流程定义整个运行的生命周期。介绍了BPMN流程工作的运行环境,从定义流程开始,首先介绍了BPMN流程的几个组成部分,包括用例,流程图,以及流程图的XML内容。然后开始启动一个流程,生成任务列表,然后到领取任务,完成任务后结束流程。
683 0
Activiti中工作流的生命周期详细解析!一个BPMN流程示例带你认识项目中流程的生命周期