个人技术分享

flowable 奇遇

碰到的问题

1. 查询流程执行情况展示

`

    List<HistoricActivityInstance> list =
            historyService.createHistoricActivityInstanceQuery().
                    processInstanceId(processInstanceId())
                    .orderByHistoricActivityInstanceStartTime().asc().list();

就是查询 ACT_HI_ACTINST 表,获取流程进度。一直感觉岁月静好,直到有一天,出现下图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/dc2e6b803c8d454982d2dd675e9c9d65.png)查找数据库发现ACT_HI_ACTINST 表格里面根本没有存储监理审批节点(一部分)。尝试进行调试,总是不能复现。 除了添加日志记录sql日志之外,对已经出错的情况进行补充。

    List<HistoricActivityInstance> list =
            historyService.createHistoricActivityInstanceQuery().
                    processInstanceId(flowableTask.getProcessInstanceId()).orderByHistoricActivityInstanceStartTime().asc().list();

`
将这里查询的节点和上面的进行合并。
在这里插入图片描述

2. 查询流程审批人

select * from act_hi_identitylink where PROC_INST_ID_ = '1015634' order by ID_ asc; # 错乱.

ID_ TYPE_ USER_ID_ CREATE_TIME_ PROC_INST_ID
1015635 starter 487 2024-04-29 13:21:19.412 1015634
1015649 participant 487 2024-04-29 13:21:19.413 1015634
1015671 participant 487 2024-04-29 13:21:19.629 1015634
1020344 participant 475 2024-04-30 14:03:47.974 1015634
1020346 participant 497 2024-04-30 14:03:47.977 1015634

纯粹是胡说八道, 只有两个节点的流程,怎么会出现那么多人!

查询人还是到自己的系统管理里面去找。

当然咯,上面这些都是个人碰到的问题,可能是使用不当才会出现的。如果您也有相关的经验,希望不吝赐教。