Как выполнить процесс обновления запасов в Django Oscar - PullRequest
0 голосов
/ 05 сентября 2018

Я просматривал код для модели записи запаса здесь , а над полем num_allocated, которое написано в комментарии,

#: The amount of stock allocated to orders but not fed back to the master
#: stock system.  A typical stock update process will set the num_in_stock
#: variable to a new value and reset num_allocated to zero

Итак, как мне выполнить процесс обновления запаса, как указано в комментарии, когда товара нет в наличии? Мне нужно установить переменную num_in_stock в новое значение и установить num_allocated в ноль.

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

Если кто-то реализовал это, пожалуйста, поделитесь кодом или примером, поскольку я новичок в Оскаре.

1 Ответ

0 голосов
/ 06 сентября 2018

Для num_allocated - самый распространенный способ адресации, который состоит в том, чтобы потреблять (consume_stock_allocations()) или отменять (cancel_stock_allocations()) выделения при отправке или отмене заказа. Делать это в обработчике событий доставки, как вы делаете, прекрасно.

Это очистит распределение и уменьшит num_in_stock на ту же сумму, что и распределение (для потребления, а не для отмены) - т. Е. Вам не нужно больше ничего делать для корректировки num_in_stock.

Что вам нужно сделать, так это обновлять num_in_stock всякий раз, когда поступают новые акции и т. Д. Как вы это делаете, зависит от того, как вы управляете акциями на своем сайте - например, если вы получаете информацию о запасах из сторонней ERP-системы. система, тогда вы будете сбрасывать num_in_stock каждый раз при синхронизации с ERP. Если вы управляете инвентарем вручную, то просто обновите его с панели управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...