shadoll / ivy
Library for Marketplaces
v1.0.0
2020-02-29 11:53 UTC
Requires
- illuminate/support: >=5.8
Requires (Dev)
- phpstan/phpstan: ^0.12
- phpstan/phpstan-phpunit: ^0.12
- phpstan/phpstan-strict-rules: ^0.12
- phpunit/phpunit: ^8
- sebastian/phpcpd: ^4.1
- shadoll/crocus: ^1.0
- shadoll/lantana: ^2.2
- shadoll/riccia: ^1.0
This package is auto-updated.
Last update: 2024-10-29 05:47:16 UTC
README
Library for MarketPlaces
Сервис соединяющий маркетплейсы
2020-02-29
Install
composer require shadoll/ivy
us
В продуктах laravel/lumen
можно подключить сервис провайдер Ivy\Lara\Providers\ServiceProvider
в
конфиг configs/app.php
laravel или bootstrap/app.php
lumen.
Создать Свой Middleware
наследуясь от Ivy\Lara\Middleware\BaseAuthBurdock
и подключить на ваш роутинг
или jobs где вам необходимо.
Перед использованием Сервиса Ivy необходимо зареестрировать адаптеры с которыми будете работать
Это можно сделать в вашем Middleware
$service = new IvyService();
// регистрация адаптеров
$service->initAdapters([
\Ivy\Adapters\Crocus\OrdersAdapter::class,
\Ivy\Adapters\Riccia\OrdersAdapter::class,
], 'orders');
// добавить адаптер
$service->pushAdapter('any\Adapter\Class', 'orders');
// удалить адаптер
$service->removeAdapter(\Ivy\Adapters\Riccia\OrdersAdapter::class);
// Получить необходимый адаптер для данных с маркетплейсов
// Возвращает Коллекцию адаптеров Обьект интерфейса
// Для orders
$clientRiccia = new \Riccia\Client([
"username" => "login",
"password" => "pass...",
]);
/**
* @var \Illuminate\Support\Collection<\Ivy\Contracts\BeOrdersAdapter> $adapters
**/
$adapters = $service->orders($clientRiccia->orders->get()); // вторым параметром можно передать клиент (опционально)
$adapters = $service->orders($clientRiccia->orders->get(), $clientRiccia);