models

package
v0.1.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 5, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// команды принтера
	ReadShortStatus            = 16 // короткий статус принтера
	PrintReportWithoutClearing = 64 // Снять отчет без гашения
	WriteTable                 = 30 // запись в таблицу

	ReadFieldInfo    = 46  // Чтение инфо о поле
	ReadTable        = 31  // чтение из таблицы
	PrintReceiptCopy = 140 // Печать последнего чека

	ReadTableStruct = 45 // чтение структуры таблицы

	PrintSale = 128 // Добавление операции продажи в чек

	CloseCheck = 133 // Закрытие чека

	CancellationCheck = 136 // Отмена текущего чека

	// команды фискального накопителя
	FnReadStatus = 65281 // чтение статуса фискального накопителя

	WideRequest = 247 // расширенный запрос

	StartOpenShift = 65345 // начать открытие смены
	OpenShift      = 224   // открыть смену

	StartCloseShift = 65346 // начало закрытия смены
	ZReport         = 65    // суточный отчет с гашением, (закрытие смены)

	FNCancelCurrentDocument = 65288 // отменить открытый документ в фн

	FNCloseShift = 65347 // Закрытие фискальной смены

	OperationV2  = 65350 // Операция V2  означает начало продажи возврата продажи и тп по нвоому стандарту
	CloseCheckV2 = 65349 // Закрытие чека v2

	FnWriteTLV = 65292 // Передать произвольную TLV структуру

	SendTLVToOp = 65357 // Передать произвольную TLV структуру привязанную к операции
)
View Source
const (
	NUL = 0x00 // null пустой
	SOH = 0x01 // start of heading начало «заголовка»
	STX = 0x02 // start of text начало «текста»
	ENQ = 0x05 // enquire «Прошу подтверждения!»
	ACK = 0x06 // acknowledgement «Подтверждаю!»
	NAK = 0x15 // negative acknowledgment «Не подтверждаю!»
)
View Source
const (
	DefaultAttemptTimeout = 1000 * time.Millisecond
	MaxENQAttempts        = 3
)
View Source
const (
	OpenedShift               = 2
	OpenedShift24HoursExpired = 3
	ClosedShift               = 4
	OpenedCheckIncome         = 8
	OpenedCheckExpense        = 24
	OpenedCheckReturnIncome   = 40
	OpenedCheckReturnExpence  = 56
	OpenedCheckNonFiscal      = 72
)
View Source
const ErrLen = 1 // длинна кода ошибки

Variables

View Source
var (
	FSPrinterError01 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError01 = ФН: Неизвестная команда, неверный формат посылки или неизвестные параметры
	FSPrinterError02 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError02 = ФН: Неверное состояние ФН
	FSPrinterError03 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError03 = ФН: Ошибка ФН
	FSPrinterError04 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError04 = ФН: Ошибка КС
	FSPrinterError05 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError05 = ФН: Закончен срок эксплуатации ФН
	FSPrinterError06 = PrinterError{/* contains filtered or unexported fields */} //FSPrinterError06 = ФН: Архив ФН переполнен

	PrinterError33 = PrinterError{/* contains filtered or unexported fields */} // PrinterError33 = Некорректные параметры в команде

	PrinterError36 = PrinterError{/* contains filtered or unexported fields */} //

	PrinterError37 = PrinterError{/* contains filtered or unexported fields */} //

	PrinterError40 = PrinterError{/* contains filtered or unexported fields */} // PrinterError40 = Переполнение диапазона скидок
	PrinterError4F = PrinterError{/* contains filtered or unexported fields */}
	PrinterError50 = PrinterError{/* contains filtered or unexported fields */} // PrinterError50 = Идет печать предыдущей команды

	PrinterError54 = PrinterError{/* contains filtered or unexported fields */} // переполнение накоплений по типу оплаты 4 в смене

	PrinterError5E = PrinterError{/* contains filtered or unexported fields */}

	PrinterError69 = PrinterError{/* contains filtered or unexported fields */}
	PrinterError73 = PrinterError{/* contains filtered or unexported fields */} // Команда не поддерживается в данном режиме
	PrinterError7E = PrinterError{/* contains filtered or unexported fields */} //
	PrinterError8E = PrinterError{/* contains filtered or unexported fields */} // Нулевой итог чека

	PrinterError45 = PrinterError{/* contains filtered or unexported fields */}

	PrinterErrorUnknown = PrinterError{/* contains filtered or unexported fields */}
)

Functions

func CheckOnPrinterError

func CheckOnPrinterError(err byte) error

Types

type Cashier added in v0.1.3

type Cashier struct {
	Name string `json:"name"`
	INN  string `json:"inn"`
}

type CheckPackage

type CheckPackage struct {
	CashierINN string      `json:"cashierINN"`
	Operations []Operation `json:"operations"` // список операций в чеке
	Cash       int64       `json:"cash"`       // сумма оплаты наличными
	Casheless  int64       `json:"casheless"`  // сумма оплаты безналичными
	Rounding   byte        `json:"rounding"`   // округление до рубля, макс 99 копеек
	TaxSystem  byte        `json:"taxSystem"`  // система налогообложения
	BottomLine string      `json:"bottomLine"` // нижняя часть чека

	Electronic bool `json:"electronic"` // не печатать чек на бумаге
}

Пакет чека

type FieldValue

type FieldValue interface {
	Bytes() []byte
}

type Frame

type Frame struct {
	STX  byte
	DLEN byte
	CMD  []byte
	ERR  byte
	DATA []byte
	CRC  byte
}

func (*Frame) Bytes

func (f *Frame) Bytes() []byte

func (*Frame) CheckCRC

func (f *Frame) CheckCRC() error

type Operation

type Operation struct {
	Type    byte   `json:"type"`    // тип операции
	Amount  int64  `json:"amount"`  // количество товара
	Price   int64  `json:"price"`   // цена в копейках
	Sum     int64  `json:"sum"`     // сумма товар * цену
	Subject byte   `json:"subject"` // Предмет рассчета
	Name    string `json:"name"`    // Наименование продукта
}

Операции в чеке

type PrinterError

type PrinterError struct {
	// contains filtered or unexported fields
}

func (PrinterError) Error

func (err PrinterError) Error() string

func (PrinterError) Is

func (err PrinterError) Is(target error) bool

func (PrinterError) Unwrap

func (err PrinterError) Unwrap() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL