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

[Решено] Хиты продаж за 2 недели


evgeny8778

Recommended Posts

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

 

В модуле "Хиты продаж" необходимо сделать выборку среди товаров, проданных за 2 последние недели, а не за весь период.

Можно ли реализовать подобное? Если я правильно понял, то изменениям должен быть подвергнут файл: 

 

catalog/model/catalog/product.php

 

а точнее, строка:



$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);

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


Может кто-то подскажет правильно ли я делаю.

 

В приведённом мною выше запросе, я изменил:

p.date_available <= NOW()

на

o.date_added >= DATE_SUB(CURRENT_DATE, INTERVAL 14 DAY)

В конечном итоге получилось так:

$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
 o.date_added >= DATE_SUB(CURRENT_DATE, INTERVAL 14 DAY) AND p2s.store_id = '" . (int)$this->config->get('config_store_id') 
. "' GROUP BY op.product_id ORDER BY total DESC LIMIT " . (int)$limit);

Вроде бы правильно считает, но почему-то попал 1 товар с 0-м количеством на складе. Cache на FTP почистил.

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


AND (DATEDIFF(NOW(), o.`date_added`) <= 14)

но почему-то попал 1 товар с 0-м количеством на складе.

кол-во товаров не проверяется

Змінено користувачем afwollis
>= на <=
  • +1 1
Надіслати
Поділитися на інших сайтах

  • 3 years later...

Всё вроде бы хорошо, но инфа за 2013 год, делал вывод товара за определённый период времени вашими способами, но не чего не вышло, может кто то подскажет что нужно делать для версии 2.....  И еще результат видно сразу после замены строк кода и очистки кеша? Или нужно подождать определённое время?

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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