- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/businessvalue.php
- Класс: BitrixSaleBusinessValue
- Вызов: BusinessValue::get
static function get($codeKey, $consumerKey = null, $personTypeId = null, $providerInstance = null)
{
$value = null;
if ($personTypeId instanceof IBusinessValueProvider)
{
$provider = $personTypeId;
$personTypeId = $provider->getPersonTypeId();
$mapping = self::getMapping(
$codeKey,
$consumerKey,
$personTypeId,
[
'GET_VALUE' => [
'PROPERTY' => 'BY_ID',
'PROVIDER' => $provider,
],
]
);
$providerInstance = $provider->getBusinessValueProviderInstance($mapping);
}
else
{
if ($personTypeId <= 0)
{
$personTypeId = null;
}
$mapping = self::getMapping(
$codeKey,
$consumerKey,
$personTypeId,
[
'GET_VALUE' => [
'PROPERTY' => 'BY_ID',
],
]
);
}
if (
isset($mapping['PROVIDER_VALUE'])
&& isset($mapping['PROVIDER_KEY'])
&& isset(self::$redefinedFields[$mapping['PROVIDER_KEY']][$mapping['PROVIDER_VALUE']]))
{
return self::$redefinedFields[$mapping['PROVIDER_KEY']][$mapping['PROVIDER_VALUE']];
}
if (
isset($mapping['PROVIDER_KEY'])
&& $mapping['PROVIDER_KEY']
&& isset($mapping['PROVIDER_VALUE'])
&& $mapping['PROVIDER_VALUE']
)
{
$value = self::getValueFromMapping($mapping, $providerInstance, $personTypeId);
}
return $value;
}