InvoiceModulesTable::saveOrderDiscountModules

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. InvoiceModulesTable
  4. saveOrderDiscountModules
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/invoice/internals/invoicediscount.php
  • Класс: Bitrix\Crm\Invoice\Internals\InvoiceModulesTable
  • Вызов: InvoiceModulesTable::saveOrderDiscountModules
static function saveOrderDiscountModules($discountId, $moduleList)
{
	$discountId = (int)$discountId;
	if ($discountId <= 0)
		return false;
	if (!is_array($moduleList))
		$moduleList = array($moduleList);

	$error = false;

	$conn = Main\Application::getConnection();
	$helper = $conn->getSqlHelper();
	$query = 'delete from '.$helper->quote(self::getTableName()).' where '.$helper->quote('ORDER_DISCOUNT_ID').' = '.$discountId;
	$conn->queryExecute($query);
	foreach ($moduleList as &$module)
	{
		$module = (string)$module;
		if (empty($module))
			continue;
		$fields = array(
			'ORDER_DISCOUNT_ID' => $discountId,
			'MODULE_ID' => $module
		);
		$result = self::add($fields);
		if (!$result->isSuccess())
		{
			$error = true;
			break;
		}
	}
	unset($result, $module);
	if ($error)
		$conn->queryExecute($query);

	unset($query, $helper, $conn);
	return !$error;
}

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