История страницы
...
Мы подготовили набор отраслевых справочников, которые можно подключить и использовать:
- кем выдан паспорт,
- почтовые отделения,
- налоговые инспекции,
- мировые суды,
- марки автомобилей,
- страны,
- валюты,
- ОКВЭД,
- ОКПД.
Если хотите подключить собственный справочник — читайте дальше, как это сделать.
Оглавление |
---|
Подготовить справочник
Справочник — это обычный CSV-файл:
...
По умолчанию значения полей подсказки трактуют как строки, даже если по факту это числа или даты.
Пример справочника
hid | name | surname | patronymic | fullname | phone | inn | salary | position | department | |
---|---|---|---|---|---|---|---|---|---|---|
1001 | Волкова | Татьяна | Анатольевна | ВолковаТатьянаАнатольевна | volkova.tatyana@evercorp.ru | +7 926 387-34-23 | 560104625432 | 50000 | Менеджер по закупкам | Отдел закупок |
1002 | Барчук | Валерий | Николаевич | Барчук Валерий Николаевич | barchuk.valeriy@evercorp.ru | +7 495 234-13-98 | 490875413490 | 45000 | Менеджер по продажам | Отдел корпоративных продаж |
1003 | Жукова | Кристина | Олеговна | 271307275938 | ceo@evercorp.ru | 271307275938 | 90000 | Директор | ||
... |
Настроить конфигурацию
Конфигурация — это YAML-файл в кодировке UTF-8, который описывает, как подсказки работают со справочниками. Проще всего объяснить его на примере:
...
По умолчанию для boost и geolocate полей устанавливается тип float, для всех остальных полей – string. Для boost-полей тип может быть только float или int, а для geolocate-полей тип может быть только float.
Скопировать на сервер
Конфигурацию:
- Сохранить конфигурацию в файл
{name}.yaml
, где{name}
— название справочника, как указано в самом первом параметре конфигурации.
Для нашего примера этоemployees.yaml
- Создать на сервере каталог
/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 | нет |
| ||||||
radius_meters | нет | Радиус поиска в метрах (по умолчанию – 100, максимум – 10000) |
Подключить через jQuery-плагин
В плагине всё как обычно, только в поле type
указывается название справочника:
...