alexmg86/laravel-goodsru

v1.1 2020-10-23 14:39 UTC

This package is auto-updated.

Last update: 2024-10-23 23:22:03 UTC


README

PHP Composer Latest Stable Version License

Для чего нужен пакет

Данный пакет предназначен для работы с API сервиса GoodsRu в Laravel.

Понравился?

Если вам понравился пакет, то можете поставить мне звезду 🙏 😌

Установка

Установка через composer

composer require alexmg86/laravel-goodsru

Добавить и заполните переменные в .ENV файл

GOODSRU_URL= //https://site_goodsru.ru/api/market/v1/orderService
GOODSRU_TOKEN=
GOODSRU_LOGIN=
GOODSRU_PASSWORD=
GOODSRU_MERCHANT_ID=
GOODSRU_MERCHANT_NAME=

Если вам нужно изменить конфигурацию, то добавьте ее в папку с конфигами

php artisan vendor:publish --provider="Alexmg86\LaravelGoodsru\ServiceProvider"

Использование

Инициализация

Инициализировать можно несколькими способами:

use Alexmg86\LaravelGoodsru\LaravelGoodsru;

$api = new LaravelGoodsru();

можно сразу указать $shipmentId и $orderCode

$api = new LaravelGoodsru($shipmentId, $orderCode);

можно указать $shipmentId и $orderCode в любой момент работы

$api = new LaravelGoodsru();
$api->initOrder($shipmentId, $orderCode);

или установить их по отдельности

$api = new LaravelGoodsru();
$api->setOrder($orderCode);
$api->setShipment($shipmentId);

Запросы

get

Получение подробной информации об отправлениях.
Можно указать как один, так и массив $shipmentId.

$api = new LaravelGoodsru();
$data = $api->get($shipmentId);
$data = $api->get([$shipmentId1, $shipmentId2]);

confirm

Подтверждение лотов в отправлении со стороны продавца.
Указываем $shipmentId и передаем массив $itemIndex => $goodId.

$api = new LaravelGoodsru();
$api->setShipment($shipmentId);
$data = $api->confirm([1 => 1111, 2 => 2222]);

reject

Отмена лотов в отправлении со стороны продавца.
Указываем $shipmentId и передаем массив $itemIndex => $goodId.
Можно указать причину отмены $reason. По умолчанию будет передано OUT_OF_STOCK.

$api = new LaravelGoodsru();
$api->setShipment($shipmentId);
$data = $api->reject([1 => 1111, 2 => 2222], $reason);

Получить список доступных статусов.

$reasons = $api->getReasons();

packing

Подтверждение комплектации продавцом.
Указываем $shipmentId и $orderCode и передаем массив $itemIndex => $boxIndex.
$boxIndex участвует в формирование штрихкода (boxCode).

$api = new LaravelGoodsru();
$api->initOrder($shipmentId, $orderCode);
$data = $api->packing([1 => 1, 2 => 1]);

print

Получение этикетки.
Указываем $shipmentId и передаем массив $boxIndex.

$api = new LaravelGoodsru();
$api->setShipment($shipmentId);
$data = $api->print([1, 2]);

shipping

Подтверждение отгрузки продавцом.
Указываем $shipmentId, $shippingDate и передаем массив $boxIndex.

$api = new LaravelGoodsru();
$api->setShipment($shipmentId);
// формат YYYY-MM-DDThh:mm:ss+hh:mm
$api->setShippingDate($shippingDate);
$data = $api->shipping([1, 2]);

search

Поиск по отправлениям.
Передаем $period равный количеству дней до текущей даты.
Необязательный массив $statuses для поиска по определенным статусам. По умолчанию поиск будет по всем статусам.

$api = new LaravelGoodsru();
$data = $api->search($period, $statuses);

Список доступных статусов.

$api->getStatuses();

Так же можно дополнительно искать по $orderCode, $shippingDate.

$api->setOrder($orderCode);
// формат YYYY-MM-DDThh:mm:ss+hh:mm
$api->setShippingDate($shippingDate);

По-умолчанию будет отдано 100 записей. Максимальное количество можно указать в файле конфигурации count либо задать в любой момент.

$api->setCount(200);

Дополнительный методы

Получение конфига.

$api->getConfig();

Получение и установка максимального количества результатов в выдаче.

$api->getCount();
$api->setCount(200);

Получение кодов типов скидок.

$api->getDiscount();

Получение и установка номера заказа.

$api->getOrder();
$api->setOrder($orderCode);

Получение id мерчанта.

$api->getMerchantId();

Получение название мерчанта.

$api->getMerchantName();

Получение кодов причин отмены.

$api->getReasons();

Получение кодов причин отмены для статуса MERCHANT_CANCELED.

$api->getCanceles();

Получение кодов статусов.

$api->getStatuses();

Получение и установка номера заказа GoodsRu.

$api->getShipment();
$api->setShipment($shipmentId);

Установка дата отгрузки.

$api->setShippingDate($shippingDate);