在Activiti中查询任务开始和结束日期



我正在寻找通过过滤完成日期来查询Activiti中已完成的任务的解决方案。因为一旦它们完成了已完成的任务条目,就会被BPMN引擎移到act_hi_taskinst表中,所以我希望所需的过滤器位于HistoricTaskInstanceQuery类中。但是没有HistoricProcessInstanceQuerystartedAfter/startedBeforefinishedAfter/finishedBefore的方法。表中有start_time_end_time_列,所以没有理由不允许这种查询。

是否有其他方法可以通过这些属性进行过滤,或者目前唯一的方法是直接绕过Activiti引擎查询act_hi_tasks表?

Activiti提供查询API,因此不需要直接查询act_hi_taskinst
您的查询可能像这样

NativeHistoricTaskInstanceQuery taskQuery = historyService.createNativeHistoricTaskInstanceQuery();
taskQuery.sql("SELECT * FROM "+ managementService.getTableName(HistoricTaskInstance.class)+" WHERE start_time_=#{startTime} AND end_time_=#{endTime}");
taskQuery.parameter("startTime", startTime).parameter("endTime", end_time);
List<HistoricTaskInstance> tasks = taskQuery.list();

相关内容

最新更新