Перейти к содержанию
Форум поддержки пользователей VamShop

партнерская программа


Рекомендуемые сообщения

Страница admin/affiliate_payment.php  пуста, хотя заказ прошел, статус заказа выше чем минимальный статус в партнерке. 

Сумма выплаты больше минимальной. 

 

таблица  affiliate_payment пуста

 

на каком этапе туда должны попадать данные?

скрины устарели, но судя по всему такая же ошибка

 

 

Ссылка на сообщение
Поделиться на другие сайты

на демо сайте проблема так же есть

http://SSMaker.ru/a9808a78/

http://SSMaker.ru/b491e92b/

http://SSMaker.ru/f5d0ca2b/

на каком то этапе не попадают данные в таблицу

affiliate_payment  

Ссылка на сообщение
Поделиться на другие сайты

вообще полазив по коду, не нашел каким образом данные попадают в таблицу TABLE_AFFILIATE_PAYMENT

 

в теории, возможно, при смене статусов заказов. но там тоже пусто

Ссылка на сообщение
Поделиться на другие сайты

Так это ж нужно что б количетсво дней определённое прошло, что в настройках, по умолчанию вроде 30 дней.

В Админке - Партнёрка - Настройки есть опция Периодичности выписки счетов.

Ссылка на сообщение
Поделиться на другие сайты
50 минут назад, VaM сказал:

Так это ж нужно что б количетсво дней определённое прошло, что в настройках, по умолчанию вроде 30 дней.

В Админке - Партнёрка - Настройки есть опция Периодичности выписки счетов.

даже в мануале сказано что если "1" поставить то можно каждый день проверять и выплачивать.

НА данной странице Я даже where в SQL запросах убирал (как раз лимитирующие дату) - результат один. пусто. Просмотрел все файлы, никак не найду. В каком месте данные заносятся в выплаты? В какой момент времени. На каком этапе? Пытался гуглить - результат тот же. 

 

Вопрос то в чем: На каком этапе (в каком файле) данные заносятся в таблицу  TABLE_AFFILIATE_PAYMENT

 

на странице  admin/affiliate_payment.php  в SQL только SELECTы

Ссылка на сообщение
Поделиться на другие сайты

Модуль партнёрки точно рабочий и счета выписываются, проверено ведь годами.

Может дело в каких-то настройках.

Заказы вообще учитываются, комиссия считается?!

Проблема только с выплатами?!

Cчета надо ведь в админке вручную выписывать, в Админке - Партнёрка - Выплаты.

Только после того как выписаны счета и они видны в админке, затем уже и у партнёра будут видны.

Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, VaM сказал:

Модуль партнёрки точно рабочий и счета выписываются, проверено ведь годами.

Может дело в каких-то настройках.

Заказы вообще учитываются, комиссия считается?!

Проблема только с выплатами?!

Cчета надо ведь в админке вручную выписывать, в Админке - Партнёрка - Выплаты.

Только после того как выписаны счета и они видны в админке, затем уже и у партнёра будут видны.

да учтены, и вознаграждение у партнера видно (больше мин суммы выплаты)

Но Я как админ захожу в   admin/affiliate_payment.php ( Админке - Партнёрка - Выплаты )  и там вообще пусто. 

т.е вот.

"Вы заработали" есть данные

http://SSMaker.ru/13d78585/

http://SSMaker.ru/02204f9c/ - пусто

http://SSMaker.ru/bb20ca9d/ - настройки

Ссылка на сообщение
Поделиться на другие сайты

Так Выписать счета кнопку нажимали?!

Именно эта кнопка ведь создаёт счета для оплаты партнёрам.

Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, VaM сказал:

Так Выписать счета кнопку нажимали?!

Именно эта кнопка ведь создаёт счета для оплаты партнёрам.

http://SSMaker.ru/1cdf39ca/

 

в "продажи" данные есть

http://SSMaker.ru/15c6520e/

 

Ссылка на сообщение
Поделиться на другие сайты

Тогда надо смотреть php код, который выполняется при нажатии этой кнопки.

Видимо, какое-то условие не выполняется, поэтому и счета не выписываются.

Например вот та опция про количество дней.

Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, VaM сказал:

Тогда надо смотреть php код, который выполняется при нажатии этой кнопки.

Видимо, какое-то условие не выполняется, поэтому и счета не выписываются.

Например вот та опция про количество дней.

http://site.com/admin/affiliate_payment.php?pID=&action=start_billing

 

даже если поменять на http://site.com/admin/affiliate_payment.php?pID=1&action=start_billing - ничего неменяется

Ссылка на сообщение
Поделиться на другие сайты

По умолчанию точно всё работало, как в руководстве написано.

Я ж говорю, надо в /admin/affiliate_payment.php смотреть блок кода, который обрабатывает параметр start_billing

Там должны идти запросы на создание счетов.

Ссылка на сообщение
Поделиться на другие сайты
12 часа назад, VaM сказал:

По умолчанию точно всё работало, как в руководстве написано.

Я ж говорю, надо в /admin/affiliate_payment.php смотреть блок кода, который обрабатывает параметр start_billing

Там должны идти запросы на создание счетов.

 

разобрался в чем болячки.

 

в общем, не знаю как код был рабочим, если сравнивалось "горячее с красным"

      $time = mktime(1, 1, 1, date("m"), date("d") - AFFILIATE_BILLING_TIME, date("Y"));
      $oldday = date("Y-m-d", $time);   - тут мы получали дату

а тут мы в SQL ее сравнивали

      $sql="
        SELECT a.affiliate_id, sum(a.affiliate_payment) 
          FROM " . TABLE_AFFILIATE_SALES . " a, " . TABLE_ORDERS . " o 
          WHERE a.affiliate_billing_status != 1 and a.affiliate_orders_id = o.orders_id and o.orders_status >= " . AFFILIATE_PAYMENT_ORDER_MIN_STATUS . " and a.affiliate_date <= '" . $oldday . "' 
          GROUP by a.affiliate_id 
          having sum(a.affiliate_payment) >= '" . AFFILIATE_THRESHOLD . "'
        ";

 

Обращаем внимание на and a.affiliate_date <= '" . $oldday . "' 

т.е дату в формате 2016-01-13

 

в БД же дата хранится в формате 2016-01-13 11:44:22   т.е с часами.  (см скриншот)

http://SSMaker.ru/f2a135a1/

Отсюда и получали не работающий модуль.  

 

Ссылка на сообщение
Поделиться на другие сайты

а вот и еще одна ошибка с датой

лимитирующее число месяца вычиталось из текущей даты. а надо вычитать текущая дата - разница дат

в общем

$time = mktime(1, 1, 1, date("m"), (date("d") - (date("d") - AFFILIATE_BILLING_TIME)), date("Y"));

далее.

даты в таком виде (тем более в SQL) не дадут сравнения. и в зависимости от версии php будет всегда положительный или всегда отрицательный результат

 

по этому

$oldday = date("YmdHis", $time);

именно так должна выглядеть переменная

 

далее в SQL в циклах убираем сравнение дат, а вот в выборку добавляем дату a.affiliate_date

и уже в цикле сравниваем отформатированные даты как числа (ну или строки) (для зануд)

	  $newday = date("YmdHis", strtotime($affiliate_payment['affiliate_date']));	
	  //echo 'даза заказа'.$newday.' <= '.$oldday.'дата проверки'; 
	  
	 if ($newday <= $oldday) {	

 

и вот тогда у нас будет верно работать и выборка и сравнение дат и все такое прочее следующее

Ссылка на сообщение
Поделиться на другие сайты

Спасибо, проверим и если всё нормально, внесём правки в текущий код.

Хотя всё точно работало и без правок, может дело в конкретных настройках сервера.

Пока не могу сказать.

Ссылка на сообщение
Поделиться на другие сайты
  • 1 month later...

Проверил работу партнёрки, всё работает и без правок кода, т.е. счета выписываются.

Не знаю, может дело в версиях php, mysql на хостинге.

Но на php 5.5.9 и mysql 5.5.47 всё работает по умолчанию, правок никаких делать не надо.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...