From 0efad16a98c3a64486bdd8879fde0d540ef47ae8 Mon Sep 17 00:00:00 2001 From: Martin Eiber Date: Thu, 27 Nov 2025 11:56:26 +0100 Subject: [PATCH 1/2] Add Time Filter --- composer.json | 2 +- config/data_index_filters.yaml | 6 + doc/03_Grid.md | 2 + .../Classificationstore/TimeFilter.php | 143 ++++++++++++++++++ src/DataIndex/Filter/DateTimeTrait.php | 1 - src/DataIndex/Filter/TimeFilter.php | 78 ++++++++++ src/DataIndex/Query/AssetQuery.php | 21 +++ src/DataIndex/Query/DataObjectQuery.php | 21 +++ .../Query/DataObjectQueryInterface.php | 2 + src/DataIndex/Query/DocumentQuery.php | 20 +++ src/DataIndex/Query/QueryInterface.php | 8 + src/Grid/Column/ColumnType.php | 3 + 12 files changed, 305 insertions(+), 2 deletions(-) create mode 100644 src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php create mode 100644 src/DataIndex/Filter/TimeFilter.php diff --git a/composer.json b/composer.json index 0cba69499..ff99b0092 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,7 @@ "league/csv": "^9.22", "nesbot/carbon": "^3.8.4", "pimcore/static-resolver-bundle": "^3.3.0", - "pimcore/generic-data-index-bundle": "^2.2.1", + "pimcore/generic-data-index-bundle": "^2.3.0", "pimcore/pimcore": "^12.3", "zircote/swagger-php": "^4.8 || ^5.0", "ext-zip": "*", diff --git a/config/data_index_filters.yaml b/config/data_index_filters.yaml index 6d6ead1de..f66df6197 100644 --- a/config/data_index_filters.yaml +++ b/config/data_index_filters.yaml @@ -83,6 +83,9 @@ services: Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\RGBAFilter: tags: [ 'pimcore.studio_backend.search_index.filter' ] + Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\TimeFilter: + tags: [ 'pimcore.studio_backend.search_index.filter' ] + # DataObject Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DataObject\ClassNameFilter: tags: [ 'pimcore.studio_backend.search_index.data_object.filter' ] @@ -120,5 +123,8 @@ services: Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DataObject\Classificationstore\BooleanFilter: tags: [ 'pimcore.studio_backend.search_index.data_object.filter' ] + Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DataObject\Classificationstore\TimeFilter: + tags: [ 'pimcore.studio_backend.search_index.data_object.filter' ] + Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DataObject\CRM\ConsentFilter: tags: [ 'pimcore.studio_backend.search_index.data_object.filter' ] diff --git a/doc/03_Grid.md b/doc/03_Grid.md index 891c402ba..bfdbcdd5c 100644 --- a/doc/03_Grid.md +++ b/doc/03_Grid.md @@ -34,6 +34,7 @@ Available filters are: | system.string | string | Wildcard search can be used | true | | system.datetime | object of ISO 8601 | `from`, `to`, or `on` | true | | system.date | object of ISO 8601
will round to day | `from`, `to`, or `on` | true | +| system.time | object (12:15) | `from`, `to`, or `on` | true | | system.tag | object | `considerChildTags`, `tags` | false | | system.pql | string | PQL Query | false | | system.id | integer | | false | @@ -50,6 +51,7 @@ Available filters are: | classificationstore.rbga | object | `r`,`g`,`b`,`a` | true | | classificationstore.date | object of ISO 8601
will round to day | `from`, `to`, or `on` | true | | classificationstore.datetime | object of ISO 8601 | `from`, `to`, or `on` | true | +| classificationstore.time | object (12:45) | `from`, `to`, or `on` | true | | classificationstore.quantity_value | sting, integer | `from`, `to`, `is`, `setting`, `unitId` | true | | classificationstore.input_quantity_value | string | `unitId`(string), `value`(string) | true | | classificationstore.select | array | | true | diff --git a/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php b/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php new file mode 100644 index 000000000..b252cead2 --- /dev/null +++ b/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php @@ -0,0 +1,143 @@ +getColumnFilterByType(ColumnType::CLASSIFICATION_STORE_TIME->value) as $column) { + $filterValue = $this->getClassificationStoreFilterValue($column->getFilterValue()); + $key = $this->keyGroupRelationRepository->getByKeyId($filterValue->getKeyId()); + $group = $this->groupConfigRepository->getById($filterValue->getGroupId()); + /** @var DataObjectQueryInterface $query */ + $query = $this->applyTimeFilter($column, $query, $key, $group, $filterValue); + } + + return $query; + } + + private function applyTimeFilter( + ColumnFilter $column, + DataObjectQueryInterface $query, + KeyGroupRelation $key, + GroupConfig $group, + ClassificationStoreFilterValue $filterValue, + ): QueryInterface { + + $value = $filterValue->getValue(); + + if (isset($value['from'], $value['to'])) { + + $query->classificationStoreFilter( + $column->getKeyWithOutLocale(), + $group->getName(), + $this->buildTimeFilterModifier( + $key->getName(), + $value['from'], + $value['to'] + ), + $column->getLocale() + ); + + return $query; + } + + if (isset($value['on'])) { + $query->classificationStoreFilter( + $column->getKeyWithOutLocale(), + $group->getName(), + $this->buildTimeFilterModifier( + $key->getName(), + null, + null, + $value['on'] + ), + $column->getLocale() + ); + } + + if (isset($value['to'])) { + $query->classificationStoreFilter( + $column->getKeyWithOutLocale(), + $group->getName(), + $this->buildTimeFilterModifier( + $key->getName(), + null, + $value['to'] + ), + $column->getLocale() + ); + } + + if (isset($value['from'])) { + $query->classificationStoreFilter( + $column->getKeyWithOutLocale(), + $group->getName(), + $this->buildTimeFilterModifier( + $key->getName(), + $value['from'] + ), + $column->getLocale() + ); + } + + return $query; + } + + private function buildTimeFilterModifier( + string $field, + ?string $startTime = null, + ?string $endTime = null, + ?string $onTime = null, + ): GDITimeFilter { + return new GDITimeFilter($field, $startTime, $endTime, $onTime); + } +} diff --git a/src/DataIndex/Filter/DateTimeTrait.php b/src/DataIndex/Filter/DateTimeTrait.php index bd71c6441..2bb2ff0a5 100644 --- a/src/DataIndex/Filter/DateTimeTrait.php +++ b/src/DataIndex/Filter/DateTimeTrait.php @@ -201,7 +201,6 @@ private function applyClassificationStoreDateFilter( ), $column->getLocale() ); - $query->filterDatetime($column->getKey(), $this->getFromAsCarbon()); } return $query; diff --git a/src/DataIndex/Filter/TimeFilter.php b/src/DataIndex/Filter/TimeFilter.php new file mode 100644 index 000000000..44b345c6e --- /dev/null +++ b/src/DataIndex/Filter/TimeFilter.php @@ -0,0 +1,78 @@ +getColumnFilterByType(ColumnType::SYSTEM_TIME->value) as $column) { + $query = $this->applyDatetimeFilter($column, $query); + } + + return $query; + } + + private function applyDatetimeFilter( + ColumnFilter $column, + QueryInterface $query, + ): QueryInterface { + + if (!is_array($column->getFilterValue())) { + throw new InvalidArgumentException('Filter value for this filter must be an array'); + } + + $filterValue = $column->getFilterValue(); + + if (isset($filterValue['from'], $filterValue['to'])) { + $query->filterTime( + $column->getKey(), + $filterValue['from'], + $filterValue['to'] + ); + + return $query; + } + + if (isset($filterValue['on'])) { + $query->filterTime($column->getKey(), null, null, $filterValue['on']); + } + + if (isset($filterValue['to'])) { + $query->filterTime($column->getKey(), null, $filterValue['to']); + } + + if (isset($filterValue['from'])) { + $query->filterTime($column->getKey(), $filterValue['from']); + } + + return $query; + } +} diff --git a/src/DataIndex/Query/AssetQuery.php b/src/DataIndex/Query/AssetQuery.php index abbb570c9..c4352432f 100644 --- a/src/DataIndex/Query/AssetQuery.php +++ b/src/DataIndex/Query/AssetQuery.php @@ -24,6 +24,7 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ParentIdFilter; @@ -162,6 +163,26 @@ public function filterDatetime( return $this; } + public function filterTime( + string $field, + string|null $startTime = null, + string|null $endTime = null, + string|null $onTime = null, + bool $enablePqlFieldNameResolution = true + ): QueryInterface + { + $this->search->addModifier(new TimeFilter( + $field, + $startTime, + $endTime, + $onTime, + $enablePqlFieldNameResolution + )); + + return $this; + } + + /** * @param array $tags */ diff --git a/src/DataIndex/Query/DataObjectQuery.php b/src/DataIndex/Query/DataObjectQuery.php index 746d6d467..5e26452cb 100644 --- a/src/DataIndex/Query/DataObjectQuery.php +++ b/src/DataIndex/Query/DataObjectQuery.php @@ -26,6 +26,7 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\ClassificationStoreFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ClassIdsFilter; @@ -251,6 +252,25 @@ public function filterDatetime( return $this; } + public function filterTime( + string $field, + string|null $startTime = null, + string|null $endTime = null, + string|null $onTime = null, + bool $enablePqlFieldNameResolution = true + ): QueryInterface + { + $this->search->addModifier(new TimeFilter( + $field, + $startTime, + $endTime, + $onTime, + $enablePqlFieldNameResolution + )); + + return $this; + } + public function booleanFilter(string $fieldName, array $values): self { $this->search->addModifier(new BooleanMultiSelectFilter($fieldName, $values)); @@ -269,6 +289,7 @@ public function classificationStoreFilter( NumberRangeFilter| NumberFilter| BooleanMultiSelectFilter| + TimeFilter| WildcardSearch $subModifier, ?string $locale = null ): self { diff --git a/src/DataIndex/Query/DataObjectQueryInterface.php b/src/DataIndex/Query/DataObjectQueryInterface.php index 3cd0d98b1..336e7d44e 100644 --- a/src/DataIndex/Query/DataObjectQueryInterface.php +++ b/src/DataIndex/Query/DataObjectQueryInterface.php @@ -19,6 +19,7 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\FullTextSearch\FullTextSearch; @@ -51,6 +52,7 @@ public function classificationStoreFilter( MultiSelectFilter| NumberRangeFilter| NumberFilter| + TimeFilter| BooleanMultiSelectFilter| WildcardSearch $subModifier, ?string $locale diff --git a/src/DataIndex/Query/DocumentQuery.php b/src/DataIndex/Query/DocumentQuery.php index aaf5e27b1..b88de59eb 100644 --- a/src/DataIndex/Query/DocumentQuery.php +++ b/src/DataIndex/Query/DocumentQuery.php @@ -24,6 +24,7 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ParentIdFilter; @@ -209,6 +210,25 @@ public function filterDatetime( return $this; } + public function filterTime( + string $field, + string|null $startTime = null, + string|null $endTime = null, + string|null $onTime = null, + bool $enablePqlFieldNameResolution = true + ): QueryInterface + { + $this->search->addModifier(new TimeFilter( + $field, + $startTime, + $endTime, + $onTime, + $enablePqlFieldNameResolution + )); + + return $this; + } + public function filterNumber( string $fieldName, int|float $searchTerm, diff --git a/src/DataIndex/Query/QueryInterface.php b/src/DataIndex/Query/QueryInterface.php index 673a3297f..f93b9b390 100644 --- a/src/DataIndex/Query/QueryInterface.php +++ b/src/DataIndex/Query/QueryInterface.php @@ -70,6 +70,14 @@ public function filterDatetime( bool $enablePqlFieldNameResolution = true ): self; + public function filterTime( + string $field, + string|null $startTime = null, + string|null $endTime = null, + string|null $onTime = null, + bool $enablePqlFieldNameResolution = true + ): self; + public function filterNumber( string $fieldName, int|float $searchTerm, diff --git a/src/Grid/Column/ColumnType.php b/src/Grid/Column/ColumnType.php index 53340c569..c4a829b5b 100644 --- a/src/Grid/Column/ColumnType.php +++ b/src/Grid/Column/ColumnType.php @@ -20,6 +20,7 @@ enum ColumnType: string case SYSTEM_INTEGER = 'system.integer'; case SYSTEM_ID = 'system.id'; case SYSTEM_DATETIME = 'system.datetime'; + case SYSTEM_TIME = 'system.time'; case SYSTEM_DATE = 'system.date'; case SYSTEM_BOOLEAN = 'system.boolean'; case SYSTEM_TAG = 'system.tag'; @@ -44,6 +45,8 @@ enum ColumnType: string case CLASSIFICATION_STORE_RGBA = 'classificationstore.rgba'; case CLASSIFICATION_STORE_DATE = 'classificationstore.date'; case CLASSIFICATION_STORE_DATETIME = 'classificationstore.datetime'; + + case CLASSIFICATION_STORE_TIME = 'classificationstore.time'; case CLASSIFICATION_STORE_QUANTITY_VALUE = 'classificationstore.quantity_value'; case CLASSIFICATION_STORE_INPUT_QUANTITY_VALUE = 'classificationstore.input_quantity_value'; case CLASSIFICATION_STORE_QUANTITY_VALUE_RANGE = 'classificationstore.quantity_value_range'; From 3784c61fc5b59c8fd8103452ec8971aac631ae7a Mon Sep 17 00:00:00 2001 From: martineiber <11687066+martineiber@users.noreply.github.com> Date: Thu, 27 Nov 2025 10:57:54 +0000 Subject: [PATCH 2/2] Apply php-cs-fixer changes --- .../Filter/DataObject/Classificationstore/TimeFilter.php | 2 -- src/DataIndex/Filter/TimeFilter.php | 1 + src/DataIndex/Query/AssetQuery.php | 6 ++---- src/DataIndex/Query/DataObjectQuery.php | 5 ++--- src/DataIndex/Query/DataObjectQueryInterface.php | 2 +- src/DataIndex/Query/DocumentQuery.php | 5 ++--- src/Grid/Column/ColumnType.php | 1 - 7 files changed, 8 insertions(+), 14 deletions(-) diff --git a/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php b/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php index b252cead2..98c7becdb 100644 --- a/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php +++ b/src/DataIndex/Filter/DataObject/Classificationstore/TimeFilter.php @@ -13,11 +13,9 @@ namespace Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DataObject\Classificationstore; -use Carbon\Carbon; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter as GDITimeFilter; use Pimcore\Bundle\StudioBackendBundle\ClassificationStore\Repository\GroupConfigRepositoryInterface; use Pimcore\Bundle\StudioBackendBundle\ClassificationStore\Repository\KeyGroupRelationRepositoryInterface; -use Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\DateTimeTrait; use Pimcore\Bundle\StudioBackendBundle\DataIndex\Filter\FilterInterface; use Pimcore\Bundle\StudioBackendBundle\DataIndex\Query\DataObjectQueryInterface; use Pimcore\Bundle\StudioBackendBundle\DataIndex\Query\QueryInterface; diff --git a/src/DataIndex/Filter/TimeFilter.php b/src/DataIndex/Filter/TimeFilter.php index 44b345c6e..42d617099 100644 --- a/src/DataIndex/Filter/TimeFilter.php +++ b/src/DataIndex/Filter/TimeFilter.php @@ -19,6 +19,7 @@ use Pimcore\Bundle\StudioBackendBundle\Grid\Column\ColumnType; use Pimcore\Bundle\StudioBackendBundle\MappedParameter\Filter\ColumnFilter; use Pimcore\Bundle\StudioBackendBundle\MappedParameter\Filter\ColumnFiltersParameterInterface; +use function is_array; /** * @internal diff --git a/src/DataIndex/Query/AssetQuery.php b/src/DataIndex/Query/AssetQuery.php index c4352432f..730005502 100644 --- a/src/DataIndex/Query/AssetQuery.php +++ b/src/DataIndex/Query/AssetQuery.php @@ -24,9 +24,9 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; -use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ParentIdFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\PathFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\TagFilter; @@ -169,8 +169,7 @@ public function filterTime( string|null $endTime = null, string|null $onTime = null, bool $enablePqlFieldNameResolution = true - ): QueryInterface - { + ): QueryInterface { $this->search->addModifier(new TimeFilter( $field, $startTime, @@ -182,7 +181,6 @@ public function filterTime( return $this; } - /** * @param array $tags */ diff --git a/src/DataIndex/Query/DataObjectQuery.php b/src/DataIndex/Query/DataObjectQuery.php index 5e26452cb..f56e1ad97 100644 --- a/src/DataIndex/Query/DataObjectQuery.php +++ b/src/DataIndex/Query/DataObjectQuery.php @@ -26,9 +26,9 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\ClassificationStoreFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; -use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ClassIdsFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ParentIdFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\PathFilter; @@ -258,8 +258,7 @@ public function filterTime( string|null $endTime = null, string|null $onTime = null, bool $enablePqlFieldNameResolution = true - ): QueryInterface - { + ): QueryInterface { $this->search->addModifier(new TimeFilter( $field, $startTime, diff --git a/src/DataIndex/Query/DataObjectQueryInterface.php b/src/DataIndex/Query/DataObjectQueryInterface.php index 336e7d44e..05ceffe94 100644 --- a/src/DataIndex/Query/DataObjectQueryInterface.php +++ b/src/DataIndex/Query/DataObjectQueryInterface.php @@ -19,9 +19,9 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; -use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\FullTextSearch\FullTextSearch; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\FullTextSearch\WildcardSearch; diff --git a/src/DataIndex/Query/DocumentQuery.php b/src/DataIndex/Query/DocumentQuery.php index b88de59eb..ecc3e37f4 100644 --- a/src/DataIndex/Query/DocumentQuery.php +++ b/src/DataIndex/Query/DocumentQuery.php @@ -24,9 +24,9 @@ use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Basic\NumberFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\BooleanMultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\DateFilter; -use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\MultiSelectFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\NumberRangeFilter; +use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\FieldType\TimeFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\ParentIdFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\PathFilter; use Pimcore\Bundle\GenericDataIndexBundle\Model\Search\Modifier\Filter\Tree\TagFilter; @@ -216,8 +216,7 @@ public function filterTime( string|null $endTime = null, string|null $onTime = null, bool $enablePqlFieldNameResolution = true - ): QueryInterface - { + ): QueryInterface { $this->search->addModifier(new TimeFilter( $field, $startTime, diff --git a/src/Grid/Column/ColumnType.php b/src/Grid/Column/ColumnType.php index c4a829b5b..e60005faf 100644 --- a/src/Grid/Column/ColumnType.php +++ b/src/Grid/Column/ColumnType.php @@ -45,7 +45,6 @@ enum ColumnType: string case CLASSIFICATION_STORE_RGBA = 'classificationstore.rgba'; case CLASSIFICATION_STORE_DATE = 'classificationstore.date'; case CLASSIFICATION_STORE_DATETIME = 'classificationstore.datetime'; - case CLASSIFICATION_STORE_TIME = 'classificationstore.time'; case CLASSIFICATION_STORE_QUANTITY_VALUE = 'classificationstore.quantity_value'; case CLASSIFICATION_STORE_INPUT_QUANTITY_VALUE = 'classificationstore.input_quantity_value';