...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/integration/main/uiselector/crmsmartinvoices.php
- Класс: Bitrix\Crm\Integration\Main\UISelector\CrmSmartInvoices
- Вызов: CrmSmartInvoices::getData
public function getData($params = []) { $entityType = Handler::ENTITY_TYPE_CRMSMART_INVOICES; $result = [ 'ITEMS' => [], 'ITEMS_LAST' => [], 'ITEMS_HIDDEN' => [], 'ADDITIONAL_INFO' => [ 'GROUPS_LIST' => [ 'crmsmart_invoices' => [ 'TITLE' => Loc::getMessage('MAIN_UI_SELECTOR_TITLE_CRMSMART_INVOICE'), 'TYPE_LIST' => [ $entityType ], 'DESC_LESS_MODE' => 'N', 'SORT' => 40 ] ], 'SORT_SELECTED' => 400 ] ]; if (!InvoiceSettings::getCurrent()->isSmartInvoiceEnabled()) { return $result; } $entityOptions = $params['options'] ?? []; $prefix = static::getPrefix($entityOptions); $lastItems = $params['lastItems'] ?? []; $lastEntitiesIdList = []; if(!empty($lastItems[$entityType . '_MULTI'])) { if(!empty($lastItems[$entityType])) { $result['ITEMS_LAST'] = array_map( static function($code) use ($prefix) { return preg_replace('/^'.self::PREFIX_FULL . '(\d+)$/', $prefix . '$1', $code); }, array_values($lastItems[$entityType]) ); foreach ($lastItems[$entityType] as $value) { $lastEntitiesIdList[] = str_replace(self::PREFIX_FULL, '', $value); } } } $entitiesList = []; $list = Container::getInstance()->getFactory(static::getOwnerType())->getItemsFilteredByPermissions([ 'order' => ['ID' => 'DESC'], 'limit' => 10, 'select' => [ Item::FIELD_NAME_ID, Item::FIELD_NAME_TITLE, Item::FIELD_NAME_BEGIN_DATE, Item::FIELD_NAME_CREATED_TIME, ], ]); foreach ($list as $item) { $entitiesList[$prefix . $item['ID']] = static::prepareEntity($item, $entityOptions); } if (empty($lastEntitiesIdList)) { $result['ITEMS_LAST'] = array_keys($entitiesList); } $result['ITEMS'] = $entitiesList; return $result; }