avto-dev / b2b-api-php-laravel
Laravel 5 package for a working with avto-dev/b2b-api-php
Installs: 9 511
Dependents: 0
Suggesters: 1
Security: 0
Stars: 3
Watchers: 1
Forks: 3
Open Issues: 0
Requires
- php: ^5.6 || >=7.0
- ext-json: *
- avto-dev/b2b-api-php: ^2.5
- laravel/framework: >=5.4.3 <5.8.0
Requires (Dev)
- laravel/laravel: >=5.4.3 <5.8.0
- mockery/mockery: 0.9.* || ~1.0
- phpunit/phpunit: ~5.7.10 || ^6.4 || ~7.0 <7.5.0
README
THIS PACKAGE IS ABANDONED
Package is abandoned and soon will be completely removed. Migrate on this package.
You must update your application soon as possible!
Расширенный клиент для работы с B2B API
При помощи данного пакета вы сможете интегрировать сервис по работе с B2B API в ваше Laravel приложение с помощью нескольких простых шагов.
Более подробно о работе самого клиента по работе с B2B API смотрите в его репозитории.
Установка
Для установки данного пакета выполните в терминале следующую команду:
$ composer require avto-dev/b2b-api-php-laravel "^2.0.11"
Для этого необходим установленный
composer
. Для его установки перейдите по данной ссылке.
Обратите внимание на то, что необходимо фиксировать мажорную версию устанавливаемого пакета.
Данный пакет не использует автоматическую регистрацию своего сервис-провайдера (данная возможность появилась в Laravel v5.5.x). Так же рекомендуется создавать свой класс сервис-провайдера, наследовать его от поставляемого с данным пакетом, и уже его регистрировать. Причина данной рекомендации крайне проста - таким образом вы получаете более тонкие возможности переопределения логики инициализации контейнеров и перекрытия поставляемых методы - своими.
После чего создайте в директории ./app/Providers
файл B2BApiServiceProvider.php
со следующим содержимым:
<?php namespace App\Providers; use AvtoDev\B2BApiLaravel\B2BApiServiceProvider as VendorB2BApiServiceProvider; /** * Class B2BApiServiceProvider. */ class B2BApiServiceProvider extends VendorB2BApiServiceProvider { // }
Затем зарегистрируйте этот сервис-провайдер в секции providers
файла ./config/app.php
:
'providers' => [ // ... App\Providers\B2BApiServiceProvider::class, ]
И "опубликуйте" необходимые для пакета ресурсы с помощью команды:
$ ./artisan vendor:publish --provider="App\Providers\B2BApiServiceProvider"
Данная команда создаст файл
./config/b2b-api-client.php
с настройками "по умолчанию", которые вам следует переопределить на свои.
После чего откройте файл ./config/b2b-api-client.php
и укажите в нем ваши реквизиты для подключения к сервису B2B API.
С новыми версиями пакета могут добавляться новые опции в конфигурационном файле. Пожалуйста, не забывайте время от времени проверять этот момент.
Использование
Данный пакет регистрирует 2 IoC контейнера:
- Репозиторий типов отчетов:
AvtoDev\B2BApiLaravel\ReportTypes\ReportTypesRepository
- Сервис по работе с B2B API:
AvtoDev\B2BApiLaravel\B2BApiService
Репозиторий типов отчетов отвечает за первоначальную загрузку данных о типах отчетов из конфигурационного файла, и предоставляет удобный доступ у ним (методы проверки их наличия, извлечения, и так далее).
Доступ к нему осуществляется как с помощью непосредственного извлечения по имени класса или алиасу, так и с помощью фасада ReportTypesRepositoryFacade
.
Сервис по работе с B2B API предназначен для как для реализации удобного доступа к инстансу самого клиента с помощью метода ->client()
, так и реализует удобные методы по базовым операциям с отчетами (такими как создание, получение контента и обновление данных в отчете, без необходимости ручной генерации токена авторизации). Так же он содержит и другие методы, о чем смотрите исходный код сервиса.
Более подробно о том, как работать с клиентом смотрите в данном репозитории.
Доступ к нему так же осуществляется как с помощью непосредственного извлечения по имени класса или алиасу, так и с помощью фасада B2BApiServiceFacade
.
События
Вы можете установить свои слушатели на следующие события:
AvtoDev\B2BApiLaravel\Events\BeforeRequestSending
- происходит перед тем, как осуществляется запрос к сервису B2B API;AvtoDev\B2BApiLaravel\Events\AfterRequestSending
- происходит после того, как был осуществлен запрос к сервису B2B API.
Более подробную информацию о том, как можно использовать слушателей событий вы можете найти по этой ссылке.
Testing
For package testing we use phpunit
framework. Just write into your terminal:
$ git clone git@github.com:avto-dev/b2b-api-php-laravel.git ./b2b-api-php-laravel && cd $_ $ composer install $ composer test
Changes log
Changes log can be found here.
Support
If you will find any package errors, please, make an issue in current repository.
License
This is open-sourced software licensed under the MIT License.