- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/cashbox/cashboxorangedata.php
- Класс: BitrixSaleCashboxCashboxOrangeData
- Вызов: CashboxOrangeData::buildCorrectionCheckQuery
public function buildCorrectionCheckQuery(CorrectionCheck $check)
{
$data = $this->getCheckData($check);
$calculatedSignMap = $this->getCalculatedSignMap();
$result = [
'id' => static::buildUuid(static::UUID_TYPE_CHECK, $data['unique_id']),
'inn' => $this->getValueFromSettings('SERVICE', 'INN'),
'group' => $this->getField('NUMBER_KKM') ?: null,
'key' => $this->getValueFromSettings('SECURITY', 'KEY_SIGN') ?: null,
'content' => [
'type' => $calculatedSignMap[$data['calculated_sign']],
'correctionType' => $this->getCorrectionTypeMap($data['correction_info']['type']),
'causeDocumentDate' => $this->getCorrectionCauseDocumentDate($data['correction_info']),
'causeDocumentNumber' => $this->getCorrectionCauseDocumentNumber($data['correction_info']),
'totalSum' => $this->getCorrectionTotalSum($data['correction_info']),
'taxationSystem' => $this->getValueFromSettings('TAX', 'SNO')
],
];
foreach ($data['payments'] as $payment)
{
if ($payment['type'] === Check::PAYMENT_TYPE_CASH)
{
$result['content']['cashSum'] = (float)$payment['sum'];
}
else
{
$result['content']['eCashSum'] = (float)$payment['sum'];
}
}
$vats = $this->getVatsByCheckData($data);
if (is_array($vats))
{
foreach ($vats as $vat)
{
$result['content'][$vat['code']] = $vat['value'];
}
}
return $result;
}