Публичное пространство

API Set10 ◾️ Настройка плагинов лояльности на кассе

Информация ниже приведена для касс версии по 10.2.51.х включительно. Начиная с версии 10.2.52.0 провайдер лояльности Set API включен по умолчанию.


Все плагины лояльности, использующие Set API, работают через один провайдер лояльности, который выполняет роль аггрегатора этих плагинов и позволяет кассе прозрачно работать с ними. Этот провайдер лояльности подключается так же, как и иные провайдеры лояльности - через crystal-cash/modules/loyalty/ext-loyalty-providers.xml. Сперва необходимо добавить в секцию beans новый провайдер лояльности:

	<bean id="set-api-loy-provider" class="ru.crystals.pos.loyal.SetApiPluginLoyProvider">
		<property name="actionsProvider" ref="loy-actions-provider"/>
	</bean>

Затем включить его в цепь провайдеров расчета скидок. Это делается в бине с идентификатором loy-providers-registry, свойства providers, секции list. Так этот бин выглядит обычно:

<bean id="loy-providers-registry" class="ru.crystals.loyal.providers.LoyProvidersRegistryImpl" init-method="init">
		<property name="providers">
			<list>
				<!-- классический SET10 калькулятор скидок -->
				<ref bean="classic-set10-loy-provider" />
			</list>
		</property>
		<!-- Интервал отправки отложенных фидбеков по скидкам -->
		<property name="staleFeedbackSendIntervalSeconds" value="120"/>
		<!--Максимальное отложенных фидбеков для отправки за одну итерацию для каждого провайдера -->
		<property name="maxStaleFeedbackToSend" value="5"/>
	</bean>

Чтобы включить провайдер плагинов лояльности в цепочку расчета скидок, необходимо в секцию list добавить новый элемент ref. Имейте в виду, что от порядка, в котором следуют элементы ref, зависит порядок расчета скидок. Так будет выглядеть бин с уже добавленным провайдером расчета скидок плагинами, использующими Set API, который будет передавать чек на расчет скидок плагинам сразу же после расчета скидок системой лояльности Set10:

<bean id="loy-providers-registry" class="ru.crystals.loyal.providers.LoyProvidersRegistryImpl" init-method="init">
		<property name="providers">
			<list>
				<!-- классический SET10 калькулятор скидок -->
				<ref bean="classic-set10-loy-provider" />
				<ref bean="set-api-loy-provider"/>
			</list>
		</property>
		<!-- Интервал отправки отложенных фидбеков по скидкам -->
		<property name="staleFeedbackSendIntervalSeconds" value="120"/>
		<!--Максимальное отложенных фидбеков для отправки за одну итерацию для каждого провайдера -->
		<property name="maxStaleFeedbackToSend" value="5"/>
	</bean>

Для того, чтобы плагину действительно было позволено считать скидки, необходимо завести РА с результатом "Внешняя система лояльности", где в списке плагинов лояльности указать нужный.

© 1994-2023, ООО «Кристалл Сервис Интеграция».
Все права защищены..

Политика обработки персональных данных