Версия: 6.x
burger close
Класс AbstractType
Граф наследования:AbstractType:
Stub

Подробное описание

Класс абстрактного типа онлайн касс

Открытые члены

 __construct ()
 
 getTitle ()
 
 getShortName ()
 
 createReceipt (Transaction $transaction, $operation_type=self::OPERATION_SELL)
 
 makeAuth ()
 
 createCorrectionReceipt ($transaction_id, $form_object)
 
 getReceiptStatus (Receipt $receipt)
 
 onResultSell (HttpRequest $request)
 
 onResultRefund (HttpRequest $request)
 
 onResultCorrection (HttpRequest $request)
 
 getCorrectionReceiptFormObject ()
 
 getMaxReceiptLength ()
 
 setTimeout ($seconds)
 
 getTimeout ()
 
 getOption ($key=null, $default=null)
 
 createRequest ($url, $params=[], $headers=[], $ssl=true, $method= 'GET', $post_type= 'json', $answer_type= 'json')
 
 getCurrentDomainUrl ()
 
 addError ($message, $fieldname=null, $form=null)
 
 hasError ()
 
 getErrors ()
 
 getErrorsStr ()
 
 cleanErrors ()
 
 getCashRegisterTypeConfig ()
 
 getReceiptInfo (Receipt $receipt)
 

Открытые статические члены

static getTaxesList ()
 
static getLogFilename ()
 
static getMaxReceiptSize ()
 

Поля данных

const OPERATION_SELL = "sell"
 
const OPERATION_SELL_REFUND = "sell_refund"
 
const OPERATION_SELL_CORRECTION = "sell_correction"
 
const LOG_FILE = '/logs/cash_register.log'
 
const TAX_NONE = 'none'
 
const TAX_VAT0 = 'vat0'
 
const TAX_VAT10 = 'vat10'
 
const TAX_VAT18 = 'vat18'
 
const TAX_VAT110 = 'vat110'
 
const TAX_VAT118 = 'vat118'
 
const TAX_VAT20 = 'vat20'
 
const TAX_VAT120 = 'vat120'
 
const PAYMENT_TYPE_FROM_ADVANCE = 'from_advance'
 
const PAYMENT_TYPE_CACHLESS = 'cashless'
 

Защищенные члены

 getReceiptsFromProductsReturn (ProductsReturn $products_return, $operation_type)
 
 getReceiptsFromShipment (Shipment $shipment, $operation_type)
 
 getReceiptsFromOrder ($operation_type)
 
 getReceiptsForPersonalAccount ($operation_type)
 
 createReceiptRequest ($receipt, $operation_type)
 
 addReceiptItemsData (array $receipt, array $items, $operation_type)
 
 addReceiptOtherData (array $receipt, string $operation_type, int $receipt_number)
 
 getItemDataFromProductReturnItem (ProductsReturnOrderItem $product_return_item)
 
 getItemDataFromShipmentItem (ShipmentItem $shipment_item)
 
 getItemTaxData (string $tax_id)
 
 getRightTaxForProduct (Order $order, Product $product, $transaction_type= '')
 
 getRightTaxForDelivery (Order $order, Delivery $delivery, $transaction_type= '')
 
 fetchVatTax ($taxes, Address $address, $transaction_type= '')
 
 modifyReceiptItemData (array &$item_data)
 

Защищенные данные

 $timeout = 30
 
 $errors = []
 
 $log
 
 $log_file
 
 $config
 
 $transaction
 

Конструктор(ы)

__construct ( )

Конструктор класса

Методы

addError (   $message,
  $fieldname = null,
  $form = null 
)

Добавляет ошибку в список

Аргументы
string$message- сообщение об ошибке
string$fieldname- название поля
string$form- техническое имя поля (например, атрибут name у input)
addReceiptItemsData ( array  $receipt,
array  $items,
  $operation_type 
)
protected

Дополняет чек списком позиций

Аргументы
array$receipt- данные чека
array$items- позиции в чеке
string$operation_type- тип операции
Возвращает
array
addReceiptOtherData ( array  $receipt,
string  $operation_type,
int  $receipt_number 
)
abstractprotected

Добавляет в чек дополнительные данные

Аргументы
array$receipt- уже имеющиеся данные
string$operation_type- тип операции
int$receipt_number- порядковый номер чека в группе
Возвращает
array
cleanErrors ( )

Очищает ошибки

Возвращает
void
createCorrectionReceipt (   $transaction_id,
  $form_object 
)
abstract

Отправляет запрос на создание чека корректировки

Аргументы
$transaction_id- id транзакции
$form_object- объект с заполненными данными формы, возвращенной методом getCorrectionReceiptFormObject
createReceipt ( Transaction  $transaction,
  $operation_type = self::OPERATION_SELL 
)

Отправляет запрос на создание чека по транзакции

Аргументы
Transaction$transaction- объект транзакции
string$operation_type- тип чека, приход или возврат
Возвращает
bool
Исключения
RSException
createReceiptRequest (   $receipt,
  $operation_type 
)
abstractprotected

Выполняет запрос на создание чека

Аргументы
array$receipt- объект чека
string$operation_type- тип чека
Исключения
RSException
createRequest (   $url,
  $params = [],
  $headers = [],
  $ssl = true,
  $method = 'GET',
  $post_type = 'json',
  $answer_type = 'json' 
)

Отправляет запрос к АПИ провайдера обмена данными и возвращает результат в нужном типе. В ответ получает ответ либо false, если не удалось сделать запрос, либо результат в том типе, который указан в параметре

Аргументы
string$url- адрес на который отправить запрос
mixed$params- дополнительные параметры запроса
array$headers- массив дополнительных заголовков для запроса
boolean$ssl- Запрос по SSL защищённому соединению
string$method- метод отправки GET|POST
string$post_type- тип отправляемого ответа json|text|xml через POST
string$answer_type- тип принимаемого ответа json|text|xml
Возвращает
mixed|false
fetchVatTax (   $taxes,
Address  $address,
  $transaction_type = '' 
)
protected

Находит среди налогов НДС и возвращает его в виде идентификатора АТОЛ

Аргументы
Tax[]$taxes
Address$address
string$transaction_type- тип транзакции
Возвращает
string
getCashRegisterTypeConfig ( )

Возвращает настройки модуля Касс

Возвращает
object
getCorrectionReceiptFormObject ( )

Возвращает объект формы чека коррекции

Возвращает
FormObject|false Если false, то это означает, что кассовый модуль не поддерживает чеки коррекции
getCurrentDomainUrl ( )

Возвращает url текушего домена

Возвращает
string
getErrors ( )

Возвращает полный список ошибок

Возвращает
array
getErrorsStr ( )

Возвращает строку с ошибками

Возвращает
string
getItemDataFromProductReturnItem ( ProductsReturnOrderItem  $product_return_item)
protected

Возвращает данные для одной позиции в чеке на основе позиции возврата

Аргументы
ProductsReturnOrderItem$product_return_item
Возвращает
array
getItemDataFromShipmentItem ( ShipmentItem  $shipment_item)
protected

Возвращает данные для одной позиции в чеке на основе позиции отгрузки

Аргументы
ShipmentItem$shipment_item
Возвращает
array
getItemTaxData ( string  $tax_id)
abstractprotected

Возвращает данные налогов для позиции в чеке

Аргументы
string$tax_id- идентификатор налога
Возвращает
array
static getLogFilename ( )
static

Возвращает путь к логу для записи сообщений

getMaxReceiptLength ( )

Возвраает максимальное количество позиций в чеке

Возвращает
int
static getMaxReceiptSize ( )
static

Возвращает максимальное количество позиций в чеке

Возвращает
int
getOption (   $key = null,
  $default = null 
)

Получает значение опции онлайн кассы из модуля конфига модуля

Аргументы
string$key- ключ опции
mixed$default- значение по умолчанию
Возвращает
mixed
getReceiptInfo ( Receipt  $receipt)

Возвращает стандартизированный объект информации о чеке

Аргументы
Receipt$receiptОбъект чека
Возвращает
ReceiptInfo
getReceiptsForPersonalAccount (   $operation_type)
protected

Возвращает чек для пополнения/списания средств с лицевого счета

Аргументы
string$operation_type- тип чека, приход или возврат
Возвращает
array
getReceiptsFromOrder (   $operation_type)
protected

Возвращает двумерный массив из товаров на основе заказа. Ключи это порции товаров. Значения, это список товаров.

Аргументы
string$operation_type- тип чека, приход или возврат
Возвращает
array
getReceiptsFromProductsReturn ( ProductsReturn  $products_return,
  $operation_type 
)
protected

Возвращает двумерный массив из товаров на основе возврата. Ключи это порции товаров. Значения, это список товаров.

Аргументы
ProductsReturn$products_return- возврат
string$operation_type- тип чека, приход или возврат
Возвращает
array
getReceiptsFromShipment ( Shipment  $shipment,
  $operation_type 
)
protected

Возвращает двумерный массив из товаров на основе отрузки. Ключи это порции товаров. Значения, это список товаров.

Аргументы
Shipment$shipment- ортгрузка
string$operation_type- тип чека, приход или возврат
Возвращает
array
getReceiptStatus ( Receipt  $receipt)
abstract

Делает запрос на запрос статуса чека и возвращаетданные записывая их в чек, если произошли изменения

Аргументы
Receipt$receipt- объект чека
getRightTaxForDelivery ( Order  $order,
Delivery  $delivery,
  $transaction_type = '' 
)
protected

Возвращает налог, который присутствует у доставки

Аргументы
Order$order
Delivery$delivery
string$transaction_type- тип транзакции
Возвращает
string
getRightTaxForProduct ( Order  $order,
Product  $product,
  $transaction_type = '' 
)
protected

Возвращает правильный идентификатор налога у товара

Аргументы
Order$order- объект заказа
Product$product- объект товара
string$transaction_type- тип транзакции
Возвращает
string
getShortName ( )
abstract

Возвращает идентификатор данного типа онлайн кассы. (только англ. буквы)

Возвращает
string
static getTaxesList ( )
static

Возвращает поддерживаемый список налогов

Возвращает
array
getTimeout ( )

Возвращает таймаут для запроса

getTitle ( )
abstract

Возвращает название расчетного модуля (онлайн кассы)

Возвращает
string
hasError ( )

Возвращает true, если имеются ошибки

Возвращает
bool
makeAuth ( )

Перегружается у потомка, если для отправки чека необходима авторизация

Возвращает
boolean
modifyReceiptItemData ( array &  $item_data)
abstractprotected

Позволяет модифицировать данные по умолчанию для позиции в чеке

Аргументы
array$item_data- данные позиции в чеке
Возвращает
void
onResultCorrection ( HttpRequest  $request)
abstract

Функция обработки запроса продажи от провайдера чека коррекции

Аргументы
HttpRequest$request- объект запроса
onResultRefund ( HttpRequest  $request)
abstract

Функция обработки запроса продажи от провайдера чека возврата

Аргументы
HttpRequest$request- объект запроса
onResultSell ( HttpRequest  $request)
abstract

Функция обработки запроса продажи от провайдера чека продажи

Аргументы
HttpRequest$request- объект запроса
setTimeout (   $seconds)

Устанавливает таймаут на запрос

Аргументы
integer$seconds- количество секунд для таймаутов

Поля

$config
protected
$errors = []
protected
$log
protected
$log_file
protected
$timeout = 30
protected
$transaction
protected
const LOG_FILE = '/logs/cash_register.log'
const OPERATION_SELL = "sell"
const OPERATION_SELL_CORRECTION = "sell_correction"
const OPERATION_SELL_REFUND = "sell_refund"
const PAYMENT_TYPE_CACHLESS = 'cashless'
const PAYMENT_TYPE_FROM_ADVANCE = 'from_advance'
const TAX_NONE = 'none'
const TAX_VAT0 = 'vat0'
const TAX_VAT10 = 'vat10'
const TAX_VAT110 = 'vat110'
const TAX_VAT118 = 'vat118'
const TAX_VAT120 = 'vat120'
const TAX_VAT18 = 'vat18'
const TAX_VAT20 = 'vat20'