java.lang.Object
ru.bitel.bgbilling.plugins.cashcheck.common.Check
Direct Known Subclasses:
Check

public class Check extends Object
Используется для формирования последовательностей линий чека. Этот же объект передаётся в скрипты формирования вида чека. После этого отсюда получается список строк для непосредственной посылки в сервер печати. Основной код чека, используется во всех фискализаторах.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Класс "линия чека", либо продажа(позиция), либо просто строка (когда сумма и отдел равны -1) В сервере печати используется так же: Строка чека.
    static class 
    Шорткат для установки сложных вложенных тегов в чек/позицию.
    static enum 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected String
     
    protected String
     
    protected Check.Type
    тип чека: приход, возврат прихода, итд сделан чтобы можно было теоретически поменять в скрипте тип с прихода на возврат (например печатать чек возврата прихода на отрицательные платежи) также используется чтобы печатать чек коррекции прихода вместо чека прихода
    protected String
    Установленный "адрес пользователя" мыло/телефон.
    protected Map<Integer,Object>
    Доп. теги.
    static final String
    строка которая символизирует отрезку чека, например, в команде драйвера printtext
    protected Date
     
    protected String
     
    список линий чека, заполняем сначала этот список теперь, а не сразу текстовые строки, чтобы иметь возможность гибкого манипулирования позициями, суммами итд
    static final int
    Атрибуты агента (к позиции): [Тег: 1222] Признак агента по предмету расчета * 0 (bank_payment_agent) - оказание услуг покупателю (клиенту) пользователем, являющимся банковским платежным агентом * 1 (bank_payment_subagent) - оказание услуг покупателю (клиенту) пользователем, являющимся банковским платежным субагентом * 2 (payment_agent) - оказание услуг покупателю (клиенту) пользователем, являющимся платежным агентом * 3 (payment_subagent) - оказание услуг покупателю (клиенту) пользователем, являющимся платежным субагентом * 4 (solicitor) - осуществление расчета с покупателем (клиентом) пользователем, являющимся поверенным * 5 (commissionaire) - осуществление расчета с покупателем (клиентом) пользователем, являющимся комиссионером * 6 (agent) - осуществление расчета с покупателем (клиентом) пользователем, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом), поверенным, комиссионером
    static final int
    Атрибуты поставщика (к позиции): [Тег: 1226] ИНН поставщика
    static final int
    Атрибуты поставщика (к позиции): [Тег: 1225] Наименование поставщика
    static final int
    Атрибуты поставщика (к позиции): [Тег: 1171] Телефоны поставщика.
    protected boolean
    Только электронный чек, на бумаге не печатать
    static final int
    Тип платежа (для setPaymentType) - карта/электронные/безналичные (1081 Сумма по чеку безналичными)
    static final int
    Тип платежа (для setPaymentType) - наличные (1031 сумма по чеку (БСО) наличными)
    static final int
    Тип платежа (для setPaymentType) - постоплата (кредит) (1216 Сумма по чеку постоплатой (кредит))
    static final int
    Тип платежа (для setPaymentType) - иная форма оплаты (встречное предоставление) (1217 Сумма по чеку встречным представлением)
    static final int
    Тип платежа (для setPaymentType) - предварительная оплата (зачет аванса и (или) предыдущих платежей) (1215 Сумма по чеку предоплатой (зачет аванса и (или) предыдущих платежей))
    protected BigDecimal
    считаем сумму, по всем пунктам чека.
    protected Integer
    тип оплаты (он один на весь чек, не на каждую позицию)
    protected Integer
     
    static final int
    3 Аванс "АВАНС"
    static final int
    6 Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит "ПЕРЕДАЧА В КРЕДИТ"
    static final int
    7 Оплата предмета расчета после его передачи с оплатой в кредит (оплата кредита) "ОПЛАТА КРЕДИТА"
    static final int
    4 Полная оплата, в том числе с учетом аванса (предварительной оплаты) в момент передачи предмета расчета "ПОЛНЫЙ РАСЧЕТ" или "4"
    static final int
    1 Полная предварительная оплата до момента передачи предмета расчета "ПРЕДОПЛАТА 100%"
    static final int
    5 Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит "ЧАСТИЧНЫЙ РАСЧЕТ И КРЕДИТ"
    static final int
    2 Частичная предварительная оплата до момента передачи предмета расчета "ПРЕДОПЛАТА"
    protected Integer
     
    static final int
    11 о вознаграждении пользователя, являющегося платежным агентом (субагентом), банковским платежным агентом (субагентом), комиссионером, поверенным или иным агентом "АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ" или "АВ"
    static final int
    13 о предмете расчета, не относящемуся к предметам расчета, которым может быть присвоено значение от "1" до "11" и от "14" до "26" "ИНОЙ ПРЕДМЕТ РАСЧЕТА" или "ИПР" или может не печататься
    static final int
    1 о реализуемом товаре, за исключением подакцизного товара (наименование и иные сведения, описывающие товар) "ТОВАР" или "Т" или может не печататься
    static final int
    3 о выполняемой работе (наименование и иные сведения, описывающие работу) "РАБОТА" или "Р" или может не печататься
    static final int
    10 об авансе, задатке, предоплате и кредите "ПЛАТЕЖ" или "П" или может не печататься
    static final int
    4 об оказываемой услуге (наименование и иные сведения, описывающие услугу) "УСЛУГА" или "У" или может не печататься
    protected Integer
    налог, налоговая группа итд. задаётся на весь чек одним числом.
    static final int
    Тип налога/ндс (для setTax) – НДС по ставке 0%
    static final int
    Тип налога/ндс (для setTax) – НДС чека по ставке 10%
    static final int
    Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 10/110
    static final int
    Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 18/118 (историческое)
    static final int
    Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 20/120
    static final int
    Тип налога/ндс (для setTax) – НДС чека по ставке 18% (историческое)
    static final int
    Тип налога/ндс (для setTax) – НДС чека по ставке 20%
    static final int
    Тип налога/ндс (для setTax) – без НДС
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    Check(Check.Type checkType)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected static void
     
    protected static BigDecimal
    округление входящих сюда сумм, ибо если например передаются суммы из наработки или каким-то делением полученные, то получатся суммы большой точности и некоторые фискализаторы сходят с ума. если точность была меньше точности чем два после запятой - всё равно для общности всё приводится к Х.ХХ
    void
    addPayment(BigDecimal summa, String string, int dep)
    Добавление строки продажи.
    void
    addPayment(BigDecimal summa, String string, int dep, Integer payMethod, Integer payObject)
     
    void
    addPayment(BigDecimal summa, String string, int dep, Integer payMethod, Integer payObject, Integer tax)
    Добавление строки продажи с указанием специфичных признаков способа и объекта расчёта.
    void
    addString(String string)
    Добавление строки текста.
     
     
    получение текстового представления сожержимого чека в том виде котором оно отдаётся на сервер печати
     
     
     
    дата документа, используется в некоторых системах
     
    Список линий чека, как платежей, так и каментов.
     
     
    Признак способа расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    Признак предмета расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    Метод возвращающий список строк для передачи его к клиенту посылки на удалённый сервер печати.
     
    boolean
    Признак "только электронный чек, без печати на ленту".
    static Check
    processCommandCheckParameters(String[] parameters, org.apache.logging.log4j.Logger logger)
    Разбирает параметры команды "check".
    void
    setCashierINN(String cashierINN)
     
    void
    setCashierName(String cashierName)
     
    void
     
    void
    setCustomerEmail(String customerEmail)
    установка "адреса пользователя" - мыло/телефон
    void
    setDocumentDate(Date documentDate)
    дата документа, используется в некоторых системах
    void
    setDocumentId(int documentId)
     
    void
    setDocumentId(String documentId)
     
    void
    setLastPaymentTag(int tag, byte[] value)
    Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции"
    void
    setLastPaymentTag(int tag, long value)
    Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" целочисленного
    void
    setLastPaymentTag(int tag, String value)
    Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" строкового
    void
    setLastPaymentTag(int tag, Check.STAG value)
    Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" вложенного тега, внутри мэп с ключом [целое], значение [целое/строка]
    void
    setOnlyElCheck(boolean onlyElCheck)
    Установка признака "только электронный чек, без печати на ленту".
    void
    setPaymentType(int paymentType)
    Установка типа оплаты (если используется и протокол позволяет)
    void
    setPayMethod(int payMethod)
    Признак способа расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    void
    setPayObject(int payObject)
    Признак предмета расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    void
    setTag(int tag, byte[] value)
    установка произвольного тега
    void
    setTag(int tag, long value)
    установка произвольного целочисленного тега
    void
    setTag(int tag, String value)
    установка произвольного строкового тега
    void
    setTag(int tag, Check.STAG value)
    установка вложенного тега, внутри мэп с ключом [целое], значение [целое/строка]
    void
    setTax(int tax)
    Установка налога/налоговой группы (если используется и протокол позволяет)
    static byte[]
    STLV(byte[]... tlvs)
    создаёт общую структуру из нескольких переданных TLV-структур
    static byte[]
    TLV(int tag, byte[] value)
     
    static byte[]
    TLV(int tag, long value, int len)
     
    static byte[]
    TLV(int tag, String value, String charsetName)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • paymentsum

      protected BigDecimal paymentsum
      считаем сумму, по всем пунктам чека. В том числе, если clientsumma не передана, мы подставим её туда, будто клиент дал
    • lines

      protected List<Check.CheckLine> lines
      список линий чека, заполняем сначала этот список теперь, а не сразу текстовые строки, чтобы иметь возможность гибкого манипулирования позициями, суммами итд
    • paymentType

      protected Integer paymentType
      тип оплаты (он один на весь чек, не на каждую позицию)
    • tax

      protected Integer tax
      налог, налоговая группа итд. задаётся на весь чек одним числом. хотя например в штрихе задаётся и на продажную позицию и на закрытие чека, также в штрихе можно задать tax1...tax4, но используем только первую
    • customerEmail

      protected String customerEmail
      Установленный "адрес пользователя" мыло/телефон.
    • onlyElCheck

      protected boolean onlyElCheck
      Только электронный чек, на бумаге не печатать
    • customTags

      protected Map<Integer,Object> customTags
      Доп. теги. Они могут быть строкой, целым(long), массивом байт, типом STAG (Map) для вложенных тегов. В новом виде передаётся каждый тип по-разному.
    • payMethod

      protected Integer payMethod
    • payObject

      protected Integer payObject
    • checkType

      protected Check.Type checkType
      тип чека: приход, возврат прихода, итд сделан чтобы можно было теоретически поменять в скрипте тип с прихода на возврат (например печатать чек возврата прихода на отрицательные платежи) также используется чтобы печатать чек коррекции прихода вместо чека прихода
    • cashierName

      protected String cashierName
    • cashierINN

      protected String cashierINN
    • documentDate

      protected Date documentDate
    • documentId

      protected String documentId
    • CUT_TEXT_COMMAND

      public static final String CUT_TEXT_COMMAND
      строка которая символизирует отрезку чека, например, в команде драйвера printtext
      See Also:
    • OFD_TAG_SUPPLIER_INFO_PHONES

      public static final int OFD_TAG_SUPPLIER_INFO_PHONES
      Атрибуты поставщика (к позиции): [Тег: 1171] Телефоны поставщика. Номер телефона необходимо передать вместе с кодом страны без пробелов и дополнительных символов.
      See Also:
    • OFD_TAG_SUPPLIER_INFO_NAME

      public static final int OFD_TAG_SUPPLIER_INFO_NAME
      Атрибуты поставщика (к позиции): [Тег: 1225] Наименование поставщика
      See Also:
    • OFD_TAG_SUPPLIER_INFO_INN

      public static final int OFD_TAG_SUPPLIER_INFO_INN
      Атрибуты поставщика (к позиции): [Тег: 1226] ИНН поставщика
      See Also:
    • OFD_TAG_AGENT_INFO_TYPE

      public static final int OFD_TAG_AGENT_INFO_TYPE
      Атрибуты агента (к позиции): [Тег: 1222] Признак агента по предмету расчета * 0 (bank_payment_agent) - оказание услуг покупателю (клиенту) пользователем, являющимся банковским платежным агентом * 1 (bank_payment_subagent) - оказание услуг покупателю (клиенту) пользователем, являющимся банковским платежным субагентом * 2 (payment_agent) - оказание услуг покупателю (клиенту) пользователем, являющимся платежным агентом * 3 (payment_subagent) - оказание услуг покупателю (клиенту) пользователем, являющимся платежным субагентом * 4 (solicitor) - осуществление расчета с покупателем (клиентом) пользователем, являющимся поверенным * 5 (commissionaire) - осуществление расчета с покупателем (клиентом) пользователем, являющимся комиссионером * 6 (agent) - осуществление расчета с покупателем (клиентом) пользователем, являющимся агентом и не являющимся банковским платежным агентом (субагентом), платежным агентом (субагентом), поверенным, комиссионером
      See Also:
    • PAY_CASH

      public static final int PAY_CASH
      Тип платежа (для setPaymentType) - наличные (1031 сумма по чеку (БСО) наличными)
      See Also:
    • PAY_CARD

      public static final int PAY_CARD
      Тип платежа (для setPaymentType) - карта/электронные/безналичные (1081 Сумма по чеку безналичными)
      See Also:
    • PAY_PREPAYMENT

      public static final int PAY_PREPAYMENT
      Тип платежа (для setPaymentType) - предварительная оплата (зачет аванса и (или) предыдущих платежей) (1215 Сумма по чеку предоплатой (зачет аванса и (или) предыдущих платежей))
      See Also:
    • PAY_CREDIT

      public static final int PAY_CREDIT
      Тип платежа (для setPaymentType) - постоплата (кредит) (1216 Сумма по чеку постоплатой (кредит))
      See Also:
    • PAY_OTHER

      public static final int PAY_OTHER
      Тип платежа (для setPaymentType) - иная форма оплаты (встречное предоставление) (1217 Сумма по чеку встречным представлением)
      See Also:
    • VAT_NO

      public static final int VAT_NO
      Тип налога/ндс (для setTax) – без НДС
      See Also:
    • VAT_0

      public static final int VAT_0
      Тип налога/ндс (для setTax) – НДС по ставке 0%
      See Also:
    • VAT_10

      public static final int VAT_10
      Тип налога/ндс (для setTax) – НДС чека по ставке 10%
      See Also:
    • VAT_18

      public static final int VAT_18
      Тип налога/ндс (для setTax) – НДС чека по ставке 18% (историческое)
      See Also:
    • VAT_110

      public static final int VAT_110
      Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 10/110
      See Also:
    • VAT_118

      public static final int VAT_118
      Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 18/118 (историческое)
      See Also:
    • VAT_20

      public static final int VAT_20
      Тип налога/ндс (для setTax) – НДС чека по ставке 20%
      See Also:
    • VAT_120

      public static final int VAT_120
      Тип налога/ндс (для setTax) – НДС чека по расчетной ставке 20/120
      See Also:
    • PAYMETHOD_FULL_PREPAYMENT

      public static final int PAYMETHOD_FULL_PREPAYMENT
      1 Полная предварительная оплата до момента передачи предмета расчета "ПРЕДОПЛАТА 100%"
      See Also:
    • PAYMETHOD_PREPAYMENT

      public static final int PAYMETHOD_PREPAYMENT
      2 Частичная предварительная оплата до момента передачи предмета расчета "ПРЕДОПЛАТА"
      See Also:
    • PAYMETHOD_ADVANCE

      public static final int PAYMETHOD_ADVANCE
      3 Аванс "АВАНС"
      See Also:
    • PAYMETHOD_FULL_PAYMENT

      public static final int PAYMETHOD_FULL_PAYMENT
      4 Полная оплата, в том числе с учетом аванса (предварительной оплаты) в момент передачи предмета расчета "ПОЛНЫЙ РАСЧЕТ" или "4"
      See Also:
    • PAYMETHOD_PARTIAL_PAYMENT

      public static final int PAYMETHOD_PARTIAL_PAYMENT
      5 Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит "ЧАСТИЧНЫЙ РАСЧЕТ И КРЕДИТ"
      See Also:
    • PAYMETHOD_CREDIT

      public static final int PAYMETHOD_CREDIT
      6 Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит "ПЕРЕДАЧА В КРЕДИТ"
      See Also:
    • PAYMETHOD_CREDIT_PAYMENT

      public static final int PAYMETHOD_CREDIT_PAYMENT
      7 Оплата предмета расчета после его передачи с оплатой в кредит (оплата кредита) "ОПЛАТА КРЕДИТА"
      See Also:
    • PAYOBJECT_COMMODITY

      public static final int PAYOBJECT_COMMODITY
      1 о реализуемом товаре, за исключением подакцизного товара (наименование и иные сведения, описывающие товар) "ТОВАР" или "Т" или может не печататься
      See Also:
    • PAYOBJECT_JOB

      public static final int PAYOBJECT_JOB
      3 о выполняемой работе (наименование и иные сведения, описывающие работу) "РАБОТА" или "Р" или может не печататься
      See Also:
    • PAYOBJECT_SERVICE

      public static final int PAYOBJECT_SERVICE
      4 об оказываемой услуге (наименование и иные сведения, описывающие услугу) "УСЛУГА" или "У" или может не печататься
      See Also:
    • PAYOBJECT_PAYMENT

      public static final int PAYOBJECT_PAYMENT
      10 об авансе, задатке, предоплате и кредите "ПЛАТЕЖ" или "П" или может не печататься
      See Also:
    • PAYOBJECT_AGENT_COMMISSION

      public static final int PAYOBJECT_AGENT_COMMISSION
      11 о вознаграждении пользователя, являющегося платежным агентом (субагентом), банковским платежным агентом (субагентом), комиссионером, поверенным или иным агентом "АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ" или "АВ"
      See Also:
    • PAYOBJECT_ANOTHER

      public static final int PAYOBJECT_ANOTHER
      13 о предмете расчета, не относящемуся к предметам расчета, которым может быть присвоено значение от "1" до "11" и от "14" до "26" "ИНОЙ ПРЕДМЕТ РАСЧЕТА" или "ИПР" или может не печататься
      See Also:
  • Constructor Details

    • Check

      public Check(Check.Type checkType)
    • Check

      public Check()
  • Method Details

    • addString

      public void addString(String string)
      Добавление строки текста.
      Parameters:
      string - строка.
    • addPayment

      public void addPayment(BigDecimal summa, String string, int dep)
      Добавление строки продажи.
      Parameters:
      summa - сумма.
      string - название позиции (если используется и протокол позволяет).
      dep - "отдел" в ККМ (если используется и протокол позволяет, иначе ставьте 0).
      See Also:
    • addPayment

      public void addPayment(BigDecimal summa, String string, int dep, Integer payMethod, Integer payObject)
    • _roundSum

      protected static BigDecimal _roundSum(BigDecimal summa)
      округление входящих сюда сумм, ибо если например передаются суммы из наработки или каким-то делением полученные, то получатся суммы большой точности и некоторые фискализаторы сходят с ума. если точность была меньше точности чем два после запятой - всё равно для общности всё приводится к Х.ХХ
    • addPayment

      public void addPayment(BigDecimal summa, String string, int dep, Integer payMethod, Integer payObject, Integer tax)
      Добавление строки продажи с указанием специфичных признаков способа и объекта расчёта.
      Parameters:
      summa - сумма, должна быть не null, сумма сразу приводится к двум знакам точности.
      string - название позиции (если используется и протокол позволяет).
      dep - "отдел" в ККМ (если используется и протокол позволяет, иначе ставьте 0).
      payMethod - признак способа расчёта позиции, не задано: null
      payObject - признак предмета расчёта позиции, не задано: null
      tax - налог для позиции, не задано: null
      See Also:
    • setLastPaymentTag

      public void setLastPaymentTag(int tag, String value)
      Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" строкового
    • setLastPaymentTag

      public void setLastPaymentTag(int tag, long value)
      Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" целочисленного
    • setLastPaymentTag

      public void setLastPaymentTag(int tag, byte[] value)
      Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции"
    • setLastPaymentTag

      public void setLastPaymentTag(int tag, Check.STAG value)
      Добавление к предыдущей позиции (addPayment) тега, "привязанного к позиции" вложенного тега, внутри мэп с ключом [целое], значение [целое/строка]
    • setPaymentType

      public void setPaymentType(int paymentType)
      Установка типа оплаты (если используется и протокол позволяет)
      Parameters:
      paymentType - тип оплаты
    • setTax

      public void setTax(int tax)
      Установка налога/налоговой группы (если используется и протокол позволяет)
      Parameters:
      tax - налог/налоговая группа
    • setOnlyElCheck

      public void setOnlyElCheck(boolean onlyElCheck)
      Установка признака "только электронный чек, без печати на ленту".
    • isOnlyElCheck

      public boolean isOnlyElCheck()
      Признак "только электронный чек, без печати на ленту".
    • getPlines

      public List<String> getPlines()
      Метод возвращающий список строк для передачи его к клиенту посылки на удалённый сервер печати.
      Returns:
      список строк
    • getPaymentsum

      public BigDecimal getPaymentsum()
    • getLines

      public List<Check.CheckLine> getLines()
      Список линий чека, как платежей, так и каментов.
      Returns:
      лист объектов
    • getPaymentType

      public Integer getPaymentType()
    • getTax

      public Integer getTax()
    • setCustomerEmail

      public void setCustomerEmail(String customerEmail)
      установка "адреса пользователя" - мыло/телефон
    • getCustomerEmail

      public String getCustomerEmail()
    • setTag

      public void setTag(int tag, String value)
      установка произвольного строкового тега
    • setTag

      public void setTag(int tag, long value)
      установка произвольного целочисленного тега
    • setTag

      public void setTag(int tag, byte[] value)
      установка произвольного тега
    • setTag

      public void setTag(int tag, Check.STAG value)
      установка вложенного тега, внутри мэп с ключом [целое], значение [целое/строка]
    • setPayMethod

      public void setPayMethod(int payMethod)
      Признак способа расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    • setPayObject

      public void setPayObject(int payObject)
      Признак предмета расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    • getPayMethod

      public Integer getPayMethod()
      Признак способа расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    • getPayObject

      public Integer getPayObject()
      Признак предмета расчёта, вообще это атрибут позиции чека, но здесь оно на весь чек задаётся
    • getCheckType

      public Check.Type getCheckType()
      Returns:
      текущий тип чека (теоретически может быть незадан на данный момент).
    • setCheckType

      public void setCheckType(Check.Type checkType)
      Parameters:
      \u043d\u0430\u0441\u0438\u043b\u044c\u043d\u0430\u044f - установка типа чека.
    • getCustomTags

      public Map<Integer,Object> getCustomTags()
    • TLV

      public static byte[] TLV(int tag, String value, String charsetName)
    • TLV

      public static byte[] TLV(int tag, long value, int len)
    • TLV

      public static byte[] TLV(int tag, byte[] value)
    • STLV

      public static byte[] STLV(byte[]... tlvs)
      создаёт общую структуру из нескольких переданных TLV-структур
    • setCashierName

      public void setCashierName(String cashierName)
      Parameters:
      cashierName - значение кассир (1021) для чеков
    • setCashierINN

      public void setCashierINN(String cashierINN)
      Parameters:
      cashierINN - значение инн кассира (1203) для чеков
    • getCashierName

      public String getCashierName()
    • getCashierINN

      public String getCashierINN()
    • getCheckData

      public String getCheckData()
      получение текстового представления сожержимого чека в том виде котором оно отдаётся на сервер печати
    • getDocumentDate

      public Date getDocumentDate()
      дата документа, используется в некоторых системах
    • setDocumentDate

      public void setDocumentDate(Date documentDate)
      дата документа, используется в некоторых системах
    • getDocumentId

      public String getDocumentId()
    • setDocumentId

      public void setDocumentId(int documentId)
    • setDocumentId

      public void setDocumentId(String documentId)
    • _CUSTOMTAG_decode

      protected static void _CUSTOMTAG_decode(String t, Map<Integer,Object> customTags)
    • processCommandCheckParameters

      public static Check processCommandCheckParameters(String[] parameters, org.apache.logging.log4j.Logger logger) throws ru.bitel.bgbilling.common.BGException
      Разбирает параметры команды "check". Заполеняет переданный массив CheckLine. И вычисляет сумму общую по чеку. Первые два параметра не трогает. Заполняет последовательность вида чека строка+платёж, так и доп.параметры чека - налог, тип платежа, ОФД-инфу всякую итд. Вынесен общий код, вот так немного криво вынесен. По идее надо было наследовать итд, но архитектура к тому моменту другая была. Надо рефакторить на досуге.
      Throws:
      DriverException
      ru.bitel.bgbilling.common.BGException