- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/providerbase.php
- Класс: BitrixSaleProviderBase
- Вызов: ProviderBase::getProviderDataByProductData
static function getProviderDataByProductData($providerClass, $productData, array $context)
{
$result = new Result();
$providerName = null;
if (!empty($providerClass))
{
$reflect = new ReflectionClass($providerClass);
$providerName = $reflect->getName();
}
$productId = $productData['PRODUCT_ID'];
$items = array( $productId => $productData );
$r = static::getProductDataByList($items, $providerName, array('PRICE', 'COUPONS', 'AVAILABLE_QUANTITY', 'QUANTITY'), $context);
if ($r->isSuccess())
{
$resultData = $r->getData();
$isExistsProductDataList = isset($resultData['PRODUCT_DATA_LIST']) && !empty($resultData['PRODUCT_DATA_LIST']);
$isExistsProductData = isset($resultData['PRODUCT_DATA_LIST'][$productId]);
if ($isExistsProductDataList && $isExistsProductData)
{
$result->setData($resultData['PRODUCT_DATA_LIST'][$productId]);
}
}
return $result;
}