Модуль Разделение отгрузок

Наконец-то я добрался до этого.
Функционал отгрузок сейчас пребывает в настолько плачевном состоянии, что, как я полагаю, поправьте, если не прав - им никто не пользуется. Сейчас это атавизм на тле CS-Cart.
Итак. Модуль наполовину готов. Сейчас реализовано следующее:
При создании заказа (из админки или с фронта, или через API - не важно, главно, что используется стандартный функционал для этого - функции place_order или update_order), автоматом создается единственная отгрузка, в которую входят все товары. Без перевозчика и без трек номера.


Для таких заказов (у которых есть отгрузки) - стандартный список товаров скрывается.
На случай, если это старый заказ и отгрузки на него тогда еще не создавались - для таких заказов список товаров показывается.

По кнопке Редактировать отгрузки открывается модальное окно, все надписи понятны, особых комментариев не надо. Товары перетягиваются между отгрузками, их можно вернуть в нераспределенные товары, можно указать, сколько именно штук надо перетянуть, если одного товара несколько экземпляров.

Итог выглядит так:

Для каждого перевозчика трекномер является ссылкой на страницу отслеживания.

Что в планах.
Выводить статусы отгрузок, а также добавить логику смены статусов заказов в зависимости от статусов отгрузок

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

Если есть и отгрузки, и нераспределенные товары - добавить табличку с такими товарами, или просто кнопку с текстом, что такие товары есть.

Если есть какие-то мысли, что еще можно улучшить/добавить в работу с отгрузками, буду рад выслушать!

По последнему пункту все просто:

Ну вот и баг в отгрузках нашелся, в стандартном десятилетиями не тронутом функционале.
Если распределить товар по отгрузкам, например положить 5 экземпляров товара. Потом пойти в редактирование заказа, поставить что в заказе будет три экземпляра товара. Сохранить.
В заказе станет 3 экземпляра, а в отгрузках останется 5 (!)
Это стандартный функционал, я его никак не затрагивал. Просто получается, что при редактировании заказа отгрузки никак не редактируются…

Слишком много условий надо учесть, поэтому подозреваю, что единственным решением от команды разработчиков будет - при редактировании заказа просто удалить все отгрузки…

Что ж. Будем править сами…

Оффтоп наверное

Уже тоже прошел все эти этапы.
У нас внутри заказа может быть товар от нескольких поставщиков.
У нас по сути Склады это Поставщики.
И при создании отгрузки выбираешь поставщика с которого едет и происходит всыкая дальнейшая магия.

Теперь манагеры не косячат, блокируются все что только можно.
И еще в Отгрузках сделал Возвраты.
Таже сущность, нос минусом.

Есть правила переключения статусов отгрузок в зависимости от заполненных полей.
Привязка счетов от поставщиков в отгрузку.
И еще множество всего.
Даже не представляю сколько ранее пришлось бы разработчикам за такое заплатить.

Скрины



1 лайк