static function getPortraitRowData($entityTypeId, $isSupervisor = false)
{
$entityPrefix = \CCrmOwnerType::ResolveName($entityTypeId);
$rowData = array();
$rowData[] = array(
'height' => '380',
'cells' =>
array(
array(
'controls' =>
array(
array(
'typeName' => 'number',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_DEAL_SUCCESS_SUM'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::SUCCESS_SUM',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'SUCCESS_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'param2',
'title' => GetMessage('CRM_COMM_WGT_DEAL_PROCESS_SUM'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::PROCESS_SUM',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'PROCESS_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'param3',
'title' => GetMessage('CRM_COMM_WGT_DEAL_FAILED_SUM'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::FAILURE_SUM',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'FAILURE_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
),
'layout' => 'tiled',
),
),
),
array(
'controls' =>
array(
array(
'typeName' => 'number',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_PAID_INTIME_COUNT'),
'dataPreset' => $entityPrefix.'_INVOICE_SUM_STATS::PAID_INTIME_COUNT',
'dataSource' => $entityPrefix.'_INVOICE_SUM_STATS',
'select' => array('name' => 'PAID_INTIME_COUNT', 'aggregate' => 'COUNT'),
),
array(
'name' => 'param2',
'title' => GetMessage('CRM_COMM_WGT_OVERALL_INVOICES'),
'dataPreset' => $entityPrefix.'_INVOICE_SUM_STATS::OVERALL_COUNT',
'dataSource' => $entityPrefix.'_INVOICE_SUM_STATS',
'select' => array('name' => 'OVERALL_COUNT', 'aggregate' => 'COUNT'),
),
array(
'name' => 'expr',
'dataSource' =>
array(
'name' => 'EXPRESSION',
'operation' => 'PC',
'arguments' =>
array(
0 => '%param1%',
1 => '%param2%',
),
),
'title' => GetMessage('CRM_COMM_WGT_FINANCE_INDEX'),
'format' => array('isPercent' => 'Y')
),
),
'layout' => 'tiled',
),
),
),
),
);
$rowData[] = array(
'height' => '380',
'cells' =>
array(
array(
'controls' =>
array(
array(
'typeName' => 'number',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_INVOICES_ACTIVE_SUM'),
'dataPreset' => $entityPrefix.'_INVOICE_SUM_STATS::OVERALL_SUM',
'dataSource' => $entityPrefix.'_INVOICE_SUM_STATS',
'select' => array('name' => 'OVERALL_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'param2',
'title' => GetMessage('CRM_COMM_WGT_INVOICES_PAID_SUM'),
'dataPreset' => $entityPrefix.'_INVOICE_SUM_STATS::SUCCESS_SUM',
'dataSource' => $entityPrefix.'_INVOICE_SUM_STATS',
'select' => array('name' => 'SUCCESS_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'expr',
'dataSource' =>
array(
'name' => 'EXPRESSION',
'operation' => 'DIFF',
'arguments' => array('%param1%', '%param2%'),
),
'title' => GetMessage('CRM_COMM_WGT_INVOICES_WAITING'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
),
'layout' => 'tiled',
),
),
),
array(
'controls' =>
array(
array(
'typeName' => 'number',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_DEAL_SUM_PERIOD'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::SUM_TOTAL',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
),
),
array(
'typeName' => 'number',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_CONVERSION'),
'dataPreset' => $entityPrefix.'_DEAL_CONV_RATE::ACTIVITY',
'dataSource' => $entityPrefix.'_DEAL_CONV_RATE',
'select' => array('name' => 'ACTIVITY'),
'format' => array('isPercent' => 'Y')
),
),
),
),
),
)
);
$rowData[] = array(
'height' => '380',
'cells' =>
array(
array(
'controls' =>
array(
array(
'typeName' => 'graph',
'group' => 'DATE',
'combineData' => 'Y',
'configs' =>
array(
array(
'name' => 'param1',
'title' => GetMessage('CRM_COMM_WGT_DEALS'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::SUM_TOTAL',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'SUM_TOTAL', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'param2',
'title' => GetMessage('CRM_COMM_WGT_SUCCESS_DEALS'),
'dataPreset' => $entityPrefix.'_DEAL_SUM_STATS::SUCCESS_SUM',
'dataSource' => $entityPrefix.'_DEAL_SUM_STATS',
'select' => array('name' => 'SUCCESS_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
array(
'name' => 'param3',
'title' => GetMessage('CRM_COMM_WGT_PAID_INVOICES'),
'dataPreset' => $entityPrefix.'_INVOICE_SUM_STATS::SUCCESS_SUM',
'dataSource' => $entityPrefix.'_INVOICE_SUM_STATS',
'select' => array('name' => 'SUCCESS_SUM', 'aggregate' => 'SUM'),
'format' => array('isCurrency' => 'Y', 'enableDecimals' => 'N'),
),
),
'title' => GetMessage('CRM_COMM_WGT_PAYMENTS'),
'context' => 'F',
'filter' => array(
'periodType' => FilterPeriodType::LAST_DAYS_90
)
),
),
),
)
);
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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\OpenLine::getId().':'.$line['PROVIDER_TYPE_ID'].':TOTAL_QTY',
'dataSource' => $entityPrefix.'_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' => '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'),
'display' => array('colorScheme' => 'green')
)
)
)
)
),
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'),
'display' => array('colorScheme' => 'yellow')
)
)
)
)
)
)
);
$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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\Email::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM'),
'display' => array('colorScheme' => 'blue')
)
)
)
)
),
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' => 'red')
)
)
)
)
)
)
);
if (Provider\ExternalChannel::isActive())
{
$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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\ExternalChannel::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
);
if ($entityTypeId === \CCrmOwnerType::Company)
{
$cells[] = 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')
)
)
)
)
);
}
$rowData[] = array(
'height' => 180,
'cells' => $cells
);
}
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' => $entityPrefix.'_ACTIVITY_STATS::'.Provider\WebForm::getId().':*:TOTAL_QTY',
'dataSource' => $entityPrefix.'_ACTIVITY_STATS',
'select' => array('name' => 'TOTAL_QTY', 'aggregate' => 'SUM')
)
)
)
)
)
)
);
}
return $rowData;
}