Поиск

Для работы с функционалом поиска, предусмотрено следующее соглашение.

- Методы поиска работают через POST

Приложение поиска по определенной таблице позволяет:
  • Производить поиск с использованием различных типов
  • Сортировать данные на стороне сервера
  • Устанавливать лимит данных и смещение
Для начала поиска, необходимо передать обьект, свойства которых соответсвуют типу производимого действия.

Типы действий

Условия

Если вы хотите произвести поиск по таблице, вам необходимо передать свойство where.

Если вы хотите самостоятельно создать список условий, по которым требуется поиск, where должен быть у вас массивом объектов.

У объекта должны обязательно быть следующие свойства:
type - тип условия, от данного типа зависит формат поля value. В нашей системе предусмотрены следующие типы:

Тип Описание
BETWEEN Находится в интервале, в value должен быть передан массив, где 0 элемент начало, и 1 соотвественно конец.
LIKE Содержит в себе строку value
IN Находится в списке условий. Value должен быть массивом
STRICT Имеет строгое соотвествие. value должен быть строкой
LARGER Больше чем value. Value - число
LESS Меньше чем value. Value - число
Все поля переданные во where будут обязательными в поиске, функционал установки возможности разбиения условий по группам будет доступен позже.

Сортировка

Для сортировки необходимо передать свойство order. Которое содержит в себе свойства:
by - по какому полю отсортировать данные
on - сортировка по возрастающему значению или убыващему (ASC, DESC)

Ограничение колличества и смещение

Для ограничения колличества принимаемых данных и смещения по ним, необходимо передать свойства: start - начало данных, по умолчанию 0 limit - колличество данных, по умолчанию 20

Пример запроса

{"where": [{"column": "title", "value": "title1", "type": "LIKE"}, {"column": "price", "value": [1, 10], type: "BETWEEN"}, {"column": "type", "value": [5,10,12,1,2,3,4], "type": "IN"}], "order": {"by": "id", "on": "desc"}, "start": 0, "limit": 40}