dven84 / yii2-gisgkh

Модуль интеграции с ГИС ЖКХ для приложений на фреймворке Yii2

Home Page:http://open-gkh.ru

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Модуль интеграции с ГИС ЖКХ для Yii2

Модуль содержит базовый функционал для взаимодействия с ГИС ЖКХ по протоколу SOAP. На данный момент в открытой части поддерживается работа со следующими сервисами:

  • Нормативно-справочная информаци (НСИ)
  • Реестр организаций
  • Реестр файлов
  • Реестр договоров ресурсоснабжения

Рабочий пример использования модуля можно посмотреть в демо-приложении с открытым исходным кодом.

Установка

Для установки модуль можно клонировать из данного репозитория или подлючить через composer:

    "repositories": [
        {
            "url": "https://github.com/opengkh/yii2-gisgkh.git",
            "type": "git"
        }
    ],
    "require": {
        "opengkh/yii2-gisgkh": "*"
    },

Подключение и конфигурация

Подключение модуля в конфигурационном файле выгляит следующим образом:

    'modules' => [
        'gisgkh' => [
            'class' => 'opengkh\gis\Module',
            'version' => '10.0.2.3',
            'sslCert' => '@app/config/cert.pem',
            'sslKey' => '@app/config/key.pem',
            'caInfo' => '@app/config/cacert.pem',
            'username' => '<http-login>',
            'password' => '<http-password>',
            'ip' => '217.107.108.147',
            'port' => '10081',
        ]
    ],

Также модуль необходимо добавить в секцию bootsrap:

    'bootstrap' => [..., 'gisgkh'],

Если модуль был установлен не через composer, то дополнительно нужно в настройках прописать alias для пространства имён модуля. Например, если модуль был клонирован в папку modules/gisgkh:

    'aliases' => [
        '@opengkh/gis' => '@app/modules/gisgkh',
    ],

Конфигурируемые опции:

  • sslCert - имя файла с PEM-сертификатом
  • sslKey - имя файла с закрытым ключом SSL
  • caInfo - имя файла, содержащего цепочку сертификатов УЦ
  • username - логин для HTTP аутентификации
  • password - пароль для HTTP аутентификации
  • version - версия API ГИС ЖКХ
  • ip - IP-адрес подключения к стенду API
  • port - порт подключения к стенду API
  • orgPPAGUID - идентификатор отправителя для формирования запросов от лица организации *

* организация должна предварительно через интерфейс ГИС ЖКХ дать ИС разрешение на выполнение действий от её имени

При подключении к тестовому стенду все параметры, кроме файлов с ключом и сертификатами можно оставить по-умолчанию.

Стуктура модуля

Модуль имеет 2-х уровневую структуру: уровень сервисов ГИС ЖКХ и уровень классов для приложений.

Уровень сервисов ГИС ЖКХ реализуется отдельно для каждой выходящей версии, и располагается в директории versions/<номер версии>. Классы в этих директориях полностью соответствуют wsdl-схемам соответствующих версий API ГИС ЖКХ. Все версии находятся в одном пространстве имён gisgkh, а подключение конкретной директории делается при инициализации модуля на основании номера версии, который задан в настройках.

Уровень классов для приложений предоставляет набор классов, семантика которых по возможности не меняется при выходе новых версии API ГИС ЖКХ, обновляется только их внутренняя реализация.

Таким образом, приложению использующему модуль при выходе новой версии API ГИС ЖКХ нужно только обновить модуль и сменить номер версии в настройках.

Классы для приложений расположены в пространстве имён opengkh/gis.

Справка по классам для приложений


Лицензия: http://open-gkh.ru/license.html

About

Модуль интеграции с ГИС ЖКХ для приложений на фреймворке Yii2

http://open-gkh.ru


Languages

Language:PHP 100.0%