- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/cashbox/rest/cashboxservice.php
- Класс: BitrixSaleCashboxRestCashboxService
- Вызов: CashboxService::addCashbox
static function addCashbox($params, $page, $server)
{
HelpersRestAccessChecker::checkAccessPermission();
$params = self::prepareHandlerParams($params, $server);
self::checkParamsBeforeAddCashbox($params);
$settings = $params['SETTINGS'] ?: [];
$settings['REST']['REST_CODE'] = $params['REST_CODE'];
$cashboxFields = [
'NAME' => $params['NAME'],
'HANDLER' => '\' . CashboxRest::class,
'OFD' => empty($params['OFD']) ? '' : self::getOfdHandlerClassByCode($params['OFD']),
'OFD_SETTINGS' => $params['OFD_SETTINGS'] ?: [],
'EMAIL' => $params['EMAIL'],
'NUMBER_KKM' => empty($params['NUMBER_KKM']) ? '' : $params['NUMBER_KKM'],
'KKM_ID' => empty($params['KKM_ID']) ? '' : $params['KKM_ID'],
'ACTIVE' => ($params['ACTIVE'] === 'Y') ? 'Y' : 'N',
'SORT' => is_numeric($params['SORT']) ? (int)$params['SORT'] : 100,
'USE_OFFLINE' => ($params['USE_OFFLINE'] === 'Y') ? 'Y' : 'N',
'ENABLED' => 'Y',
'SETTINGS' => $settings,
];
$result = Manager::add($cashboxFields);
if ($result->isSuccess())
{
return $result->getId();
}
$errors = implode("n", $result->getErrorMessages());
throw new RestException($errors, self::ERROR_CASHBOX_ADD);
}