美文网首页
流程引擎之Camunda开发记录(八)检查当前实例是结束还是在运

流程引擎之Camunda开发记录(八)检查当前实例是结束还是在运

作者: _花 | 来源:发表于2022-04-26 19:22 被阅读0次

1、第一种

ProcessInstance processInstance = runtimeService.createProcessInstanceQuery()
                .processInstanceId(processInstanceId)
                // 结果唯一的,可以用single,如果大于1,则会报错
                .singleResult();
        if (processInstance == null) {
            System.out.println("当前实例已经结束了");
            return true;
        } else {
            System.out.println("当前实例正在运转");
            return false;
        }

2、第二种

  @Test
    public void createHistoricProcessInstanceQuery() {
        String processInstanceId = "5301";
        HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery()
//                .completed()
                .processInstanceId(processInstanceId)
                .singleResult();

        if (historicProcessInstance.getEndTime() != null) {
            System.out.println("当前实例结束了");
        } else {
            System.out.println("当前实例正在运转");
        }
    }

ACT_HI_PROCINST表和ACT_RU_EXECUTION里的实例是一一对应的关系

相关文章

网友评论

      本文标题:流程引擎之Camunda开发记录(八)检查当前实例是结束还是在运

      本文链接:https://www.haomeiwen.com/subject/gckhyrtx.html