Bitrix-D7 23.9
 
Загрузка...
Поиск...
Не найдено
Класс DiscountManager

Открытые статические члены

static catalogDiscountManager (Main\Event $event)
 
static prepareData (array $discount, $params=[])
 
static getEditUrl (array $discount)
 
static calculateApplyCoupons (array $couponsList, array $basket, array $params)
 
static roundPrice (array $basketItem, array $roundData=[])
 
static roundBasket (array $basket, array $basketRoundData=[], array $order=[])
 
static applyDiscount (&$product, $discount)
 
static getPriceDataByProductId (int $productId, int $catalogGroupId)
 
static setProductPropertiesCache ($productId, $props)
 
static clearProductPropertiesCache ()
 
static clearProductsCache ()
 
static clearProductPricesCache ()
 
static preloadPriceData (array $productIds, array $catalogGroups)
 
static preloadProductDataToExtendOrder (array $productIds, array $userGroups)
 
static extendOrderData (Main\Event $event)
 

Защищенные статические члены

static getCacheKeyForEntityList (array $entityList)
 
static extendProductIdsToOffer (array $productIds)
 
static basketFilter (array $basketItem)
 
static lastDiscountFilter (array $basketItem)
 
static loadFromDatabase (int $id, array $discount)
 
static prepareEntity ($entityList)
 
static getProductIblocks (array $productList)
 
static fillProductPropertyList (array &$entityData, array $iblockData)
 
static convertProperties (&$productData, $propertyValues, $entityData, $iblockData)
 
static fillEmptyProperties (array &$propertyValues, int $iblockId, array $itemIds, array $propertyIds)
 
static getParentProducts (&$productData, $entityData, $iblockData)
 
static loadIblockFields (array $productIds, array $fields)
 
static loadSections (array $productIds)
 
static loadCatalogFields (array $productIds, array $fields)
 
static fillProperties (array &$productData, array $productIds, array $iblockData, array $entityData)
 
static getProductData (&$productData, $entityData, $iblockData)
 
static createSaleAction (&$discount, $params)
 
static fillProductPriceList (&$entityData, $priceIds)
 
static roundValue ($value, string $currency)
 

Статические защищенные данные

static $discountCache = []
 
static $typeCache = []
 
static $editUrlTemplate = []
 
static $saleIncluded = null
 
static $preloadedPriceData = []
 
static $preloadedProductsData = []
 
static $productProperties = []
 

Подробное описание

См. определение в файле discountmanager.php строка 14

Методы

◆ applyDiscount()

static applyDiscount ( & $product,
$discount )
static

Apply catalog discount by basket item.

Аргументы
array&$productProduct data.
array$discountDiscount data.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 436

◆ basketFilter()

static basketFilter ( array $basketItem)
staticprotected

Filter for catalog basket items.

Аргументы
array$basketItemBasket item data.
Возвращает
bool

См. определение в файле discountmanager.php строка 854

◆ calculateApplyCoupons()

static calculateApplyCoupons ( array $couponsList,
array $basket,
array $params )
static

Check apply coupons.

Аргументы
array$couponsListCoupons.
array$basketBasket data.
array$paramsCalculate params.
Возвращает
array
Исключения
Main

ArgumentException

@noinspection PhpMethodOrClassCallIsNotCaseSensitiveInspection

@noinspection PhpMethodOrClassCallIsNotCaseSensitiveInspection

@noinspection PhpMethodOrClassCallIsNotCaseSensitiveInspection

См. определение в файле discountmanager.php строка 149

◆ catalogDiscountManager()

static catalogDiscountManager ( Main\Event $event)
static

Return methods for prepare discount.

Аргументы
Main\Event$eventEvent data from discount manager.
Возвращает
Main\EventResult @noinspection PhpUnusedParameterInspection

См. определение в файле discountmanager.php строка 31

◆ clearProductPricesCache()

static clearProductPricesCache ( )
static

Clear product prices cache.

Возвращает
void

См. определение в файле discountmanager.php строка 550

◆ clearProductPropertiesCache()

static clearProductPropertiesCache ( )
static

Clear property values cache.

Возвращает
void

См. определение в файле discountmanager.php строка 530

◆ clearProductsCache()

static clearProductsCache ( )
static

Clear products cache.

Возвращает
void

См. определение в файле discountmanager.php строка 540

◆ convertProperties()

static convertProperties ( & $productData,
$propertyValues,
$entityData,
$iblockData )
staticprotected

Convert properties values to discount format.

Аргументы
array&$productDataProduct data.
array$propertyValuesProduct properties.
array$entityDataEntity data.
array$iblockDataIblock data.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 1150

◆ createSaleAction()

static createSaleAction ( & $discount,
$params )
staticprotected

Create sale action.

Аргументы
array&$discountDiscount data.
array$paramsManager parameters.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 1734

◆ extendOrderData()

static extendOrderData ( Main\Event $event)
static

Extend basket data.

Аргументы
Main\Event$eventEvent.
Возвращает
Main\EventResult

См. определение в файле discountmanager.php строка 696

◆ extendProductIdsToOffer()

static extendProductIdsToOffer ( array $productIds)
staticprotected

См. определение в файле discountmanager.php строка 819

◆ fillEmptyProperties()

static fillEmptyProperties ( array & $propertyValues,
int $iblockId,
array $itemIds,
array $propertyIds )
staticprotected

Fill empty property values for iblock 1.0

Аргументы
array&$propertyValuesProduct properties.
int$iblockIdIblock id.
array$itemIdsProduct id list.
array$propertyIdsProperty id list.
Возвращает
void

См. определение в файле discountmanager.php строка 1336

◆ fillProductPriceList()

static fillProductPriceList ( & $entityData,
$priceIds )
staticprotected

См. определение в файле discountmanager.php строка 1802

◆ fillProductPropertyList()

static fillProductPropertyList ( array & $entityData,
array $iblockData )
staticprotected

Create property list for discounts.

Аргументы
array&$entityDataEntity data.
array$iblockDataIblock data.
Возвращает
void

См. определение в файле discountmanager.php строка 1113

◆ fillProperties()

static fillProperties ( array & $productData,
array $productIds,
array $iblockData,
array $entityData )
staticprotected

См. определение в файле discountmanager.php строка 1572

◆ getCacheKeyForEntityList()

static getCacheKeyForEntityList ( array $entityList)
staticprotected

См. определение в файле discountmanager.php строка 814

◆ getEditUrl()

static getEditUrl ( array $discount)
static

Return url for edit discount.

Аргументы
array$discountDiscount data.
Возвращает
string

См. определение в файле discountmanager.php строка 95

◆ getParentProducts()

static getParentProducts ( & $productData,
$entityData,
$iblockData )
staticprotected

Returns parent product data.

Аргументы
array&$productDataProduct data.
array$entityDataEntity data.
array$iblockDataIblock data.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 1408

◆ getPriceDataByProductId()

static getPriceDataByProductId ( int $productId,
int $catalogGroupId )
static

Returns price for product which has catalog group.

Аргументы
int$productIdProduct id.
int$catalogGroupIdCatalog group.
Возвращает
null|array

См. определение в файле discountmanager.php строка 499

◆ getProductData()

static getProductData ( & $productData,
$entityData,
$iblockData )
staticprotected

Returns product data.

Аргументы
array&$productDataProduct data.
array$entityDataEntity data.
array$iblockDataIblock list data.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 1672

◆ getProductIblocks()

static getProductIblocks ( array $productList)
staticprotected

Returns product separate by iblocks.

Аргументы
array$productListProduct id list.
Возвращает
array

См. определение в файле discountmanager.php строка 1061

◆ lastDiscountFilter()

static lastDiscountFilter ( array $basketItem)
staticprotected

Filter for stop discount calculate for basket item.

Аргументы
array$basketItemBasket item data.
Возвращает
bool

См. определение в файле discountmanager.php строка 871

◆ loadCatalogFields()

static loadCatalogFields ( array $productIds,
array $fields )
staticprotected

См. определение в файле discountmanager.php строка 1552

◆ loadFromDatabase()

static loadFromDatabase ( int $id,
array $discount )
staticprotected

Load discount data from db.

Аргументы
int$idDiscount id.
array$discountExist discount data.
Возвращает
bool|array

@noinspection SqlResolve

См. определение в файле discountmanager.php строка 885

◆ loadIblockFields()

static loadIblockFields ( array $productIds,
array $fields )
staticprotected

См. определение в файле discountmanager.php строка 1488

◆ loadSections()

static loadSections ( array $productIds)
staticprotected

См. определение в файле discountmanager.php строка 1524

◆ preloadPriceData()

static preloadPriceData ( array $productIds,
array $catalogGroups )
static

Preloads prices for products with catalog groups.

Аргументы
array$productIdsList of product ids.
array$catalogGroupsCatalog groups.
Возвращает
void

См. определение в файле discountmanager.php строка 562

◆ preloadProductDataToExtendOrder()

static preloadProductDataToExtendOrder ( array $productIds,
array $userGroups )
static

Load product data for calculate discounts.

Аргументы
array$productIdsProduct id list.
array$userGroupsUser group list.
Возвращает
void

См. определение в файле discountmanager.php строка 626

◆ prepareData()

static prepareData ( array $discount,
$params = [] )
static

Prepare discount before saving.

Аргументы
array$discountDiscount data.
array$paramsParams.
Возвращает
array|bool

См. определение в файле discountmanager.php строка 52

◆ prepareEntity()

static prepareEntity ( $entityList)
staticprotected

Prepare entity to iblock and catalog fields.

Аргументы
array$entityListEntity list.
Возвращает
array|bool @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 985

◆ roundBasket()

static roundBasket ( array $basket,
array $basketRoundData = [],
array $order = [] )
static

Round basket prices.

Аргументы
array$basketBasket.
array$basketRoundDataRound rules.
array$orderOrder fields (without basket, can be absent).
Возвращает
array @noinspection PhpUnusedParameterInspection

См. определение в файле discountmanager.php строка 328

◆ roundPrice()

static roundPrice ( array $basketItem,
array $roundData = [] )
static

Round basket item price.

См. также
\Bitrix\Catalog\Discount\DiscountManager::roundBasket
Аргументы
array$basketItemBasket item data.
array$roundDataRound rule.
Возвращает
array

См. определение в файле discountmanager.php строка 310

◆ roundValue()

static roundValue ( $value,
string $currency )
staticprotected

Rounded catalog discount value.

Аргументы
float | int$valueValue.
string$currencyCurrency.
Возвращает
float

См. определение в файле discountmanager.php строка 1834

◆ setProductPropertiesCache()

static setProductPropertiesCache ( $productId,
$props )
static

Set property values cache for product.

Аргументы
int$productIdProduct id.
array$propsProperty values.
Возвращает
void @noinspection PhpMissingParamTypeInspection

См. определение в файле discountmanager.php строка 517

Данные класса

◆ $discountCache

$discountCache = []
staticprotected

См. определение в файле discountmanager.php строка 16

◆ $editUrlTemplate

$editUrlTemplate = []
staticprotected

См. определение в файле discountmanager.php строка 18

◆ $preloadedPriceData

$preloadedPriceData = []
staticprotected

См. определение в файле discountmanager.php строка 20

◆ $preloadedProductsData

$preloadedProductsData = []
staticprotected

См. определение в файле discountmanager.php строка 21

◆ $productProperties

$productProperties = []
staticprotected

См. определение в файле discountmanager.php строка 22

◆ $saleIncluded

$saleIncluded = null
staticprotected

См. определение в файле discountmanager.php строка 19

◆ $typeCache

$typeCache = []
staticprotected

См. определение в файле discountmanager.php строка 17