Хиты продаж - пересмотреть расчет

Разные товары продаются по-разному. У какого-то минимальная партия 10 шт, у какого-то 1. При этом в хиты товар попадает с условием факта продаж.
Для оптовиков, использующих cs-cart, хотелось бы иметь возможность настройки хитов. Не важно, сколько товара куплено. Важен именно факт покупки. Какой товар чаще покупается - тот и более “хитовый”

этот блок можно заполнять вручную

или вручную внести сюда большое значение для нужных товаров

1 лайк

Попробовала найти импорт по данному свойству - его нет :frowning: товаров больше 10000… Неудобно в каждый входить и менять. Групповой замены количеств продаж также нет.

Если не ошибаюсь - табоица cscart_product_sales, там три поля: category_id, product_id, amount
можете попробовать пока так (набросал по быстрому) - в либре создать табличку - первая колонка артикул, вторая - количество продаж, сохранить в csv именно из либры в utf-8, разделитель точка с запятой, текстовые поля в двойные кавычки (важно, сохранение в csv из экселя почему то воспринимается неверно, даже если потом в другом редакторе перевести его в utf-8)
выложить файл например по пути /images/companies/1/ (администрирование - файлы - Пользовательские файлы)
Следующий код сохранить в файл php на сервере и запустить - код прочитает построчно данные и заполнит таблицу
Предварительно желательно забэкапить базу (можно только указанную таблицу) и проверить результат. Ну и по завершении процедуры удалить php файл (или держать такие скрипты в запароленной директории)

<?php
$path_to_shop = '';
use Tygh\Api;
use Tygh\Registry;

// Configure CS-Cart -----------------------------------------------------------
define('AREA', 'A');
define('ACCOUNT_TYPE', 'admin');
require($path_to_shop . '/init.php');

$fp = fopen(DIR_ROOT."/images/companies/1/file.csv", "r");
if (!$fp) exit("Нет файла для импорта количества продаж!");


while (($data = fgetcsv($fp, 1000, ";", '"')) !== FALSE) {
        $product_id = db_get_field("SELECT product_id FROM ?:products WHERE product_code = ?s", $data[0]);
        $__data = array(
            'product_id' => $product_id,
            'category_id' => db_get_field("SELECT category_id FROM ?:products_categories WHERE pruduct_id = ?i AND link_type = 'M'", $product_id),
            'amount' => $data[1]
        );
        db_query("REPLACE INTO ?:product_sales ?e", $__data);
}
echo "Готово!";
1 лайк