Функции работают только с сервисом счетчиков!
countersQuantByBcode – Значение счетчика количества товаров со штрих-кодом
countersQuantByBcode(idCounter, bcode, percent, limit, calcWhenLessLimit, alwaysCalcDiscount)
– функция проверяет значения счетчика и возвращает процент скидки в соответствии с количеством товара по штрих-коду.
Параметры функции:
idCounter
– идентификатор счетчика, указывается в одинарных кавычках, например '111'. Ведение счетчиков выполняется сервисом счетчиков, правила применения счетчика задаются в системе лояльности Artix Loyalty Management;bcode
– штрих-код (массив штрих-кодов) товара;percent
– размер скидки в процентах;limit
– количество товара, которым ограничивается применение скидки;calcWhenLessLimit
– параметр, определяющий необходимость предоставления скидки до достижения лимита или после его превышения (строго больше или меньше, при значении =limit условие не сработает):true
– лимит ограничен верхним уровнем (для акций вида – скидка при покупке до 5 единиц товара);false
– лимит ограничен нижним уровнем (для акций вида – скидка при покупке более 5 единиц товара);
alwaysCalcDiscount
– поведение при отсутствии связи с сервисом счетчиков (определяется в системе лояльности и подставляется в функцию):true
– при отсутствии связи с сервисом счетчиков скидка предоставляется, считается, что условие выполнено;false
– при отсутствии связи с сервисом счетчиков скидка не предоставляется, считается, что условие не выполнено.
В том случае, если счетчик акции в чеке не найден, то значение счетчика принимается равным 0.
cf.countersQuantByBcode('111', 456789123852, 10, 5, True, False)
rf.countersQuantByBcode('111', 456789123852, 10, 5, True, False)
countersQuantByCode – Значение счетчика количества товаров с кодом
countersQuantByCode(idCounter, code, percent, limit, calcWhenLessLimit, alwaysCalcDiscount)
– функция проверяет значения счетчика и возвращает процент скидки в соответствии с количеством товара по коду.
Параметры функции:
idCounter
– идентификатор счетчика, указывается в одинарных кавычках, например '111'. Ведение счетчиков выполняется сервисом счетчиков, правила применения счетчика задаются в системе лояльности Artix Loyalty Management;code
– код (массив кодов) товара;percent
– размер скидки в процентах;limit
– количество товара, которым ограничивается применение скидки;calcWhenLessLimit
– параметр, определяющий необходимость предоставления скидки до достижения лимита или после его превышения (строго больше или меньше, при значении =limit условие не сработает):true
– лимит ограничен верхним уровнем (для акций вида – скидка при покупке до 5 единиц товара);false
– лимит ограничен нижним уровнем (для акций вида – скидка при покупке более 5 единиц товара);
alwaysCalcDiscount
– поведение при отсутствии связи с сервисом счетчиков (определяется в системе лояльности и подставляется в функцию):true
– при отсутствии связи с сервисом счетчиков скидка предоставляется, считается, что условие выполнено;false
– при отсутствии связи с сервисом счетчиков скидка не предоставляется, считается, что условие не выполнено.
В том случае, если счетчик акции в чеке не найден, то значение счетчика принимается равным 0.
cf.countersQuantByCode('111', 444, 10, 4, False, True)
rf.countersQuantByBcode('111', 444, 10, 4, False, True)
countersQuantByCatalog – Значение счетчика количества товаров из каталога
countersQuantByCatalog(idCounter, catalog, percent, limit, calcWhenLessLimit, alwaysCalcDiscount)
– функция проверяет значения счетчика и возвращает процент скидки в соответствии с количеством товара из определенного каталога.
Параметры функции:
idCounter
– идентификатор счетчика, указывается в одинарных кавычках, например '111'. Ведение счетчиков выполняется сервисом счетчиков, правила применения счетчика задаются в системе лояльности Artix Loyalty Management;catalog
– каталог (массив каталогов) с товарами;percent
– размер скидки в процентах;limit
– количество товара, которым ограничивается применение скидки;calcWhenLessLimit
– параметр, определяющий необходимость предоставления скидки до достижения лимита или после его превышения (строго больше или меньше, при значении =limit условие не сработает):true
– лимит ограничен верхним уровнем (для акций вида – скидка при покупке до 5 единиц товара);false
– лимит ограничен нижним уровнем (для акций вида – скидка при покупке более 5 единиц товара);
alwaysCalcDiscount
– поведение при отсутствии связи с сервисом счетчиков (определяется в системе лояльности и подставляется в функцию):true
– при отсутствии связи с сервисом счетчиков скидка предоставляется, считается, что условие выполнено;false
– при отсутствии связи с сервисом счетчиков скидка не предоставляется, считается, что условие не выполнено.
В том случае, если счетчик акции в чеке не найден, то значение счетчика принимается равным 0.
cf.countersQuantByCatalog('111', ['14'], 10, 5, True, False)
rf.countersQuantByCatalog('111', ['14'], 10, 5, True, False)[object['posnum']]
countersQuantByGroup – Значение счетчика количества товаров из группы
countersQuantByGroup( idCounter, group, percent, limit, calcWhenLessLimit, alwaysCalcDiscount)
– функция проверяет значения счетчика и возвращает процент скидки в соответствии с количеством товара из определенной группы.
Параметры функции:
idCounter
– идентификатор счетчика, указывается в одинарных кавычках, например '111'. Ведение счетчиков выполняется сервисом счетчиков, правила применения счетчика задаются в системе лояльности Artix Loyalty Management;group
– группа (массив групп) товаров;percent
– размер скидки в процентах;limit
– количество товара, которым ограничивается применение скидки;calcWhenLessLimit
– параметр, определяющий необходимость предоставления скидки до достижения лимита или после его превышения (строго больше или меньше, при значении =limit условие не сработает):true
– лимит ограничен верхним уровнем (для акций вида – скидка при покупке до 5 единиц товара);false
– лимит ограничен нижним уровнем (для акций вида – скидка при покупке более 5 единиц товара);
alwaysCalcDiscount
– поведение при отсутствии связи с сервисом счетчиков (определяется в системе лояльности и подставляется в функцию):true
– при отсутствии связи с сервисом счетчиков скидка предоставляется, считается, что условие выполнено;false
– при отсутствии связи с сервисом счетчиков скидка не предоставляется, считается, что условие не выполнено.
В том случае, если счетчик акции в чеке не найден, то значение счетчика принимается равным 0.
cf.countersQuantByGroup('111', 26, 10, 5, True, False)
rf.countersQuantByBcode('111', 26, 10, 5, True, False)
countersQuantByAccumulation – Расчет индекса скидки по счетчику
countersQuantByAccumulation(idCounter, ranges, defaultIndex)
– функция проверяет значения счетчика и возвращает процент скидки в соответствии с вхождением счетчика в определенный диапазон значений.
Параметры функции:
idCounter
– идентификатор счетчика, указывается в одинарных кавычках, например '111'. Ведение счетчиков выполняется сервисом счетчиков, правила применения счетчика задаются в системе лояльности Artix Loyalty Management;ranges
– список диапазонов значений счетчика. Для карты может быть указано несколько диапазонов значения счетчика, каждому из которых будет присвоен определенный процент скидки. Например, [(0,4),(5,None)], где None – неограниченный верхний интервал;defaultIndex
– индекс скидки по умолчанию. Скидка с указанным индексом будет использована в том случае, когда отсутствует связь с сервером счетчиков:- 0 – будет использована скидка, указанная первой в расчетной ставке;
- -1 – скидка не предоставляется при отсутствии связи;
- номер индекса – соответствующий индекс в списке % скидок.
В том случае, если счетчик акции в чеке не найден, то значение счетчика принимается равным 0 и для него подбирается соответствующий диапазон.
cf.countersQuantByAccumulation('111',[(0,4),(5,None)],0) >= 0
[1,10,50][rf.countersQuantByAccumulation('111', [(0,4),(5,None)],0)],