Задача: Получить топ продаж за последнюю неделю из 21 инфоблока
Глазами sql можно получить по сути одним запросом
1)нам нужно получить: количество, ид товара
2)нам нужно отфильтровать: по ИД инфоблока, по дате изменения
3)нам нужно отсортировать: количество по убыванию
Казалось бы делов не много... CSaleBasket::GetList с группировкой...окау подумал я и запилил.
Группировка работает, а вот сортировка фиг, сортирует всеравно по PRODUCT_ID
Что мы получим? нужно дернуть товары, нужно по ним пробежаться, получить их Инфоблок, проверить нужен ли нам этот товар, и потом отсортировать итоговый массив...Problem?
да всего то 30+строк кода...мда
а вот скуль
К чему это я все?
Допилите пожалуйста сортировку и фильтр в CSaleBasket::GetList();
НО вспоминаются строки из документации "корзина не связана с каталогом=>не связана с инфоблоками" но ведь когда кладется товар, записывается же его PRODUCT_ID и XML_ID, название,цена, которые берутся из нужных нам модулей...
Глазами sql можно получить по сути одним запросом
1)нам нужно получить: количество, ид товара
2)нам нужно отфильтровать: по ИД инфоблока, по дате изменения
3)нам нужно отсортировать: количество по убыванию
Казалось бы делов не много... CSaleBasket::GetList с группировкой...окау подумал я и запилил.
Группировка работает, а вот сортировка фиг, сортирует всеравно по PRODUCT_ID
Что мы получим? нужно дернуть товары, нужно по ним пробежаться, получить их Инфоблок, проверить нужен ли нам этот товар, и потом отсортировать итоговый массив...Problem?
да всего то 30+строк кода...мдаа вот скуль
SEL ECT DISTINCT COUNT('B.PRODUCT_ID') AS CNT, B.PRODUCT_ID,EL.IBLOCK_ID,EL.NAME
FR OM b_sale_basket B
LEFT JOIN b_iblock_element EL ON(EL.ID=B.PRODUCT_ID)
WHERE EL.IBLOCK_ID=21
GROUP BY B.PRODUCT_ID
ORDER BY CNT DESC
|
Допилите пожалуйста сортировку и фильтр в CSaleBasket::GetList();
НО вспоминаются строки из документации "корзина не связана с каталогом=>не связана с инфоблоками" но ведь когда кладется товар, записывается же его PRODUCT_ID и XML_ID, название,цена, которые берутся из нужных нам модулей...