public boolean isExecutorOfArchivedTaskOfProcess(long userId, Long rootProcessInstanceId) throws SBonitaReadException { final ActivityInstanceService activityInstanceService = getTenantServiceAccessor().getActivityInstanceService(); QueryOptions archivedQueryOptions = buildArchivedTasksQueryOptions(rootProcessInstanceId); List<SAHumanTaskInstance> sArchivedHumanTasks = activityInstanceService.searchArchivedTasks(archivedQueryOptions); while (!sArchivedHumanTasks.isEmpty()) { for (final SAHumanTaskInstance sArchivedHumanTask : sArchivedHumanTasks) { if (userId == sArchivedHumanTask.getExecutedBy()) { return true; } } archivedQueryOptions = QueryOptions.getNextPage(archivedQueryOptions); sArchivedHumanTasks = activityInstanceService.searchArchivedTasks(archivedQueryOptions); } return false; }
public boolean isExecutorOfArchivedTaskOfProcess(long userId, Long rootProcessInstanceId) throws SBonitaReadException { final ActivityInstanceService activityInstanceService = getTenantServiceAccessor().getActivityInstanceService(); QueryOptions archivedQueryOptions = buildArchivedTasksQueryOptions(rootProcessInstanceId); List<SAHumanTaskInstance> sArchivedHumanTasks = activityInstanceService.searchArchivedTasks(archivedQueryOptions); while (!sArchivedHumanTasks.isEmpty()) { for (final SAHumanTaskInstance sArchivedHumanTask : sArchivedHumanTasks) { if (userId == sArchivedHumanTask.getExecutedBy()) { return true; } } archivedQueryOptions = QueryOptions.getNextPage(archivedQueryOptions); sArchivedHumanTasks = activityInstanceService.searchArchivedTasks(archivedQueryOptions); } return false; }