public interface LoyaltyPlugin
Modifier and Type | Method and Description |
---|---|
default DiscountCancellationResult |
cancelDiscount(Receipt receipt,
LoyaltyResult results)
Обрабатывает событие "отмена расчета скидок".
Событие наступает, например, в случае, если из режима оплат чека переходят обратно в режим добавления товаров (до того, как хотя бы одна оплата будет добавлена) или при аннулировании чека. |
LoyaltyResult |
doDiscount(Receipt receipt)
Подсчитает скидки и другие "преференции" лояльности для указанного чека.
|
default PreFiscalizationFeedback |
eventBeforeReceiptFiscalized(Receipt receipt,
LoyaltyResult loyResults)
Событие предфискализации.
|
default LoyProviderFeedback |
eventReceiptFiscalized(Receipt receipt,
LoyaltyResult loyResults)
Оповещение данного поставщика услуг лояльности о факте фискализации чека.
|
default LoyProviderFeedback |
onSendFeedback(LoyProviderFeedback feedback)
Попытка отправить указанный фидбэк в Процессинговый Центр данного поставщика "услуг лояльности".
|
LoyaltyResult doDiscount(Receipt receipt)
receipt
- чек, с уже данными скидками/преференциями другими "поставщиками лояльности"null
, если данный "поставщик лояльности" не активен (отключен), либо аргументы невалидны; иначе - вернет результат применения
программ лояльности от данного поставщика "услуг лояльности" к данному чекуdefault DiscountCancellationResult cancelDiscount(Receipt receipt, LoyaltyResult results)
receipt
- чек, отменить расчет скидок в котором необходимо.results
- результаты расчета скидок по данному чекуDiscountCancellationResult
, содержащую результаты отмены расчета скидок в плагине.default LoyProviderFeedback eventReceiptFiscalized(Receipt receipt, LoyaltyResult loyResults)
Предполагается, что получив это оповещение, поставщик лояльности подготовит данные обратной связи для своего процессингового центра (ПЦ) - чтоб оповестить его (ПЦ) о предоставленных преференциях в чеке.
receipt
- чек, что был фискализированloyResults
- преференции, что данный поставщик услуг лояльности предоставил в этом чекеnull
, если никакого фидбэка для процессинга не требуетсяdefault PreFiscalizationFeedback eventBeforeReceiptFiscalized(Receipt receipt, LoyaltyResult loyResults)
receipt
- - чек, который будет фискализированloyResults
- преференции, что данный поставщик услуг лояльности предоставил в этом чекеnull
, если никакого фидбэка для процессинга не требуетсяdefault LoyProviderFeedback onSendFeedback(LoyProviderFeedback feedback)
NOTE: данный метод будет вызываться периодически по мере обнаружения фидбэков, что данный поставщик "услуг лояльности" хотел бы передать в свой ПЦ.
feedback
- представление (XML, JSON-строка, base64, и проч.) фидбэка, что надо отправить.
NOTE: данный фидбэк был сформирован самим данным плагином лояльности: как результат метода eventReceiptFiscalized(Receipt, LoyaltyResult)
или onSendFeedback(LoyProviderFeedback)
null
, если более не надо пытаться отправить данный фидбэк в ПЦ (Процессинговый Центр) - по любой причине (либо фидбэк успешно доставлен,
либо фидбэк признан "битым" и потому не стоит более пытаться его отправить, т.к. ПЦ его все равно не сможет "понять");
полезной нагрузкой
, но с увеличенным количеством
LoyProviderFeedback.getAttemptsCount()
неудачных попыток отправки})