- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/location/import/import.php
- Класс: BitrixSaleLocationImportImportProcess
- Вызов: ImportProcess::getStatistics
public function getStatistics($type = 'TOTAL')
{
if(empty($this->stat))
{
$types = $this->getTypes();
$res = LocationLocationTable::getList(array(
'runtime' => array(
'CNT' => array(
'data_type' => 'integer',
'expression' => array(
'COUNT(*)'
)
)
),
'select' => array(
'CNT',
'TCODE' => 'TYPE.CODE',
'TNAME' => 'TYPE.NAME'
),
'filter' => array(
'TYPE.NAME.LANGUAGE_ID' => LANGUAGE_ID
),
'group' => array(
'TYPE_ID'
)
));
$total = 0;
$stat = array();
while($item = $res->fetch())
{
$total += intval($item['CNT']);
$stat[$item['TCODE']] = $item['CNT'];
}
foreach($types as $code => $name)
{
$this->stat[$code] = array(
'NAME' => $name,
'CODE' => $code,
'CNT' => isset($stat[$code]) ? intval($stat[$code]) : 0,
);
}
$this->stat['TOTAL'] = array('CNT' => $total, 'CODE' => 'TOTAL');
$res = LocationGroupTable::getList(array(
'runtime' => array(
'CNT' => array(
'data_type' => 'integer',
'expression' => array(
'COUNT(*)'
)
)
),
'select' => array(
'CNT'
)
))->fetch();
$this->stat['GROUPS'] = array('CNT' => intval($res['CNT']), 'CODE' => 'GROUPS');
}
return intval($this->stat[$type]['CNT']);
}