avto-dev/b2b-api-php-laravel

This package is abandoned and no longer maintained. The author suggests using the avtocod/b2b-api-php-laravel package instead.

Laravel 5 package for a working with avto-dev/b2b-api-php

v2.7.0 2019-07-11 17:45 UTC

README

Laravel

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

Version Version Build Status Coverage Code quality Downloads count License

При помощи данного пакета вы сможете интегрировать сервис по работе с 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

Release date Commits since latest release

Changes log can be found here.

Support

Issues Issues

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.