ru.bitel.bgbilling.plugins.cashcheck.common

## Interface CashcheckService

-     public interface CashcheckService

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `DataMap<java.lang.String,java.lang.Object>` | `bindPrinter(int registratorId, java.lang.String password)` Привязка принтера к пользователю.
    `DataMap<java.lang.String,java.lang.Object>` | `buzzer()` Гудок.
    `DataMap<java.lang.String,java.lang.Object>` | `cancelCheck()` Аннулирование чека.
    `DataMap<java.lang.String,java.lang.Object>` | `closeCheckFix(java.math.BigDecimal summa)` Полуотладочная фишка - закрывает чек на зависшем принтере, да, увы бывает такое, надо признать.
    `DataMap<java.lang.String,java.lang.Object>` | `continuePrint()` Продолжение печати (например после отсутствия бумаги итд итп)
    `DataMap<java.lang.String,java.lang.Object>` | `divReport()` Отчёт по сменам.
    `DataMap<java.lang.String,java.lang.Object>` | `getCurrentPrinter()`
    `DataMap<java.lang.String,java.lang.Object>` | `getRegistratorStatus()` Статус устройства.
    `DataMap<java.lang.String,java.lang.Object>` | `helloPrinter(int registratorId, java.lang.String password)` Привет.
    `Result<Payment>` | `logTable(int printerId, Period period, Page page)` Получение лога уже напечатанных платажей.
    `DataMap<java.lang.String,java.lang.Object>` | `printCheck(java.util.List<java.lang.Integer> idlist, java.math.BigDecimal clientsumma)` Печать чека.
    `DataMap<java.lang.String,java.lang.Object>` | `printText(java.lang.String text)`
    `DataMap<java.lang.String,java.lang.Object>` | `queueTable(Period period, Page page)` Список очереди нераспечатанных.
    `DataMap<java.lang.String,java.lang.Object>` | `registratorList()` Возвращает список регистраторов.
    `DataMap<java.lang.String,java.lang.Object>` | `repeatCheck()` Повтор последнего документа
    `DataMap<java.lang.String,java.lang.Object>` | `returnCheck(java.math.BigDecimal summa, int divisionNumber)` Возврат продажи.
    `DataMap<java.lang.String,java.lang.Object>` | `sendPureCommand(java.lang.String hexdump)` Выполнение любой бинарной команды.
    `DataMap<java.lang.String,java.lang.Object>` | `XReport()`
    `DataMap<java.lang.String,java.lang.Object>` | `ZReport()`

- - ### Method Detail

    - #### bindPrinter

          DataMap<java.lang.String,java.lang.Object> bindPrinter(int registratorId,
                                                                 java.lang.String password)
                                                          throws BGPrinterNotloggedMessageException,
                                                                 ru.bitel.bgbilling.common.BGMessageException,
                                                                 ru.bitel.bgbilling.common.BGException

      Привязка принтера к пользователю. Сохраняет для юзера номер регистратора и пароль. Пробует просто снять статус регистратора с этим паролем. Если всё прошло как нельзя лучше - данные сохраняются, иначе в любом случае все данные о залогинивании, увы, стираются. Принимает регистратор, который мы хотим привязать к себе и его пароль:
      Parameters:
        `registratorId` - ид регистратора, или 0 если надо сделать разлогин.
        `password` - пароль принтера.
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`

    - #### buzzer

          DataMap<java.lang.String,java.lang.Object> buzzer()
                                                     throws BGPrinterNotloggedMessageException,
                                                            ru.bitel.bgbilling.common.BGMessageException,
                                                            ru.bitel.bgbilling.common.BGException

      Гудок.
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`

    - #### cancelCheck

          DataMap<java.lang.String,java.lang.Object> cancelCheck()
                                                          throws BGPrinterNotloggedMessageException,
                                                                 ru.bitel.bgbilling.common.BGMessageException,
                                                                 ru.bitel.bgbilling.common.BGException

      Аннулирование чека.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### closeCheckFix

          DataMap<java.lang.String,java.lang.Object> closeCheckFix(java.math.BigDecimal summa)
                                                            throws BGPrinterNotloggedMessageException,
                                                                   ru.bitel.bgbilling.common.BGMessageException,
                                                                   ru.bitel.bgbilling.common.BGException

      Полуотладочная фишка - закрывает чек на зависшем принтере, да, увы бывает такое, надо признать.
      Parameters:
        `summa` - сумма.
      Returns:
        сдача.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### continuePrint

          DataMap<java.lang.String,java.lang.Object> continuePrint()
                                                            throws BGPrinterNotloggedMessageException,
                                                                   ru.bitel.bgbilling.common.BGMessageException,
                                                                   ru.bitel.bgbilling.common.BGException

      Продолжение печати (например после отсутствия бумаги итд итп)
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### divReport

          DataMap<java.lang.String,java.lang.Object> divReport()
                                                        throws BGPrinterNotloggedMessageException,
                                                               ru.bitel.bgbilling.common.BGMessageException,
                                                               ru.bitel.bgbilling.common.BGException

      Отчёт по сменам. Нефискальный.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### getCurrentPrinter

          DataMap<java.lang.String,java.lang.Object> getCurrentPrinter()
                                                                throws BGPrinterNotloggedMessageException,
                                                                       ru.bitel.bgbilling.common.BGMessageException,
                                                                       ru.bitel.bgbilling.common.BGException

      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### getRegistratorStatus

          DataMap<java.lang.String,java.lang.Object> getRegistratorStatus()
                                                                   throws BGPrinterNotloggedMessageException,
                                                                          ru.bitel.bgbilling.common.BGMessageException,
                                                                          ru.bitel.bgbilling.common.BGException

      Статус устройства.
      Returns:
        строка статуса разбитая по линиям итд.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### helloPrinter

          DataMap<java.lang.String,java.lang.Object> helloPrinter(int registratorId,
                                                                  java.lang.String password)
                                                           throws BGPrinterNotloggedMessageException,
                                                                  ru.bitel.bgbilling.common.BGMessageException,
                                                                  ru.bitel.bgbilling.common.BGException

      Привет. Проверяется наличие принтера и пробуется туда приветствие напечатать. Никаких действий по запоминанию логина после логина не производится. Регистратор, который мы хотим проверить и его пароль:
      Parameters:
        `registratorId` -
        `password` - пароль (если не задан, то пытаемся взять куда залогинены. это если в клиенте уже вошли на этот момент)
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`

    - #### printCheck

          DataMap<java.lang.String,java.lang.Object> printCheck(java.util.List<java.lang.Integer> idlist,
                                                                java.math.BigDecimal clientsumma)
                                                         throws BGPrinterNotloggedMessageException,
                                                                ru.bitel.bgbilling.common.BGMessageException,
                                                                ru.bitel.bgbilling.common.BGException

      Печать чека. Вызывается аж из трёх сейчас мест - из очереди, из списка платежей в контракте, и из диалога добавления прихода, при условии, что стоит галочка. Сейчас для всех этих трёх способов разницы тут нет - везде передаётся только ИД платежа, возможно, несколько (несколько можно напечатать из всех трёх мест: при печати из лога, из таблицы платежей и по галке, если стоит распределение платежей). Также сумма от клиента используется. Внутри уже проверяется возможность печати итд.
      Parameters:
        `idlist` - несколько ИД платежей.
        `clientsumma` - сумма от клиента.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### printText

          DataMap<java.lang.String,java.lang.Object> printText(java.lang.String text)
                                                        throws BGPrinterNotloggedMessageException,
                                                               ru.bitel.bgbilling.common.BGMessageException,
                                                               ru.bitel.bgbilling.common.BGException

      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### queueTable

          DataMap<java.lang.String,java.lang.Object> queueTable(Period period,
                                                                Page page)
                                                         throws BGPrinterNotloggedMessageException,
                                                                ru.bitel.bgbilling.common.BGMessageException,
                                                                ru.bitel.bgbilling.common.BGException

      Список очереди нераспечатанных. Подразумевается выбранный принтер.
      Parameters:
        `period` - период
        `page` - пагинация
      Returns:
        атрибут table_data - Result<Payment> не null всегда., registratorName - имя регистратора.
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`

    - #### registratorList

          DataMap<java.lang.String,java.lang.Object> registratorList()
                                                              throws BGPrinterNotloggedMessageException,
                                                                     ru.bitel.bgbilling.common.BGMessageException,
                                                                     ru.bitel.bgbilling.common.BGException

      Возвращает список регистраторов. В атрибуте list будет ArrayList<Printer>.
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### repeatCheck

          DataMap<java.lang.String,java.lang.Object> repeatCheck()
                                                          throws BGPrinterNotloggedMessageException,
                                                                 ru.bitel.bgbilling.common.BGMessageException,
                                                                 ru.bitel.bgbilling.common.BGException

      Повтор последнего документа
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### returnCheck

          DataMap<java.lang.String,java.lang.Object> returnCheck(java.math.BigDecimal summa,
                                                                 int divisionNumber)
                                                          throws BGPrinterNotloggedMessageException,
                                                                 ru.bitel.bgbilling.common.BGMessageException,
                                                                 ru.bitel.bgbilling.common.BGException

      Возврат продажи.
      Parameters:
        `summa` - сумма
        `divisionNumber` - отдел
      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### sendPureCommand

          DataMap<java.lang.String,java.lang.Object> sendPureCommand(java.lang.String hexdump)
                                                              throws BGPrinterNotloggedMessageException,
                                                                     ru.bitel.bgbilling.common.BGMessageException,
                                                                     ru.bitel.bgbilling.common.BGException

      Выполнение любой бинарной команды.
      Parameters:
        `hexdump` - дамп в виде hex.
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`

    - #### XReport

          DataMap<java.lang.String,java.lang.Object> XReport()
                                                      throws BGPrinterNotloggedMessageException,
                                                             ru.bitel.bgbilling.common.BGMessageException,
                                                             ru.bitel.bgbilling.common.BGException

      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### ZReport

          DataMap<java.lang.String,java.lang.Object> ZReport()
                                                      throws BGPrinterNotloggedMessageException,
                                                             ru.bitel.bgbilling.common.BGMessageException,
                                                             ru.bitel.bgbilling.common.BGException

      Throws:
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`
        `ru.bitel.bgbilling.common.BGException`

    - #### logTable

          Result<Payment> logTable(int printerId,
                                   Period period,
                                   Page page)
                            throws BGPrinterNotloggedMessageException,
                                   ru.bitel.bgbilling.common.BGMessageException,
                                   ru.bitel.bgbilling.common.BGException

      Получение лога уже напечатанных платажей. Выбранный принтер не учитывается.
      Parameters:
        `printerId` - фильтр по ККМ, или 0, если по всем
        `period` - период
        `page` - пагинация
      Returns:
        список платежей в виде Result. Список не null всегда.
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `BGPrinterNotloggedMessageException`
        `ru.bitel.bgbilling.common.BGMessageException`