Как запустить расчёт начислений вручную
Для расчёта начислений вручную используется команда:
/usr/local/mgr5/sbin/billmaintain --command affiliatemonthly --date YYYY-MM-DD
Если нужно перегенерировать начисления за реферальную программу:
- Удалите платежи реферальной программы.
- Удалите начисления вознаграждения из таблицы affiliatereward. Подробнее см. Как работает реферальная программа.
- Запустите команду, указанную выше.
Как установить награду больше 100%
Через интерфейс BILLmanager указать размер вознаграждения больше 100% нельзя. Чтобы это сделать:
-
Произведите запись в базу данных:
Пример записи в БДUPDATE affiliate SET reward = 1000;
Пояснения к записи в базу -
Почистите кэш БД командой:
Очистить кэш БДrm -rf /usr/local/mgr5/var/.db.cache*
-
Перезапустите BILLmanager командой:
Перезапуск BILLmanager/usr/local/mgr5/sbin/mgrctl -m billmgr exit
Как привязать реферала к другому клиенту
Чтобы привязать реферала к другому клиенту:
-
Сделайте запись в базу данных:
Пример записи в таблицу БДUPDATE account2project SET affiliatereferer = 3 WHERE account = 6;
Пояснения к записи в базу -
Почистите кэш БД командой:
Очистить кэш БДrm -rf /usr/local/mgr5/var/.db.cache*
-
Перезапустите BILLmanager командой:
Перезапуск BILLmanager/usr/local/mgr5/sbin/mgrctl -m billmgr exit
Если у реферера, к которому привязали клиента, нет доступа к реферальной программе, по которой привлечён клиент, то реферер не будет получать вознаграждение. В логе будет ошибка вида:
Пример ошибки в логеJan 24 15:25:49 [272:152] libmgr ERROR Error: Type: 'access' Object: 'affiliate' Value: '1'
При учёте вознагаждения BILLmanager использует значение поля affiliateprogram таблицы account2project для реферала.
Например, если реферер привязан к первой реферальной программе, а у реферала в account2project указана вторая, начисления рефереру будут производиться по ставке второй программы. Это нужно учитывать, если клиент меняет реферальную программу, так как поле affiliateprogram не меняется.