CommunicationWidgetPanel::getDemoRowData

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. CommunicationWidgetPanel
  4. getDemoRowData
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/activity/communicationwidgetpanel.php
  • Класс: Bitrix\Crm\Activity\CommunicationWidgetPanel
  • Вызов: CommunicationWidgetPanel::getDemoRowData
static function getDemoRowData($entityTypeId, $isSupervisor = false)
{
	$entityPrefix = \CCrmOwnerType::ResolveName($entityTypeId);

	$externalChannelCells = 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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\ExternalChannel::getId().':*:TOTAL_QTY',
							'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
							'select'     => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
							'display' => array('colorScheme' => 'blue')
						)
					)
				)
			)
		)
	);

	if ($entityTypeId === \CCrmOwnerType::Company)
	{
		$externalChannelCells[] = 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' => $entityPrefix.'_ACTIVITY_SUM_STATS::'.Provider\ExternalChannel::getId().':*:SUM_TOTAL',
							'dataSource' => $entityPrefix.'_ACTIVITY_SUM_STATS',
							'select'     => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
							'format'     => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
							'display' => array('colorScheme' => 'red')
						)
					)
				)
			)
		);
	}

	$rowData = array(
		array(
			'height' => 380,
			'cells' => array(
				array(
					'controls' => array(
						array(
							'title' => Loc::getMessage('CRM_COMM_WGT_GROWTH'),
							'typeName' => 'graph',
							'group' => 'DATE',
							'configs' => array(
								array(
									'name' => 'total_qty',
									'title' => Loc::getMessage('CRM_COMM_WGT_'.$entityPrefix.'_GROWTH_COUNT'),
									'dataPreset' => $entityPrefix.'_GROWTH_STATS::TOTAL_COUNT',
									'dataSource' => $entityPrefix.'_GROWTH_STATS',
									'select' => array('name' => 'TOTAL_COUNT')
								)
							)
						)
					)
				),
				array(
					'controls' => array(
						array(
							'title' => Loc::getMessage('CRM_COMM_WGT_COMMUNICATIONS'),
							'typeName' => 'pie',
							'group' => 'PROVIDER_ID',
							'configs' => array(
								array(
									'name' => 'source_qty',
									'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::TOTAL_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
									'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
								)
							)
						)
					)
				)
			)
		),
		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\OpenLine::getName()
									)),
									'dataPreset' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\OpenLine::getId().':*:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
									'select'     => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_STATUS_STATS::'.Provider\OpenLine::getId().':*:TOTAL',
									'dataSource' => $entityPrefix.'_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' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':*:TOTAL',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'TOTAL')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':*:TOTAL',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'TOTAL', 'aggregate' => 'SUM')
								),
								array(
									'name'       => 'qty_positive',
									'title'      => Loc::getMessage('CRM_COMM_WGT_MARK_POSITIVE'),
									'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':*:POSITIVE_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'POSITIVE_QTY', 'aggregate' => 'SUM')
								),
								array(
									'name'       => 'qty_negative',
									'title'      => Loc::getMessage('CRM_COMM_WGT_MARK_NEGATIVE'),
									'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':*:NEGATIVE_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'NEGATIVE_QTY', 'aggregate' => 'SUM')
								),
								array(
									'name'       => 'qty_nomark',
									'title'      => Loc::getMessage('CRM_COMM_WGT_MARK_NONE'),
									'dataPreset' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\OpenLine::getId().':*:NONE_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'NONE_QTY', 'aggregate' => 'SUM')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Call::getId().':CALL:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
									'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_STREAM_STATS::'.Provider\Call::getId().':CALL:TOTAL',
									'dataSource' => $entityPrefix.'_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' => $entityPrefix.'_ACTIVITY_MARK_STATS::'.Provider\Call::getId().':CALL:TOTAL',
									'dataSource' => $entityPrefix.'_ACTIVITY_MARK_STATS',
									'select'     => array('name' => 'TOTAL')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Meeting::getId().':*:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
									'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
								)
							)
						)
					)
				)
			)
		),
		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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Email::getId().':*:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Livefeed::getId().':*:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
									'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
									'display' => array('colorScheme' => 'yellow')
								)
							)
						)
					)
				)
			)
		),
		array(
			'height' => 180,
			'cells'  => $externalChannelCells
		),
		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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\WebForm::getId().':*:TOTAL_QTY',
									'dataSource' => $entityPrefix.'_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' => $entityPrefix.'_ACTIVITY_SUM_STATS::'.Provider\WebForm::getId().':*:SUM_TOTAL',
									'dataSource' => $entityPrefix.'_ACTIVITY_SUM_STATS',
									'select'     => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
									'format'     => array('isCurrency' => 'Y', 'enableDecimals' => 'N')
								)
							)
						)
					)
				)
			)
		)
	);


	return $rowData;
}

Добавить комментарий