Добавление ошибки корзины для предотвращения входа в кассу

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

теперь у меня все работает, добавляя ссылку, похожую на повторный заказ, которая делает то же самое, что и повторный заказ, но создает сеанс, который идентифицирует, что вы редактируете заказ, чтобы сделать это для продуктов, которых нет в наличии, мне пришлось включить отложенные заказы.

однако я обнаружил сбой, если покупатель должен был добавить 5 головных уборов в корзину и выйти из системы, если, когда они вернутся, количество товара на складе теперь равно 0, они все еще могут войти в корзину, естественно, это из-за невыполненных заказов. включено.

я сделал CartController, чтобы забрать добавление/обновление в корзину и вручную проверить, меньше ли запасов, чем то, что в корзине, однако, если у клиента был товар, когда был достаточный запас, уйти и вернуться, когда он закончился стоковые, они обходят эти проверки

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

изначально, до того, как были включены отложенные заказы, если бы возникла такая же ситуация, кнопка «Перейти к оформлению заказа» отсутствовала бы, и вы получили бы сообщение об ошибке.

теперь я попытался исправить новый IndexController и использовать $this->_getSession()->addError('Some products in your cart have gone out of stock');, но я не получаю таких же результатов

Итак, как мне создать сообщение об ошибке, которое не позволит покупателю войти в кассу, пока он не исправит свою корзину?


person Memor-X    schedule 12.03.2013    source источник


Ответы (1)


Я бы посоветовал вам создать специальную страницу, назовем ее edit_cart. Когда вы перенаправляете на оформление заказа, проверьте все продукты и подтвердите их количество в magento. Отправьте их в edit_cart и позвольте им удалить товары, которых нет в наличии, из корзины. После этого перенаправьте их на кассу.

person nks    schedule 13.03.2013