Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Мы подготовили набор отраслевых справочников, которые можно подключить и использовать:

  • кем выдан паспорт,
  • почтовые отделения,
  • налоговые инспекции,
  • мировые суды,
  • марки автомобилей,
  • страны,
  • валюты,
  • ОКВЭД,
  • ОКПД.

Если хотите подключить собственный справочник — читайте дальше, как это сделать.

Оглавление

Подготовить справочник

Справочник — это обычный CSV-файл:

...

По умолчанию значения полей подсказки трактуют как строки, даже если по факту это числа или даты.

Пример справочника
hidnamesurnamepatronymicfullnameemailphoneinnsalarypositiondepartment
1001ВолковаТатьянаАнатольевнаВолковаТатьянаАнатольевнаvolkova.tatyana@evercorp.ru+7 926 387-34-2356010462543250000Менеджер по закупкамОтдел закупок
1002БарчукВалерийНиколаевич

Барчук Валерий Николаевич

barchuk.valeriy@evercorp.ru+7 495 234-13-9849087541349045000Менеджер по продажамОтдел корпоративных продаж
1003ЖуковаКристинаОлеговна271307275938ceo@evercorp.ru
27130727593890000Директор
...

Настроить конфигурацию

Конфигурация — это YAML-файл в кодировке UTF-8, который описывает, как подсказки работают со справочниками. Проще всего объяснить его на примере:

...

По умолчанию для boost и geolocate полей устанавливается тип float, для всех остальных полей – stringДля boost-полей тип может быть только float или int, а для geolocate-полей тип может быть только float.

Скопировать на сервер

Конфигурацию:

  1. Сохранить конфигурацию в файл {name}.yaml, где {name} — название справочника, как указано в самом первом параметре конфигурации.
    Для нашего примера это employees.yaml
  2. Создать на сервере каталог /SGT_ROOT/configuration/outward/ и скопировать в него файл конфигурации.
    Для нашего примера итоговый путь к файлу будет /data/configuration/outward/employees.yaml

...

Чтобы подсказки увидели, справочник, перезапустите их либо используйте API.

Проверить на демо-странице

Работу подсказок можно проверить на демо-странице по адресу http://СЕРВЕР:ПОРТ/suggestions/outward

В поле «Тип» укажите название справочника, после этого подсказки заработают:

Использовать через API

Поиск по справочнику

Аналогично «родным» справочникам:

Без форматирования
POST /suggestions/api/4_1/rs/suggest/employees HTTP/1.1
Host: suggestions.evercorp.ru
Content-Type: application/json

{
  "query": "Василий"
}
Фильтрация

Поддерживается стандартный параметр count и фильтрация (если настроена фильтрация, параметр filter в конфигурации справочника):

Без форматирования
POST /suggestions/api/4_1/rs/suggest/employees HTTP/1.1
Host: suggestions.evercorp.ru
Content-Type: application/json

{
  "query": "Василий",
  "filters": [{"department": "Маркетинг"}, {"department": "ИТ"}]
  "count": 5
}
Поиск по идентификатору

Работает, если настроен параметр ids в конфигурации справочника:

Без форматирования
POST /suggestions/api/4_1/rs/findById/employees HTTP/1.1
Host: suggestions.evercorp.ru
Content-Type: application/json

{
  "query": "1024"
}
Поиск ближайшего объекта

Работает в версиях 19.11+, если настроен параметр geolocate в конфигурации справочника. Работает аналогично геолокации для адресов – возвращает ближайшие объекты по заданным координатам:

...

ПараметрОбязательный?Описание
lat
даГеографическая широта
lon
даГеографическая долгота
count
нет
Включить страницу
_count_server
_count_server
radius_meters
нетРадиус поиска в метрах (по умолчанию – 100, максимум – 10000)

Подключить через jQuery-плагин

В плагине всё как обычно, только в поле type указывается название справочника:

...