Содержание
Как подключить подсказки
Самое утомительное поле при вводе паспорта — «Кем выдан». Писать какое-нибудь «Отделом внутренних дел Медведевского района республики Марий Эл» муторно. Поэтому мы сделали подсказки по полю «Паспорт выдан…».
- Зарегистрируйтесь и получите API-ключ
- Вставьте код из примера на свой сайт.
- Profit!
<input id=»fms_unit» type=»text»> <script src=»https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js»></script> <link href=»https://cdn.jsdelivr.net/npm/suggestions-jquery@20.3.0/dist/css/suggestions.min.css» rel=»stylesheet»> <script src=»https://cdn.jsdelivr.net/npm/suggestions-jquery@20.3.0/dist/js/jquery.suggestions.min.js»></script> <script> $(«#fms_unit»).suggestions({ token: «${API_KEY}», type: «fms_unit» }); </script>
Демонстрация
Выберите вариант из списка, чтобы увидеть полный текст ответа в JSON:
Также работает через API
Примеры использования:
- Код подразделения + наименование
- Только наименование
Что в ответе
Название | Описание |
---|---|
value | Значение одной строкой (как показывается в списке подсказок) |
unrestricted_value | = value |
data.code | Код подразделения |
data.name | Название подразделения в творительном падеже («кем выдан?») |
data.region_code | Код региона (2 цифры) |
data.type | Вид подразделения (1 цифра) 0 — подразделение ФМС 1 — ГУВД или МВД региона 2 — УВД или ОВД района или города 3 — отделение полиции |
Источник данных: открытый справочник «Кем выдан паспорт» (подробности на «Хабре»).
Сообщить об ошибке
Стоимость
Бесплатно до 10 тысяч запросов в день. Больше — в составе годовой подписки.
Подразделение, выдавшее документ — самый длинный реквизит паспорта. И в электронных, и в бумажных формах он отнимает больше всего времени. Особенно не везет операционистам, которые каждый день вводят данные десятков людей.
Просто представьте, что кто-то каждый раз пишет: «470-105, МРО № 1 УФМС РОССИИ ПО САНКТ-ПЕТЕРБУРГУ И ЛЕНИНГРАДСКОЙ ОБЛ. (С МЕСТОМ ДИСЛОКАЦИИ В Г. КИНГИСЕПП) (ОБСЛУЖИВАЕТ Г. ИВАНГОРОД И КИНГИСЕППСКИЙ РАЙОН ЛЕНИНГРАДСКОЙ ОБЛ.)».
Если ускорить ввод поля «Паспорт выдан», операционисты будут успевать больше. Простые же пользователи перестанут ошибаться.
И вот оно — свершилось! Мы сделали «Подсказки» по подразделениям, выдающим паспорт. Пользуйтесь на здоровье.
Можно просто узнать подразделение УФМС по коду. А можно набрать любое слово из названия, и «Дадата» подскажет все остальное
Подробности о подключении — в инструкции на DaData.ru. А ниже я расскажу, как мы искали справочник подразделений, где в конце концов его нашли и что собой представляют новые «Подсказки».
Главная проблема — найти справочник подразделений, выдающих паспорт
Нас примерно два года спрашивали о «Подсказках» по полю «Паспорт выдан». Причем этот реквизит одинаково ненавидят и простые пользователи, и заказчики из крупного бизнеса: банки, мобильные операторы, страховые.
Мы бы и рады были помочь, но решение до поры найти не могли. Да, движку «Подсказок» можно скормить любой справочник, но непонятно, где взять нормальные данные по подразделениям УФМС.
В интернете на каждом шагу лежит одна совершенно «серая» база. Мы ее проверили и сразу отмели по причине крайней убогости:
- источник непонятен, а доверять просто неким данным из Сети — себе дороже;
- покрытие справочника — низкое. Поискали подразделения из своих паспортов — условно шесть из десяти отсутствуют.
Названия в общедоступном «сером» справочнике написаны в именительном падеже. В формах же просят родительный
Конечно, искали официальную базу, прямо из госорганов. Но не нашли и следов. Разные эксперты в разное время уверяли, что официальный справочник:
- есть, но это гостайна;
- отсутствует в природе;
- таки есть да не про нашу честь.
На этом проект и стопорился.
Собрали справочник краудсорсингом
Наконец, давление достигло степени, когда уже ну ооочень хочется решить задачу. Даже если не особо понимаешь, как подступиться.
И мы подумали: если проблема беспокоит всех, почему бы не справиться с ней общими усилиями. Во всяком случае, попробовать. А если ничего не выйдет, мы просто останемся без справочника, которого и так не было.
Естественно, когда собираешь что-то всем миром, результатом нужно делиться со всем миром тоже. Поэтому мы сразу решили, что откроем собранные данные.
А где в Рунете самое большое сообщество энтузиастов, уважающих открытые данные и легких на подъем? Конечно же, на «Хабре». Поэтому начали мы с того, что написали там статью-манифест. Объяснили ситуацию и призвали скидываться.
Мы создали форму, через которую кто угодно мог прислать данные о подразделении в своем паспорте
Затея стартовала на «Хабре» как-то неожиданно бодро. Сначала нам присылали коды и названия подразделений УФМС через форму. Кто-то по одному, некоторые — пачками. Спасибо всем, кто не поленился все это вводить!
А потом заработала тяжелая артиллерия. В личку начали писать люди, которые совершенно бесплатно и по-доброму предлагали базы на десятки тысяч строк.
На вопрос «Откуда дровишки» благодетель поведал, что это часть базы почившего банка. Важная оговорка: данные присылали строго обезличенные
Но нельзя сказать, что мы сразу получили готовые и структурированные данные. Люди прислали коды и названия в очень разных форматах и с разным качеством. Но главной цели мы достигли — получили основу, мясо. С этим можно работать.
Почистили данные, которые нам прислали
Итак, нам предстояло почистить все, что собрали: сотни тысяч строк с подразделениями УФМС Росии, а также прочими отделами МВД. И мы почистили — горькими словами, регулярными выражениями и «Питоном».
Привели к одному формату названия. В названиях встретили особенно много разночтений. Только один пример — символ «№». Где-то его ставили, а где-то — нет.
В одной записи — «ТП № 1 В Г. ХИМКИ…», в другой — «МРО 4 УФМС РОССИИ ПО АЛТАЙСКОМУ КРАЮ».
Мы выяснили, что в «живых» паспортах значок но́мера пишут, и добавили его везде. И таких тонкостей с мелочами — тонны, не буду утомлять.
Убрали годы выдачи. Изначально мы собирали год выдачи паспорта, это видно на картинке с формой. Потому что знали: с годами подразделения порой меняют название, сохраняя код.
Но оказалось, что в самых крупных из присланных баз годов нет — только название и номер подразделения. Пришлось решать:
- сократить итоговый справочник до подразделений, для которых есть год. Это сильно ударило бы по полноте;
- вычистить годы и выводить в подсказках коды и названия подразделений.
Пошли по второму пути, чтобы получить справочник побогаче.
В итоге «Подсказки» порой показывают несколько вариантов для одного кода — просто потому, что в разные годы подразделение называлось по-разному.
Несколько названий по одному коду — не беда. Пользователю всего-то нужно выбрать из нескольких подсказок вариант, указанный в паспорте
Сгенерировали справочник для паспортов 2018+. В прошлом году поле «Паспорт выдан» испытало настоящую революцию. Рядом с кодом подразделения, выдавшего паспорт, теперь пишут название главного управления МВД по региону.
Код 120-001 | Код 120-002 | |
---|---|---|
Было | ОТДЕЛОМ УФМС РОССИИ ПО РЕСП. МАРИЙ ЭЛ В Г. ЙОШКАР-ОЛЕ | ОТДЕЛОМ УФМС РОССИИ ПО РЕСП. МАРИЙ ЭЛ В Г. ВОЛЖСКЕ |
Стало | МВД ПО РЕСПУБЛИКЕ МАРИЙ ЭЛ | МВД ПО РЕСПУБЛИКЕ МАРИЙ ЭЛ |
Нужные записи мы получили очень легко — нагенерили. Просто добавили для каждого собранного кода еще один вариант названия — с главным управлением МВД по региону.
- Понять, в каком регионе находится подразделение, проще простого — смотрим на первые две цифры кода.
- Названия главных управлений МВД в регионах нам по большей части прислали. Некоторые добавили вручную — благо субъектов не так уж много.
Сократили типы подразделений до аббревиатур. Одни и те же подразделения в паспортах пишут по-разному: где-то с аббревиатурами, а где-то — без.
Паспорт выдан одним и тем же подразделением № 772-076:
- ОТДЕЛОМ ВНУТРЕННИХ ДЕЛ ЧЕРЕМУШКИ УПРАВЛЕНИЯ ВНУТРЕННИХ ДЕЛ ЮЗАО ГОР. МОСКВЫ;
- ОВД ЧЕРЕМУШКИ УВД ЮЗАО Г. МОСКВЫ.
Мы волевым решением схлопнули все типы подразделений в аббревиатуры.
«Отделом внутренних дел» — до ОВД, «Управления внутренних дел» — до УВД, «ОТДЕЛА ПАСПОРТНО-ВИЗОВОЙ СЛУЖБЫ» — до «ОПВС».
Да, может случиться, что пользователь не найдет своего «длинного» варианта в подсказках. Но едва ли «ОВД» вместо полного названия вызовет проблемы. В крайнем случае можно руками поправить то, что подсказали «Подсказки».
«Повысили» регистры. Технически сделать все буквы заглавными — элементарно.
Главное — решить, пойти по простому пути и «поднимать» буквы или, наоборот, привести к более человеческому виду — с заглавной в начале строки и в аббревиатурах.
Не скажу, что долго колебались — в приключения с разными регистрами можно было ввязаться, будь в этом толк. Но практического смысла нет, поэтому в нашем справочнике все буквы в названиях — заглавные.
В паспортах все без исключения буквы — заглавные. Мы не стали выпендриваться и сделали так же
Объединили всё в один справочник. Полученный после всех приключений результат мы от души отполировали.
В некоторых записях название региона присылали как аббревиатуру. Мы это поправили: вместо РА стало «Республика Алтай» и т. д. Это важно, потому что c полным форматом проще выбрать нужную подсказку.
После этого шага мы получили готовый справочник кодов и названий подразделений УФМС. Его можно было заряжать в «Подсказки».
Как применяют «Подсказки» по подразделениям
Мы раздаем новые «Подсказки» в двух форматах:
- «голый» справочник подразделений УФМС. Можно брать и делать что душе угодно — например, пилить свои подсказки, с перламутровыми пуговицами;
- готовые подсказки «Дадаты». Легко встроить и в онлайне, и на десктопе. До ≈300 заполненных форм в день — бесплатно, остальное — от 5 000 ₽ в год. Есть «коробочная» версия для крупного бизнеса с суровыми безопасниками.
Готовые «Подсказки» отдают чуть больше, чем просто код и название подразделения. Вот что они возвращают.
Параметр | Описание |
---|---|
value | Значение одной строкой (как в списке подсказок) |
data.code | Код подразделения |
data.name | Название подразделения в творительном падеже («кем выдан?») |
data.region_code | Код региона |
data.type |
|
Инструкция по внедрению «Подсказок» — на отдельной странице. А если привыкли работать с HFLabs, напишите своему специалисту по сопровождению.
Справочник кодов УФМС России
Все коды подразделений УФМС России:
РЕСПУБЛИКИ
• Адыгея
• Алтай
• Башкортостан
• Бурятия
• Дагестан
• Ингушетия
• Кабардино-Балканская
• Калмыкия
• Карачаево-Черкесская
• Карелия
• Коми
• Крым
• Марий Эл
• Мордовия
• Саха (Якутия)
• Северная Осетия-Алания
• Татарстан
• Тыва
• Удмуртия
• Хакасия
• Чеченская
• Чувашская
ОБЛАСТИ
• Амурская
• Архангельская
• Астраханская
• Белгородская
• Брянская
• Владимирская
• Волгоградская
• Вологодская
• Воронежская
• Ивановская
• Иркутская
• Калининградская
• Калужская
• Кемеровская
• Кировская
• Костромская
• Курганская
• Курская
• Ленинградская
• Липецкая
• Магаданская
• Москва
• Московская область
• Мурманская
• Нижегородская
• Новгородская
• Новосибирская
• Омская
• Оренбургская
• Орловская
• Пензенская
• Псковская
• Ростовская
• Рязанская
• Самарская
• Саратовская
• Сахалинская
• Свердловская
• Смоленская
• Тамбовская
• Тверская
• Томская
• Тульская
• Тюменская
• Ульяновская
• Челябинская
• Ярославская
КРАЯ
• Алтайский
• Забайкальский
• Камчатский
• Краснодарский
• Красноярский
• Пермский
• Приморский
• Ставропольский
• Хабаровский
АВТОНОМНЫЕ ОБЛАСТИ
• Еврейская
АВТОНОМНЫЕ ОКРУГА
• Агинский Бурятский
• Коми-Пермяцкий
• Корякский
• Таймырский (Долгано-Ненецкий)
• Усть-Ордынский Бурятский
• Ханты-Мансийский (ХМАО)
• Чукотский
• Ямало-Ненецкомий
• Коды подразделения ФМС 900 — 901
• Тема на форуме
• Серии бланков паспортов гражданина Российской Федерации
• ПЕРЕЧЕНЬ номеров гербовых мастичных печатей и кодов подразделений ПВС органов внутренних дел
Немного истории
• Паспортно-визовая служба: как все начиналось
• Преобразование паспортной системы в эпоху Петра I
• Паспортная система до и после отмены крепостного права
• Формирование и развитие паспортной системы в России в начале XX века
• Развитие паспортной системы в условиях укрепления административно-командной системы в СССР и в период перестройки в России