• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/discount/cumulativecalculator.php
  • Класс: BitrixSaleDiscountCumulativeCalculator
  • Вызов: CumulativeCalculator::calculate
public function calculate()
{
	if (!Loader::includeModule('currency'))
	{
		return 0;
	}

	if(empty($this->userId))
	{
		return 0;
	}

	$filter = $this->createFilterBySumConfiguration($this->sumConfiguration);
	$orderUserId = $this->userId;
	$filter = array_merge(array(
		'USER_ID' => $orderUserId,
		'=LID' => $this->siteId,
		'=PAYED' => 'Y',
		'=CANCELED' => 'N',
	), $filter);

	$sum = 0;
	foreach (array(self::TYPE_ORDER_NON_ARCHIVED, self::TYPE_ORDER_ARCHIVED) as $orderType)
	{
		$sum += $this->sumOrders($filter, $orderType);
	}

	return $sum;
}