Есть такой код, в котором я получаю цену на товар по ID типа цены (в данном случае - получаю розничную цену на товар), как мне получить цену на товар с учетом всех скидок?
Код |
---|
<?/**
* создаем xml-файл для выгрузки товаров в Каспий
* */
$_SERVER['DOCUMENT_ROOT'] = realpath(dirname(__FILE__).'/. ./..');
define('NO_KEEP_STATISTIC', true);
define('NOT_CHECK_PERMISSIONS',true);
define('NO_AGENT_CHECK', true);
$debug = '';
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
include_once($_SERVER['DOCUMENT_ROOT'] . '/local/class/class.php');
$START_TIME = date("d.m.Y H:i:s");
use Bitrix\Main\{Diag\Debug, Loader};
Loader::includeModule('iblock');
Loader::includeModule('catalog');
$xml = '<?xml version="1.0" encoding="UTF-8"?>
<kaspi_catalog date="string"
xmlns="kaspiShopping"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="kaspiShopping http://kaspi.kz/kaspishopping.xsd">';
$xml .= '
<company>1music-kz</company>';
$xml .= '
<merchantid>1music</merchantid>';
$xml .= '
<offers>';
$arSelect = [
'ID',
'IBLOCK_SECTION_ID',
'NAME',
'ACTIVE',
'CATALOG_AVAILABLE',
'PROPERTY_BREND',
'PROPERTY_CML2_ARTICLE',
'CATALOG_GROUP_4'
];
$arFilter = [
'IBLOCK_ID' => 3,
'ACTIVE' => 'Y',
'PROPERTY_I_KASPI_BUY_BUTTON_VALUE' => 'Y'
];
$arE_now = [];
$res = CIBlockElement::GetList([], $arFilter, false, false, $arSelect);
while($ob = $res->GetNext())
{
$arE_now[$ob['ID']] = $ob;
$available = ($ob['CATALOG_AVAILABLE'] == 'Y') ? 'yes' : 'no';
$xml .= '
<offer sku="'.$ob['PROPERTY_CML2_ARTICLE_VALUE'].'">';
$xml .= '
<model>'.str_replace('&', '', $ob['NAME']).'</model>';
$xml .= '
<brand>'.str_replace( '&', '', $ob['PROPERTY_BREND_VALUE']).'</brand>';
$xml .= '
<availabilities>';
$xml .= '
<availability available="'.$available.'" storeId="PP1"/>';
$xml .= '
</availabilities>';
$xml .= '
<price>'.(int)$ob['CATALOG_PRICE_4'].'</price>';
$xml .= '
</offer>';
}
?>
<pre>
<?print_r($arE_now)?>
</pre>
<?
$xml .= '
</offers>';
$xml .= '
</kaspi_catalog>';
$debug .= ImportClass::ilog('Товаров - '.count($arE_now));
$xml_file = $_SERVER['DOCUMENT_ROOT'].'/kaspi_buy.xml';
if(file_put_contents($xml_file, $xml))
{
$debug .= ImportClass::ilog('Файл /kaspi_buy.xml успешно записан');
}
else
{
$debug .= ImportClass::ilog('Ошибка создания kaspi_buy.xml файла');
}
$debug .= ImportClass::ilog("---------------------------------------");
$debug .= ImportClass::ilog('Занятая память - '.memory_get_usage());
$debug .= ImportClass::ilog('Время начала - '.$START_TIME);
$debug .= ImportClass::ilog('Время завершения - '.date('d.m.Y H:i:s'));
Debug::dumpToFile($debug, 'export_kaspi:', '/local/actions/logs/kaspi_log.txt');
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php"); |