gregoro

Странная проблема - самовосполняются запасы товаров

Рекомендуемые сообщения

gregoro    21

Добрый день!

 

Вылезла странная проблема.

Ставлю товару остаток "0", через день обнаруживаю его в заказе покупателя...

Захожу на сайт - товар в наличии. Захожу в админку - остаток стоит "1"...

 

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

Теперь не знаю что и думать.

Версия оцстор 2.1

 

Кто-то сталкивался с таким?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
jvz    119

Какой-то заказ с этим товаром может отменили?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Просмотрел сейчас - таких товаров несколько, заказов с ними не отменял...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Нашел в журнале вот такую ошибку PHP Notice:  

Undefined variable: product_id in /home/server/site.ru/system/storage/modification/catalog/controller/product/product.php on line 979

 

Это не отсюда случаем проблемы растут? Кто-то понимает в коде? :oops:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
jvz    119

Кто-то понимает в коде?
Вы его показали чтобы в нем понимать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Прошу прощения... Вчера был крайне тяжелый вечер личных разборок со второй половиной, голова не особо на месте была...

 

Вот кусок кода, на который ссылается ошибка:

	public function getRecurringDescription() {
		$this->language->load('product/product');
		$this->load->model('catalog/product');

          $this->load->model('catalog/category');
          $data['catprod'] = array();
          
          $product_category = $this->model_catalog_product->getCategories($product_id);  ЭТО СТРОЧКА 979, на которую ошибка ссылается
          
          foreach ($product_category as $prodcat) {
          
          $category_info = $this->model_catalog_category->getCategory($prodcat['category_id']);
          
          if ($category_info) {
          
          $data['catprod'][] = array(
          'name'     => $category_info['name'],
          'href'     => $this->url->link('product/category', 'path=' . $category_info['category_id'])
          );
          }
          }
			

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
druzhkov    22

Ставлю товару остаток "0", через день обнаруживаю его в заказе покупателя...

Захожу на сайт - товар в наличии. Захожу в админку - остаток стоит "1"...

 

Остаток "0" действительно проставляется в базу? Через phpmyadmin проверяли? (таблица product)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Остаток "0" действительно проставляется в базу? Через phpmyadmin проверяли? (таблица product)

Нет, там не проверял. Смотрел только в админке сайта...

Постараюсь проверить. Постараюсь - т.к. пока не могу понять в какой именно момент вообще происходит смена остатка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

Может вы меняете статус заказа на такой, который возвращает на склад

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
druzhkov    22

Нет, там не проверял. Смотрел только в админке сайта...

Постараюсь проверить. Постараюсь - т.к. пока не могу понять в какой именно момент вообще происходит смена остатка

 

Вообще методика такая:

- находите в коде вхождения "quantity" (их должно быть не так много)

- далее, исходя из найденных вхождений, составляете список мест, откуда меняется количество

- проходите по ним, попутно через phpmyadmin следя за значением в базе, и находите то, которое делает неправильное значение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Может вы меняете статус заказа на такой, который возвращает на склад

Как я понимаю это только статус "отменен"

Но у меня таких заказов всего пара была (я заказы не в админке обрабатываю, в сторонней складской программе, состав заказа вообще с почты беру).

В админку залезаю только треки вбить (у меня стоит автоотслеживатель liviinform). После вбивания трека заказу присваивается статус "отправлен"

Этот статус точно товары на склад не возвращает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gregoro    21

Вообще методика такая:

- находите в коде вхождения "quantity" (их должно быть не так много)

- далее, исходя из найденных вхождений, составляете список мест, откуда меняется количество

- проходите по ним, попутно через phpmyadmin следя за значением в базе, и находите то, которое делает неправильное значение

Спасибо за совет!

А вы за это не возьметесь?) За разумное вознаграждение само собой. Просто понятие "проходите по ним" предполагает ковыряние в коде все равно, а я в php не понимаю ровным счетом ничего (я не прогер).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу