Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Формула расчета модуля "Хиты продаж"


slimvm

Recommended Posts

Здравствуйте!

Подскажите, как реализовать вывод в модуле Хиты продаж не по количеству проданных товаров, а по общей цене проданных товаров. Например, при покупке двух позиций по 300 рублей, и одной позиции по 1000 рублей сначала в модуле отобразиться позиция за 1000 р. а ниже позиция за 300 р.

Принцип такого отображения есть в админке: Админка - Отчеты - Купленные товары. Теперь как-то надо реализовать такой же вывод токо в модуле Хиты продаж.

Надіслати
Поділитися на інших сайтах


В файле catalog/model/catalog/product.php, метод getBestSellerProducts()

ищеш строку которая начинается

$query = $this->db->query("SELECT op.product_id, SUM(op.quantity) AS total, p.status FROM ...
В этой строке меняеш SUM(op.quantity) на SUM(op.total)
  • +1 2
Надіслати
Поділитися на інших сайтах

  • 3 months later...

Сделал подобную замену, однако эффекта никакого... :-( В чем может быть еще причина? Код после замены выглядит так:

$query = $this->db->query("SELECT op.product_id, SUM(op.total) AS total FROM " . DB_PREFIX . "order_product op LEFT JOIN `" . DB_PREFIX . "order` o ON (op.order_id = o.order_id) WHERE o.order_status_id > '0' GROUP BY op.product_id ORDER BY total DESC LIMIT " . (int)$limit);
Надіслати
Поділитися на інших сайтах


  • 5 months later...

А как подобное провернуть с 1.5.1.3

логику данного SQL запроса не пойму...

$query = $this->db->query("SELECT op.product_id, COUNT(*) AS total FROM " . DB_PREFIX . "order_product op LEFT JOIN `" . DB_PREFIX . "order` o ON (op.order_id = o.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE o.order_status_id > '0' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' GROUP BY op.product_id ORDER BY total DESC LIMIT " . (int)$limit);
Надіслати
Поділитися на інших сайтах

А как подобное провернуть с 1.5.1.3

логику данного SQL запроса не пойму...

$query = $this->db->query("SELECT op.product_id, COUNT(*) AS total FROM " . DB_PREFIX . "order_product op LEFT JOIN `" . DB_PREFIX . "order` o ON (op.order_id = o.order_id) LEFT JOIN `" . DB_PREFIX . "product` p ON (op.product_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE o.order_status_id > '0' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' GROUP BY op.product_id ORDER BY total DESC LIMIT " . (int)$limit);

точно так же, COUNT(*) заменить на SUM(op.total)

  • +1 1
Надіслати
Поділитися на інших сайтах

  • 3 months later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.