...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/activity/communicationwidgetpanel.php
- Класс: Bitrix\Crm\Activity\CommunicationWidgetPanel
- Вызов: CommunicationWidgetPanel::getActivityRowData
static function getActivityRowData($isSupervisor = false) { $rowData = array(); if (Provider\OpenLine::isActive()) { $openLines = self::getProviderTypes(Provider\OpenLine::className()); foreach ($openLines as $line) { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'total_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => $line['NAME'] )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM') ) ) ) ) ) ) ); $rowData[] = array( 'height' => 380, 'cells' => array( array( 'controls' => array( array( 'title' => Loc::getMessage('CRM_COMM_WGT_STATUSES'), 'typeName' => 'pie', 'group' => 'STATUS', 'configs' => array( array( 'name' => 'status_qty', 'dataPreset' => 'ACTIVITY_STATUS_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL', 'dataSource' => 'ACTIVITY_STATUS_STATS', 'select' => array('name' => 'TOTAL') ) ) ) ) )/*, array( 'controls' => array( array( 'title' => Loc::getMessage('CRM_COMM_WGT_MARKS'), 'typeName' => 'pie', 'group' => 'MARK', 'configs' => array( array( 'name' => 'marks_qty', 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'TOTAL') ) ) ) ) )*/ ) ); $rowData[] = array( 'height' => 380, 'cells' => array( array( 'controls' => array( array( 'title' => Loc::getMessage('CRM_COMM_WGT_SOURCES'), 'typeName' => 'bar', 'group' => 'SOURCE', 'context' => 'E', 'combineData' => 'Y', 'enableStack' => 'N', 'integersOnly' => 'Y', 'configs' => array( array( 'name' => 'qty_total', 'title' => Loc::getMessage('CRM_COMM_WGT_MARK_ALL'), 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'TOTAL', 'aggregate' => 'SUM') )/*, array( 'name' => 'qty_positive', 'title' => Loc::getMessage('CRM_COMM_WGT_MARK_POSITIVE'), 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':POSITIVE_QTY', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'POSITIVE_QTY', 'aggregate' => 'SUM') ), array( 'name' => 'qty_negative', 'title' => Loc::getMessage('CRM_COMM_WGT_MARK_NEGATIVE'), 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':NEGATIVE_QTY', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'NEGATIVE_QTY', 'aggregate' => 'SUM') ), array( 'name' => 'qty_nomark', 'title' => Loc::getMessage('CRM_COMM_WGT_MARK_NONE'), 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':NONE_QTY', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'NONE_QTY', 'aggregate' => 'SUM') )*/ ) ) ) ) ) ); } } else { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'custom', 'configs' => array( array( 'name' => 'provider_status', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array( '#PROVIDER_NAME#' => Provider\OpenLine::getName() )), 'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\OpenLine::getId(), 'dataSource' => 'ACTIVITY_PROVIDER_STATUS', 'select' => array('name' => Provider\OpenLine::getId()), 'display' => array('colorScheme' => 'yellow') ) ) ) ) ) ) ); } $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'call_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\Call::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\Call::getId().':CALL:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM') ) ) ) ) ) ) ); if (Provider\Call::isActive()) { $rowData[] = array( 'height' => 380, 'cells' => array( array( 'controls' => array( array( 'title' => Loc::getMessage('CRM_COMM_WGT_STREAMS'), 'typeName' => 'pie', 'group' => 'STREAM', 'configs' => array( array( 'name' => 'source_qty', 'dataPreset' => 'ACTIVITY_STREAM_STATS::'.Provider\Call::getId().':CALL:TOTAL', 'dataSource' => 'ACTIVITY_STREAM_STATS', 'select' => array('name' => 'TOTAL') ) ) ) ) ), array( 'controls' => array( array( 'title' => Loc::getMessage('CRM_COMM_WGT_MARKS'), 'typeName' => 'pie', 'group' => 'MARK', 'configs' => array( array( 'name' => 'source_qty', 'dataPreset' => 'ACTIVITY_MARK_STATS::'.Provider\Call::getId().':CALL:TOTAL', 'dataSource' => 'ACTIVITY_MARK_STATS', 'select' => array('name' => 'TOTAL') ) ) ) ) ) ) ); } else { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'custom', 'configs' => array( array( 'name' => 'provider_status', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array( '#PROVIDER_NAME#' => Provider\Call::getName() )), 'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\Call::getId(), 'dataSource' => 'ACTIVITY_PROVIDER_STATUS', 'select' => array('name' => Provider\Call::getId()), 'display' => array('colorScheme' => 'yellow') ) ) ) ) ) ) ); } $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'meeting_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\Meeting::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\Meeting::getId().':*:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM') ) ) ) ) ) ) ); $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'email_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\Email::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\Email::getId().':*:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'), 'display' => array('colorScheme' => 'green') ) ) ) ) ), array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'lf_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\Livefeed::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\Livefeed::getId().':*:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'), 'display' => array('colorScheme' => 'yellow') ) ) ) ) ) ) ); if (Provider\ExternalChannel::isActive()) { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'total_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\ExternalChannel::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\ExternalChannel::getId().':*:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'), 'display' => array('colorScheme' => 'blue') ) ) ) ) ), array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'total_sum', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_SUM', array( '#PROVIDER_NAME#' => Provider\ExternalChannel::getName() )), 'dataPreset' => 'ACTIVITY_SUM_STATS::'.Provider\ExternalChannel::getId().':*:SUM_TOTAL', 'dataSource' => 'ACTIVITY_SUM_STATS', 'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'), 'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'), 'display' => array('colorScheme' => 'red') ) ) ) ) ) ) ); } else { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'custom', 'configs' => array( array( 'name' => 'provider_status', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array( '#PROVIDER_NAME#' => Provider\ExternalChannel::getName() )), 'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\ExternalChannel::getId(), 'dataSource' => 'ACTIVITY_PROVIDER_STATUS', 'select' => array('name' => Provider\ExternalChannel::getId()), 'display' => array('colorScheme' => 'yellow') ) ) ) ) ) ) ); } if (Provider\WebForm::isActive()) { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'total_qty', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_TOTAL_QTY', array( '#PROVIDER_NAME#' => Provider\WebForm::getName() )), 'dataPreset' => 'ACTIVITY_STATS::'.Provider\WebForm::getId().':*:TOTAL_QTY', 'dataSource' => 'ACTIVITY_STATS', 'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM') ) ) ) ) ), array( 'controls' => array( array( 'typeName' => 'number', 'configs' => array( array( 'name' => 'total_sum', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_SUM', array( '#PROVIDER_NAME#' => Provider\WebForm::getName() )), 'dataPreset' => 'ACTIVITY_SUM_STATS::'.Provider\WebForm::getId().':*:SUM_TOTAL', 'dataSource' => 'ACTIVITY_SUM_STATS', 'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'), 'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N') ) ) ) ) ) ) ); } else { $rowData[] = array( 'height' => 180, 'cells' => array( array( 'controls' => array( array( 'typeName' => 'custom', 'configs' => array( array( 'name' => 'provider_status', 'title' => Loc::getMessage('CRM_COMM_WGT_PROVIDER_STATUS', array( '#PROVIDER_NAME#' => Provider\WebForm::getName() )), 'dataPreset' => 'ACTIVITY_PROVIDER_STATUS::'.Provider\WebForm::getId(), 'dataSource' => 'ACTIVITY_PROVIDER_STATUS', 'select' => array('name' => Provider\WebForm::getId()), 'display' => array('colorScheme' => 'yellow') ) ) ) ) ) ) ); } return $rowData; }