Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Поиск по индексу #4

Open
vzhilov opened this issue Sep 29, 2013 · 12 comments
Open

Поиск по индексу #4

vzhilov opened this issue Sep 29, 2013 · 12 comments

Comments

@vzhilov
Copy link

vzhilov commented Sep 29, 2013

Скажите, насколько было бы сложно сделать поиск по индексу? Для завершения элемента формы адресов на сайте очень нужно. Я видел, что у Вас стоит это в планах. Будет ли сколько-то стоить это ускорить?)

@garakh
Copy link
Owner

garakh commented Sep 30, 2013

Технически сделать «в лоб» несложно, но проблема в том, что не у всех объектов есть индексы, поэтому сперва нам надо корректно обработать базу и собрать индексы (например, у улице может не быть индекса, в этом случае нам надо собрать все индексы домов этой улицы и сформировать массив индексов данной улицы).

Не могли бы Вы более подробно описать Ваш кейс — «Для завершения элемента формы адресов на сайте очень нужно.». Т.е. индекс планируете вводить после ввода улицы и тп или сперва индекс и ограничить выбора остальных объектов?

@vzhilov
Copy link
Author

vzhilov commented Sep 30, 2013

Наша база используется для сбора адресов, чтобы в дальнейшем делать почтовые рассылки (газету по списку подписчиков, рекламные материалы и т.д.). Я пытаюсь сделать ввод адресов максимально удобным. Иногда известен адрес, но индекс не известен и его приходится искать. Как это реализовать с помощью вашего сервиса, я примерно представляю и, вероятно, смогу реализовать. Но когда известен весь адрес, хочется ускорить ввод, типа набрал индекс, а город и улица сами подставились, чтобы не вбивать. Если на один индекс может быть две улицы, я бы смог в своем Select2 выдавать возможные варианты улиц, и таким же образом я смогу сделать выбор по номерам домов и т.д. Но все это возможно только если можно искать объекты по индексу, так же как у Вас это реализовано по улицам, городам и т.д. Т.е. в Вашем вопросе - это последний вариант - когда индекс введен и нужно ограничить выбор остальных объектов.

@garakh
Copy link
Owner

garakh commented Sep 30, 2013

Проблема в том, что люди могут использовать неверные индексы. Например, в г. Архангельск индекс 163000 привязан к главпочтамту. Недалеко от него есть улица Володарского, которые дома которой официально привязаны к индексу 163061. Но почта все равно приходит на главпочтамт, поэтому многие указывают просто 163000.

Так вот, когда такой человек увидит Вашу форму, он по привычке введет 163000, а по этому индексу своего адреса он не найдет.

Более того, многие жители не парятся индексами и указывают всегда 163000, чтоб получить свою посылку на главпочтамте (либо главпочтамт перешлет посылку в районный почтамт по текущему адресу). Конечно почта идет дольше, но далеко не все знают зачем надо указывать верный индекс.

@garakh
Copy link
Owner

garakh commented Sep 30, 2013

Собственно именно по этим причинам мы еще не начали делать поиск по индексу.

@vzhilov
Copy link
Author

vzhilov commented Sep 30, 2013

Да, это, конечно, трудный вопрос. Но может быть тогда можно сделать хотя бы определение не до улицы, а до города. Такая функция была бы полезна, чтобы можно было по индексу определять регион и хотя бы город. Уже меньше вбивать. Да и затем можно делать выборки регионов и городов по индексам, если нужно сделать рассылку только по подписчикам конкретных городов, например.

@garakh
Copy link
Owner

garakh commented Sep 30, 2013

Постараемся на днях реализовать поиск города и региона по индексу

@KODerFunk
Copy link

Как дела по этому вопросу? У меня тоже есть потребность поиска по индексу.

@garakh
Copy link
Owner

garakh commented Nov 21, 2013

в процессе

@andrewtri
Copy link

Часто люди пишут ТОЛЬКО индекс вместо населенного пункта. Поэтому добавлю свой голос для веса необходимости функционала поиска населенного пункта по почтовому индексу. Мне кажется, осуществлять поиск до улицы - опция, которая не всегда может отработать.

@plexnum
Copy link

plexnum commented Apr 16, 2014

Очень нужен поиск по индексу.

@garakh
Copy link
Owner

garakh commented Apr 28, 2014

Сделали. Пока в документации не описано.
Например, работает так:
http://kladr-api.ru/api.php?query=&zip=163000&contentType=building&withParent=1&limit=2&token=51dfe5d42fb2b43e3300006e&key=86a2c2a06f1b2451a87d05512cc2c3edfdf41969

работает по точному совпадению, только с building (т.к. все индексы есть только у них).
Т.е. указываем индекс — получаем номера домов.
Если надо получить сведения о городе и тп, то указываем withParent=1 и limit=1 и смотреть массив parents

@vzhilov
Copy link
Author

vzhilov commented Jul 14, 2016

Прекрасно работает, спасибо!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants