Как сделать так, чтобы при смене статуса заказа с В ОБРАБОТКЕ на ВОЗВРАТ (или АННУЛИРОВАН) количество товара становилось прежним ? Например: в наличии один мобильник, его заказали, автоматически количество товара стало "0". От товара отказались. Меняется статус заказа на "аннулирован". Как сделать чтобы кол-во товара стало "один"
Укажите версию OpenCart. Там до версии 1.5.5 был баг, при котором удаление заказа или товара из заказа - количество товара не менялось.
Это баг. Скачайте версию 1.5.5.1 и посмотрите файл admin/model/sale/order.php. Найдите там все строки, которые начинаются с PHP: $this->db->query("UPDATE " . DB_PREFIX . "product SET quantity И сравните с файлом который у вас в магазине (этих строк там должно не хватать или они отличаются, точно не помню). Добавте их в соответствующие места в файле вашего магазина. Вообще, можно попытаться просто заменить этот файл, но обязательно сохраните оригинал, я не уверен, что там нет изменений из-за которых что-нибудь не отвалиться.
Заменил. Толку почти ноль Количество товара не реагирует на статус заказа. Только если удалить заказ, тогда товар плюсуется обратно Хотелось бы, чтобы при смене статуса на возврат или аннулирован, товар плюсовался
Вы весь файл заменили? Оно в 1.5.5 уже работает, потому я и сказал скачать её. В 1.5.6 разница от предыдущей версии только в добавлении новых способов оплаты.
Тогда самый простой вариант - удалять товары из заказа. Вариант посложнее - немного дописать функцию обновления статуса, чтоб при определённых статусах она меняла количество товара.