Commit dd21837e authored by Nikita Chernykh's avatar Nikita Chernykh
Browse files

Escape dependence

parent 28ed37eb
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -16,9 +16,8 @@
    "php"
  ],
  "require": {
    "php": ">=7.4",
    "php": ">=8.1",
    "ramsey/collection": "^1.2",
    "iqdev/search-dc": "1.2.*",
    "elasticsearch/elasticsearch": "^8.5",
    "vlucas/phpdotenv": "^5.4.1"
  },
@@ -32,15 +31,8 @@
      "IQDEV\\ElasticSearchTests\\": "tests/"
    }
  },
  "repositories": [
    {
      "type": "vcs",
      "url": "ssh://git@gitlab.iqdev.digital:8422/piligrimov/search-dc.git"
    }
  ],
  "require-dev": {
    "phpunit/phpunit": "^9.5",
    "symfony/var-dumper": "^5.4"
    "phpunit/phpunit": "^9.5"
  },
  "scripts": {
    "tests": "php ./vendor/bin/phpunit --testdox --verbose"
+16 −26
Original line number Diff line number Diff line
@@ -4,8 +4,6 @@ namespace IQDEV\ElasticSearch\Converter;

use IQDEV\ElasticSearch\Filter\PostFilterCollection;
use IQDEV\ElasticSearch\Filter\QueryFilterCollection;
use IQDEV\ElasticSearch\Order\OrderAscType;
use IQDEV\ElasticSearch\Order\OrderDescType;
use IQDEV\ElasticSearch\Order\OrderField;
use IQDEV\ElasticSearch\Order\OrderKeywordProperty;
use IQDEV\ElasticSearch\Order\OrderNumberProperty;
@@ -19,20 +17,18 @@ use IQDEV\ElasticSearch\Search\BoolQuery\Terms;
use IQDEV\ElasticSearch\Search\Nested;
use IQDEV\ElasticSearch\Search\Pagination;
use IQDEV\ElasticSearch\Search\Request;
use IQDEV\Search\Criteria;
use IQDEV\Search\Document\Property\AttrType;
use IQDEV\Search\Document\Property\PropertyType;
use IQDEV\Search\FIlter\Filter;
use IQDEV\Search\Filter\FilterCollection;
use IQDEV\Search\Filter\FilterGroupCollection;
use IQDEV\Search\Filter\FilterKeyword;
use IQDEV\Search\Filter\FilterNumber;
use IQDEV\Search\Filter\FilterOperator;
use IQDEV\Search\Filter\FilterType;
use IQDEV\Search\Filter\LogicOperator;
use IQDEV\Search\Order\Order;
use IQDEV\Search\Order\OrderAscType as SOrderAscType;
use IQDEV\Search\Order\OrderDescType as SOrderDescType;
use IQDEV\ElasticSearch\Criteria;
use IQDEV\ElasticSearch\Document\Property\AttrType;
use IQDEV\ElasticSearch\Document\Property\PropertyType;
use IQDEV\ElasticSearch\Filter\Filter;
use IQDEV\ElasticSearch\Filter\FilterCollection;
use IQDEV\ElasticSearch\Filter\FilterGroupCollection;
use IQDEV\ElasticSearch\Filter\FilterKeyword;
use IQDEV\ElasticSearch\Filter\FilterNumber;
use IQDEV\ElasticSearch\Filter\FilterOperator;
use IQDEV\ElasticSearch\Filter\FilterType;
use IQDEV\ElasticSearch\Filter\LogicOperator;
use IQDEV\ElasticSearch\Order\Order;

final class CriteriaToEsRequest
{
@@ -66,22 +62,16 @@ final class CriteriaToEsRequest

        foreach ($criteria->sorting() as $order) {
            /** @var Order $order */
            $direction = null;
            if ($order->orderType() instanceof SOrderAscType) {
                $direction = new OrderAscType();
            }

            if ($order->orderType() instanceof SOrderDescType) {
                $direction = new OrderDescType();
            }
            $direction = $order->orderType();

            if ($order->orderBy() instanceof AttrType) {
                $request->getSort()->add(new OrderField($order->orderBy()->key(), $direction));
                $request->getSort()->add(new OrderField($order->orderBy(), $direction));
            } elseif ($order->orderBy() instanceof PropertyType) {
                if ($order->orderBy()->type() === PropertyType::TYPE_KEYWORD) {
                    $request->getSort()->add(new OrderKeywordProperty($order->orderBy()->key(), $direction));
                    $request->getSort()->add(new OrderKeywordProperty($order->orderBy(), $direction));
                } elseif ($order->orderBy()->type() === PropertyType::TYPE_NUMBER) {
                    $request->getSort()->add(new OrderNumberProperty($order->orderBy()->key(), $direction));
                    $request->getSort()->add(new OrderNumberProperty($order->orderBy(), $direction));
                }
            }
        }
+8 −8
Original line number Diff line number Diff line
@@ -3,14 +3,14 @@
namespace IQDEV\ElasticSearch\Converter;

use Elastic\Elasticsearch\Response\Elasticsearch;
use IQDEV\Search\Document\Product;
use IQDEV\Search\Facet\Facet;
use IQDEV\Search\Facet\Item\FacetItemList;
use IQDEV\Search\Facet\Item\FacetItemRange;
use IQDEV\Search\Facet\Item\FacetItemRangeDTO;
use IQDEV\Search\Facet\Type\FacetListType;
use IQDEV\Search\Facet\Type\FacetRangeType;
use IQDEV\Search\Result;
use IQDEV\ElasticSearch\Document\Product;
use IQDEV\ElasticSearch\Facet\Facet;
use IQDEV\ElasticSearch\Facet\Item\FacetItemList;
use IQDEV\ElasticSearch\Facet\Item\FacetItemRange;
use IQDEV\ElasticSearch\Facet\Item\FacetItemRangeDTO;
use IQDEV\ElasticSearch\Facet\Type\FacetListType;
use IQDEV\ElasticSearch\Facet\Type\FacetRangeType;
use IQDEV\ElasticSearch\Result;

final class EsResponseToResult
{
+35 −0
Original line number Diff line number Diff line
<?php

namespace IQDEV\ElasticSearch;

use IQDEV\ElasticSearch\Filter\FilterCollection;
use IQDEV\ElasticSearch\Order\OrderCollection;

final class Criteria
{
    private FilterCollection $filters;
    private OrderCollection $sorting;
    private Pagination $pagination;

    public function __construct()
    {
        $this->filters = new FilterCollection();
        $this->sorting = new OrderCollection();
        $this->pagination = new Pagination();
    }

    public function filters(): FilterCollection
    {
        return $this->filters;
    }

    public function sorting(): OrderCollection
    {
        return $this->sorting;
    }

    public function pagination(): Pagination
    {
        return $this->pagination;
    }
}
+21 −0
Original line number Diff line number Diff line
<?php

namespace IQDEV\ElasticSearch\Document;

final class Product
{
    public string $id;
    public string $title;
    public array $info;

    public function __construct(
        string $id,
        string $title,
        array  $info = []
    )
    {
        $this->id = $id;
        $this->title = $title;
        $this->info = $info;
    }
}
Loading