- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/paysystem/restservice.php
- Класс: BitrixSalePaySystemRestService
- Вызов: RestService::checkParamsBeforeSettingsByPaymentGet
static function checkParamsBeforeSettingsByPaymentGet(array $params)
{
if (empty($params['PAY_SYSTEM_ID']))
{
throw new RestException('Empty field PAY_SYSTEM_ID!', self::ERROR_CHECK_FAILURE);
}
if (empty($params['PAYMENT_ID']))
{
throw new RestException('Empty field PAYMENT_ID', self::ERROR_CHECK_FAILURE);
}
$item = Manager::getById($params['PAY_SYSTEM_ID']);
if (!$item)
{
throw new RestException('Pay system not found', static::ERROR_CHECK_FAILURE);
}
if (!self::hasAccessToPaySystem($item, $params['APP_ID']))
{
throw new AccessException();
}
$registry = Registry::getInstance(Registry::REGISTRY_TYPE_ORDER);
/** @var Payment $paymentClassName */
$paymentClassName = $registry->getPaymentClassName();
$dbRes = $paymentClassName::getList([
'select' => ['ID', 'PAY_SYSTEM_ID'],
'filter' => [
'=ID' => $params['PAYMENT_ID'],
'=PAY_SYSTEM_ID' => $params['PAY_SYSTEM_ID']
]
]);
if (!$dbRes->fetch())
{
throw new RestException(
'Payment with ID='
. $params['PAYMENT_ID']
. ' and PAY_SYSTEM_ID='.$params['PAY_SYSTEM_ID']
. ' not found', self::ERROR_CHECK_FAILURE
);
}
}