Вопрос Изменение скрипта модуля Followup

Reuters

Создатель
Регистрация
4 Май 2014
Сообщения
17
Реакции
3
Как поменять скрипт модуля Followup (дальнейшая работа с клиентом), и конкретно в его 3 части, отвечающей за рассылку и создание скидки клиентам превысившим определенный порог на:
создать скидку и оправить письмо ВСЕМ зарегистрированным клиентам, которые вообще ничего не заказывали, и/или только определенной группе клиентов?

напомню, сам скрипт таков:
$sql = '
SELECT SUM(o.total_paid) total, c.id_cart, o.id_lang, cu.id_customer, cu.id_shop, cu.firstname, cu.lastname, cu.email
FROM '._DB_PREFIX_.'orders o
LEFT JOIN '._DB_PREFIX_.'customer cu ON (cu.id_customer = o.id_customer)
LEFT JOIN '._DB_PREFIX_.'cart c ON (c.id_cart = o.id_cart)
WHERE o.valid = 1
AND DATE_SUB(CURDATE(),INTERVAL 90 DAY) <= o.date_add
AND cu.is_guest = 0 ';
$sql .= Shop::addSqlRestriction(Shop::SHARE_CUSTOMER, 'o');
if (!empty($email_logs))
$sql .= ' AND cu.id_customer NOT IN ('.join(',', $email_logs).') ';
$sql .= ' GROUP BY o.id_customer HAVING total >= '.(float)Configuration::get('PS_FOLLOW_UP_THRESHOLD_3');
 
Напишите сначала запрос и протестируйте в phpMyAdmin, который делает нужную вам выборку,
а потом уже его LEFT JOIN и WHERE вставите в код модуля
 
это сделано. заработало.

а как сделать так, что бы строки в таблице email_log автоматически очищались через N дней и только те, которые были созданы от сегодня - N дней ?
 
Добавил в самый конец файла followup.php после всех скобок запрос:

$sql .= ' DELETE FROM '._DB_PREFIX_.'log_email WHERE DATE_SUB(CURDATE(),INTERVAL 60 DAY) > date_add AND id_email_type =3 ';

но база не очищается. в чем может быть проблема? и нет ли ошибок с синтаксисом?
 
Назад
Сверху