...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/classes/general/restservice.php
- Класс: \CCrmAddressTypeRestProxy
- Вызов: CCrmAddressTypeRestProxy::processMethodRequest
public function processMethodRequest($name, $nameDetails, $arParams, $nav, $server) { $name = mb_strtoupper($name); if ($name === 'GETAVAILABLE') { $result = []; $descriptions = EntityAddressType::getDescriptions(EntityAddressType::getAvailableIds()); foreach($descriptions as $k => $v) { $result[] = array('ID' => $k, 'NAME' => $v); } return $result; } else if ($name === 'GETZONEMAP') { $result = []; foreach (EntityAddressType::getZoneMap() as $zoneId => $zoneInfo) { $info = ['ID' => $zoneId]; foreach ($zoneInfo as $paramName => $paramValue) { $info[mb_strtoupper($paramName)] = $paramValue; } $result[] = $info; } return $result; } else if ($name === 'GETDEFAULTBYZONE') { $addressZoneId = (string)$this->resolveParam($arParams, 'ID'); return EntityAddressType::getDefaultIdByZone($addressZoneId); } else if ($name === 'GETDEFAULTIDBYENTITYCATEGORY') { $entityTypeId = (int)$this->resolveParam($arParams, 'ENTITY_TYPE_ID'); $categoryId = (int)$this->resolveParam($arParams, 'CATEGORY_ID'); return EntityAddressType::getDefaultIdByEntityCategory($entityTypeId, $categoryId); } else if ($name === 'GETDEFAULTIDBYENTITYID') { $entityTypeId = (int)$this->resolveParam($arParams, 'ENTITY_TYPE_ID'); $entityId = (int)$this->resolveParam($arParams, 'ENTITY_ID'); return EntityAddressType::getDefaultIdByEntityId($entityTypeId, $entityId); } else if ($name === 'GETBYZONESORVALUES') { $zoneIds = $this->resolveArrayParam($arParams, 'ID'); $values = $this->resolveArrayParam($arParams, 'VALUE'); if (!is_array($zoneIds)) { $zoneIds = [$zoneIds]; } foreach ($zoneIds as $k => $v) { $zoneIds[$k] = (string)$zoneIds[$k]; } if (!is_array($values)) { $values = [$values]; } foreach ($values as $k => $v) { $values[$k] = (int)$values[$k]; } $result = []; foreach (EntityAddressType::getDescriptionsByZonesOrValues($zoneIds, $values) as $typeId => $description) { $result[] = ['ID' => $typeId, 'NAME' => $description]; } return $result; } throw new RestException("Resource '{$name}' is not supported in current context."); }