Плагин ФИАС

Плагин предназначен для интеграции адресного справочника с ФИАС (государственный адресный реестр).

Механизм работы

Плагин обеспечивает получение и хранение идентификатора ФИАС для следующих сущностей адресного справочника:

  • Город

  • Улица

  • Дом

Данные обновляются при изменении сущностей при условии, что не заполнен идентификатор ФИАС или изменено наименование адреса. Для этого имеется подписка на события добавления или изменения параметра адреса в адресном справочнике (AddressAddedEvent и AddressChangingEvent соответственно). События обрабатываются слушателем FiasAddressListener. При получении события слушатель добавляет его в очередь erp.fias, если включен параметр mqEnabled в конфигурации плагина. Иначе, событие обрабатывается в тот же момент без добавления в очередь.

Обработка события подразумевает получение информации по адресам и ее сохранение.

Информация может быть получена в одном из двух источников: DaData и ФИАС (ГАР). Источник настраивается в параметре dataSource конфигурации.

Сохранение информации по адресам может быть выполнено в параметр адресного справочника (в дальнейшем планируется добавить стратегии сохранения в бд и файл). Хранилище настраивается в параметре saveDestination конфигурации.

Конфигурация плагина ФИАС

Настройка плагина происходит в основном конфиге (ID = 6)

#Плагин ФИАС

plugin.fias.enabled=<boolean>
plugin.fias.dataSource=<string>
plugin.fias.saveDestination=<string>
plugin.fias.mqEnabled=<boolean>
plugin.fias.checkEnabled=<boolean>
plugin.fias.city.updateStreets=<boolean>
plugin.fias.street.updateHouses=<boolean>
plugin.fias.parameter.address.type.city=<int>
plugin.fias.parameter.address.type.street=<int>
plugin.fias.parameter.address.type.house=<int>
plugin.fias.parameter.blob.address.type.city=<int>
plugin.fias.parameter.blob.address.type.street=<int>
plugin.fias.parameter.blob.address.type.house=<int>
plugin.fias.parameter.comment.address.type.city=<int>
plugin.fias.parameter.comment.address.type.street=<int>
plugin.fias.parameter.comment.address.type.house=<int>
  • enabled - включение плагина

  • dataSource - источник получения данных (fias, gar)

  • saveDestination - путь сохранения (parameter, (db, file))

  • mqEnabled - включение очереди событий

  • checkEnabled - включение проверки на необходимость обновления данных ФИАС

  • plugin.fias.city.updateStreets - включения автообновления улиц при обновлении города

  • plugin.fias.street.updateHouses - - включения автообновления домов при обновлении улицы

Параметры адресного справочника:

  • parameter.address.type.city - идентификатор параметра 'fiasId' города

  • parameter.address.type.street - идентификатор параметра 'fiasId' улицы

  • parameter.address.type.house - идентификатор параметра 'fiasId' дома

  • parameter.blob.address.type.city - идентификатор параметра 'fiasInfo' города

  • parameter.blob.address.type.street - идентификатор параметра 'fiasInfo' улицы

  • parameter.blob.address.type.house - идентификатор параметра 'fiasInfo' дома

  • plugin.fias.parameter.comment.address.type.city - идентификатор параметра 'fias-комментарий' города

  • plugin.fias.parameter.comment.address.type.street - идентификатор параметра 'fias-комментарий' улицы

  • plugin.fias.parameter.comment.address.type.house - идентификатор параметра 'fias-комментарий' дома

Настройка Listener

createOnStart+=,ru.bgcrm.plugin.fias.listener.FiasAddressListener