...Человеческий поиск в разработке...
- Модуль: sender
- Путь к файлу: ~/bitrix/modules/sender/lib/integration/crm/companycard.php
- Класс: Bitrix\Sender\Integration\Crm\CompanyCard
- Вызов: CompanyCard::getRequisites
static function getRequisites() { // get my company id $myCompanyId = Requisite\EntityLink::getDefaultMyCompanyId(); if (!$myCompanyId) { return null; } // get requisites $req = new EntityRequisite; $res = $req->getList(array( 'filter' => array( '=ENTITY_TYPE_ID' => \CCrmOwnerType::Company, '=ENTITY_ID' => $myCompanyId ) )); $data = $res->fetch(); if (!$data) { return null; } // prepare requisites $result = array(); foreach ($data as $key => $value) { if (mb_substr($key, 0, 3) == 'RQ_') { $result[$key] = $value; } } // format person name $result[EntityRequisite::PERSON_FULL_NAME] = \CUser::formatName( Format\PersonNameFormatter::getFormat(), array( 'NAME' => $result[EntityRequisite::PERSON_FIRST_NAME], 'LAST_NAME' => $result[EntityRequisite::PERSON_LAST_NAME], 'SECOND_NAME' => $result[EntityRequisite::PERSON_SECOND_NAME], ) ); // get address requisites $addresses = EntityRequisite::getAddresses($data['ID']); $addressTypes = array( EntityAddressType::Registered ); $address = null; foreach ($addressTypes as $addressType) { if (isset($addresses[$addressType])) { $address = $addresses[$addressType]; } } if (!$address && count($addresses) > 0) { $address = current($addresses); } if ($address && is_array($address)) { $address = Format\AddressFormatter::getSingleInstance()->formatTextComma($address); } else { // get address from entity fields $address = \CCrmCompany::getByID($myCompanyId, false); if (!is_array($address)) { $address = array(); } if ($address['REG_ADDRESS']) { $addressTypeId = EntityAddressType::Registered; } else { $addressTypeId = EntityAddressType::Primary; } $address = Format\AddressFormatter::getSingleInstance()->formatTextComma( CompanyAddress::mapEntityFields($address, ['TYPE_ID' => $addressTypeId]) ); } $result['COMPANY_ADDRESS'] = $address; return $result; }