FIAS::SQL - Модуль для минимальной работы с данными из базы ФИАC https://fias.nalog.ru/FiasInfo.aspx
version 0.04
# Создание объекта, подключение к базе my $fias = FIAS::SQL->new( db_connection => { dsn => 'DBI:mysql:database=fias;host=localhost;port=3306';', login => 'user', password => 'pass', }, # Опциональные параметры additional_connection_params => { # выставляем флаг UTF-8 для нормальной работы с unicode( опционально) mysql_enable_utf8 => 1, } ); # автоматическое скачивание и распаковка пока не реализованы # файлы брать здесь https://fias.nalog.ru/Updates.aspx ( Полная БД ФИАС, DBF ) # Загрузка базы из текущей директории $fias->load_files( '.' ); # Получение всех записей первого уровня( регионов ) my $regions = $fias->get_address_objects( aolevel=>'region' ); # Получение всех субъектов региона my $under_region = $fias->get_address_objects( parentguid => 'ee594d5e-30a9-40dc-b9f2-0add1be44ba1' ); # Получение всех строений находящихся на адресном объекте с aoguid '00001be9-7886-4c7b-bcfe-74bdd601b81a' my $houses = $fias->get_houses_for_address_objects( '00001be9-7886-4c7b-bcfe-74bdd601b81a' ); # Получение всех помещений находящихся в строении с houseid '000012ba-2754-425c-ba4a-4c35d0771045' my $rooms = $fias->get_rooms_of_address_objects( '000012ba-2754-425c-ba4a-4c35d0771045' );
%params db_connection -- параметры соединения к базе dsn -- DBI Data Source Name login -- логин для подключения к базе password -- пароль для подключения к базе # Опционально additional_connection_params { # флаг для подключения к MySQL базе( опционально ) mysql_enable_utf8 => 1 }
Функция возвращает массив из hashrefs квартир в формате { 'aolevel' => '1', 'shortname' => 'обл', 'offname' => 'Брянская', 'aoguid' => 'f5807226-8be0-4ea8-91fc-39d053aec1e2' } aoguid -- Глобальный уникальный идентификатор адресного объекта aolevel -- Уровень адресного объекта offname -- Официальное наименование shortname -- Краткое наименование типа объекта
Функция возвращает массив из hashrefs квартир в формате { 'postalcode' => '241020', 'roomnumber' => '', 'roomtype' => 'Не определено', 'flatnumber' => '2', 'flattype' => 'квартира', 'roomguid' => '5039b82c-7975-4494-8920-22ad28cc130b', 'houseguid' => 'cca694e2-2cf2-4f0c-8f5a-dec652833c1b' }, flatnumber -- номер квартиры, офиса и прочего flattype -- тип квартиры ( из справочника flattype ) houseguid -- Глобальный уникальный идентификатор родительского объекта (дома) roomguid -- Глобальный уникальный идентификатор помещения postalcode -- Почтовый индекс roomnumber -- Номер комнаты или помещения roomtype -- тип комнаты ( из справочника roomtype )
возвращаем 1(неактуально) или 0(актуально)
На выходе получаем данные DBF удовлетворяющие стандарту SQL перечисленные через запятую
Возвращаем дату разделённую дефисами для нормального помещения в SQL
Возращаем удобоваримый и читаемый текст
Daniil Popov <popov.daniil@gmail.com>
This software is copyright (c) 2017 by Daniil Popov.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install FIAS::SQL, copy and paste the appropriate command in to your terminal.
cpanm
cpanm FIAS::SQL
CPAN shell
perl -MCPAN -e shell install FIAS::SQL
For more information on module installation, please visit the detailed CPAN module installation guide.