Loading module/Oscar/src/Oscar/Service/ProjectGrantSearchService.php +30 −0 Original line number Diff line number Diff line Loading @@ -527,6 +527,7 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U //////////////////////////////////////////////////////////////////////////////////////////////////////////////// // FILTRES de RECHERCHE //////////////////////////////////////////////////////////////////////////////////////////////////////////////// $activityTypeFilteredIds = null; foreach ($params['filters'] as &$filter) { $this->getLoggerService()->debug("Traitement du filtre '" . $filter['raw'] . "'"); $value1 = $filter['val1']; Loading Loading @@ -908,6 +909,24 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U ///////////////////////////////// ACTIVITY / TYPE case 'at' : if ($value2 == 1) { $types = [$value1]; } else { $types = $this->getProjectGrantService()->getActivityTypeService()->getTypeIdsInside( $value1 ); } if ($activityTypeFilteredIds === NULL) { $activityTypeFilteredIds = []; } $activityTypeFilteredIds = array_unique(array_merge($activityTypeFilteredIds, $this->getProjectGrantService()->getActivityRepository() ->getIdsWithTypes($types, $type === 'st'))); break; case 'st' : if ($value2 == 1) { Loading Loading @@ -960,6 +979,17 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U } } if ($activityTypeFilteredIds !== null) { $this->getLoggerService()->debug( "Filtre at : " . count($activityTypeFilteredIds) . ' activité(s) trouvée(s)' ); // On filtre les IDS à garder sur au filtrage $activitiesIds = $activitiesIds == null ? $activityTypeFilteredIds : array_intersect($activitiesIds, $activityTypeFilteredIds); $filter['filtered'] = count($activityTypeFilteredIds); } ///////////////////////////// $sorted = $params['sort'] == 'hit'; // Les IDS sont-t-ils déjà triés ? Loading Loading
module/Oscar/src/Oscar/Service/ProjectGrantSearchService.php +30 −0 Original line number Diff line number Diff line Loading @@ -527,6 +527,7 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U //////////////////////////////////////////////////////////////////////////////////////////////////////////////// // FILTRES de RECHERCHE //////////////////////////////////////////////////////////////////////////////////////////////////////////////// $activityTypeFilteredIds = null; foreach ($params['filters'] as &$filter) { $this->getLoggerService()->debug("Traitement du filtre '" . $filter['raw'] . "'"); $value1 = $filter['val1']; Loading Loading @@ -908,6 +909,24 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U ///////////////////////////////// ACTIVITY / TYPE case 'at' : if ($value2 == 1) { $types = [$value1]; } else { $types = $this->getProjectGrantService()->getActivityTypeService()->getTypeIdsInside( $value1 ); } if ($activityTypeFilteredIds === NULL) { $activityTypeFilteredIds = []; } $activityTypeFilteredIds = array_unique(array_merge($activityTypeFilteredIds, $this->getProjectGrantService()->getActivityRepository() ->getIdsWithTypes($types, $type === 'st'))); break; case 'st' : if ($value2 == 1) { Loading Loading @@ -960,6 +979,17 @@ class ProjectGrantSearchService implements UseEntityManager, UsePersonService, U } } if ($activityTypeFilteredIds !== null) { $this->getLoggerService()->debug( "Filtre at : " . count($activityTypeFilteredIds) . ' activité(s) trouvée(s)' ); // On filtre les IDS à garder sur au filtrage $activitiesIds = $activitiesIds == null ? $activityTypeFilteredIds : array_intersect($activitiesIds, $activityTypeFilteredIds); $filter['filtered'] = count($activityTypeFilteredIds); } ///////////////////////////// $sorted = $params['sort'] == 'hit'; // Les IDS sont-t-ils déjà triés ? Loading