Skip to content

sch-group/warehouse-laravel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

arnyarny
arny
and
arny
Nov 30, 2020
724b7ff · Nov 30, 2020

History

36 Commits
Nov 30, 2020
Sep 16, 2020
Nov 30, 2020
Sep 16, 2020
Nov 5, 2020
Sep 18, 2020

Repository files navigation

Laravel package для Моего склада

при развертывании пакета на каком-то новом проекте

php artisan vendor:publish --provider="SchGroup\MyWarehouse\MyWarehouseServiceProvider" --tag="migrations"
php artisan vendor:publish --provider="SchGroup\MyWarehouse\MyWarehouseServiceProvider" --tag="config"

Далее нужно запустить

php artisan migrate

Создастся таблица my_warehouse_entities

Команда ниже заливает в мой склад товары, бренды, упаковки, статусы, бонусы в мой склад

php artisan my-warehouse:synchronize --entity=brand
php artisan my-warehouse:synchronize --entity=product
php artisan my-warehouse:synchronize --entity=variant
php artisan my-warehouse:synchronize --entity=bonus
php artisan my-warehouse:synchronize --entity=order_status

Перед запуском необходимо выполнить для всех этих сущностей. Команда свяжет сущности в полиморфной таблице my_warehouse_entities

Команда ниже обновляет среднюю закупочную цену в Модификациях (упаковках) в моем складе, можно запускать раз в сутки

php artisan my-warehouse:synchronize_prices --entity=variant

ПЕРВЫЙ ЗАПУСК:

ВКЛЮЧИТЬ ЛОГИРОВАНИЕ И ПРОД РЕЖИМ В ENV (если мы на проде)

MY_WAREHOUSE_LOG=on
MY_WAREHOUSE=prod

При первоначальной запуске моего склада необходимо залить текущие остатки по всем упаковкам и бонусам. Команды ниже зальют оприходования (Enters) в моем складе (вкладка оприходования). Остатки по всем упаковкам бонусам можно посмотреть во вкладке Товары->Остатки

php artisan my-warehouse:add_first_stock_enters --entity=variant
php artisan my-warehouse:add_first_stock_enters --entity=brand

После того как все остатки залиты, необходимо сразу же залить заказы, которые находятся в статусах, резервирующих заказ

php artisan my-warehouse:add_reserved_orders

Заказы должны появится во вкладке Заказы покупателей. Если открыть вкладку Товары->Остатки и выбрать какую-то упаковку, то можно увидеть, список заказов зарезервировавших ее

СИНХРОНИЗАЦИЯ:

Если заказ переходит в статус Доставляется, то мы должны убрать упаковку из резерва и уменьшить остаток. это происходит в джобе

UpdateOrderInMyWarehouseJob

Джоба создает документ Отгрузки и убирает заказ из резерва, при отмене заказа отгрузка удаляется. Синхронно меняется статус и состав упаковок и бонусов

Новые заказы создаются синхронно в джобе

CreateOrderInMyWarehouseJob

ИНВЕНТАРИЗАЦИЯ/ПРИХОДЫ/СПИСАНИЯ:

PerformChangeInMyWarehouseJob

При добавлении прихода в нашей админке (Incoming) в моем склале создается документ приемки Supply

При инвентаризации в нашей админке:

если добавилась находка (т.е реальное количество упаковки на складе оказалось больше), то создается новое оприходование Enter в моем складе

если добавилось списание списание (т.е реальное количество упаковки на складе оказалось меньше), то создается новое списание Loss в моем складе

Чтобы сверять состояние, можно заходить в инвентаризацию в админке и сверять с вкладкой Остатки в Моем складе

ЕСЛИ ЧТО-ТО ПОШЛО НЕ ТАК:

Смотрим логи, узнаем почему, фиксим

Удаляем в моем складе все документы заказы, оприходования, списания, приемки, и повторяем шаги начиная с ПЕРВЫЙ ЗАПУСК

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages