2026-02-15 02:06:15 +07:00
2026-02-15 01:34:17 +07:00
2026-02-15 01:34:17 +07:00
2026-02-15 01:34:17 +07:00
2026-02-15 01:34:17 +07:00
2026-02-15 01:34:17 +07:00
2026-02-15 02:06:15 +07:00

Тестовое задание

На хост машине

make help
make build
make install
make run # заполнит базу и запустит тесты

Необходимо задать переменные окружения

WB_URL="url"
WB_API_KEY="123"

Синхронизация

Инкрементальная

Schedule::command('sync:all')->dailyAt('00:10');

Для ORDERS, SALES, INCOMES синхронизация берёт данные по завершённым дням

Первый запуск: берутся все данные с даты 2 года назад до вчерашнего дня

Последующие запуски: берётся только следующий завершённый день после последней успешной записи (date_to)

Для STOCKS всегда берётся только текущий день, так как API поддерживает только актуальные данные

Ручное управление

make sh # для входа в контейнер
Available commands for the "sync" namespace:
  php artisan sync:all      Command description
  php artisan sync:incomes  Sync incomes from WB API
  php artisan sync:orders   Sync orders from API
  php artisan sync:sales    Sync sales from WB API
  php artisan sync:stocks   Sync stocks from WB test API

Расширение

Конфиг

Комментарий:

Апи может присылать полные дубли строк, думал делать вставку через upsert + уникальный ключ например по хешу основных строк, но выбрал более простой вариант с обычным заполнением

Ссылка на хостинг

https://pma.din9xtr.tech/

Description
No description provided
Readme 121 KiB
Languages
PHP 57.5%
Blade 41%
Dockerfile 0.6%
Makefile 0.5%
JavaScript 0.2%
Other 0.2%