Модуль CardIssuance предназначен для возможности выдачи карты покупателю непосредственно на кассе.

Выдача карты покупателя может осуществляться в режиме продажи и возврата.

Конфигурирование модуля

Активация модуля выдачи карт на кассе определяется параметром cardIssuance, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardissuance.ini в секции [plugins].

Наименование
Тип данных
Возможные значения
Описание
Примечания

cardIssuance

строковый
  • on
  • off
Активация модуля "Выдача карт на кассе"По умолчанию off
Пример настройки
[plugins]
; Выдача карт на кассе
;cardIssuance = off

Настройка плагина cardIssuance производится в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardissuance.ini в секции [CardIssuance].

НаименованиеТип данныхВозможные значенияОписаниеПримечания
urlстроковый
URL для обращения к серверу

По умолчанию url = http://localhost:8094/v1/issuancecard/cardnumber.

Параметр является обязательным

timeoutцелочисленный
Таймаут соединения в секундахПо умолчанию 20 секунд
inputNameлогический
  • true
  • false
Вводить ФИО клиента

По умолчанию false

inputSexлогический
  • true
  • false
Вводить пол клиентаПо умолчанию false
inputBirthdayлогический
  • true
  • false
Вводить день рождения клиентаПо умолчанию false
inputSubscriptionлогический
  • true
  • false
Вводить согласие клиента на рассылкуПо умолчанию true
Пример настройки
[CardIssuance]
; URL для обращения к серверу
;url = http://localhost:8094/v1/issuancecard/cardnumber

; Таймаут соединения в секундах
; По умолчанию 20
;timeout = 20

; Вводить ФИО клиента
; По умолчанию false
;inputName = false

; Вводить пол клиента
; По умолчанию false
;inputSex = false

; Вводить день рождения клиента
; По умолчанию false
;inputBirthday = false

; Вводить согласие клиента на рассылку
; По умолчанию true
;inputSubscription = true

Выдача карты

Выдача покупателю карты клиента торговой сети может осуществляться непосредственно на кассе.

Для выдачи карты покупателю в утилите администрирования Yuki необходимо на клавишу настроить действие "Выдача карты" с командой COMMAND_CARDISSUANCE. О настройке действий подробнее можно прочитать в разделе "Настройка действий".

При нажатии на клавишу "Выдача карты" на экран выводится диалог создания нового клиента. Ввод номера телефона является обязательным. Отображение дополнительных полей ("ФИО клиента", "Дата рождения", "Пол" и "Согласие клиента на рассылку") определяется настройками в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardissuance.ini.

После заполнения данных клиента на экране отображается диалог ввода номера новой карты, на сервер отправляется запрос на выдачу карты. Если запрос:

  • выполнен успешно, то:
    • в БД сервера создается новый клиент;

    • клиенту назначается карта с введенным номером;

    • на сервере генерируется справочник с новыми данными для выгрузки на кассу.

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

В процессе выдачи карты возможны следующие ошибки:

  • если введенный номер телефона уже присвоен другим покупателям, то на экран будет выведена ошибка "Указанный номер телефона уже назначен на несколько пользователей";
  • если пользователь с введенным номером телефона уже зарегистрирован в БД сервера, то на экран будет выведена ошибка "Пользователь с указанным номером телефона создан и имеет карту";
  • если пользователь с введенным номером телефона уже зарегистрирован в БД кассы, то на экран будет выведена ошибка "Клиент уже зарегистрирован";
  • если введенный номер карты отсутствует в БД сервера, то на экран будет выведена ошибка "Карта с указанным номером не существует";
  • если группа карт не определена, то экран будет выведена ошибка "Карта не найдена";
  • если у карты уже есть клиент, то при попытке выдать такую карту, на экран будет выведена ошибка "Карта с указанным номером уже привязана к клиенту";
  • если при генерации справочника произошел сбой, то на экран будет выведена ошибка "Генерация справочника завершилась неуспешно";
  • если нет связи с сервером, то по истечению таймаута на экран будет выведена ошибка "Ошибка соединения с сервером".
  • No labels