Discount extends DiscountBase
Table of Contents
Constants
- APPLY_MODE_ADD = 0x1
- APPLY_MODE_DISABLE = 0x2
- APPLY_MODE_FULL_DISABLE = 0x8
- APPLY_MODE_FULL_LAST = 0x10
- APPLY_MODE_LAST = 0x4
- ENTITY_BASKET_ITEM = 'BASKET_ITEM'
- ENTITY_DELIVERY = 'DELIVERY'
- ENTITY_ORDER = 'ORDER'
- ERROR_ID = 'BX_SALE_DISCOUNT'
- EVENT_EXTEND_ORDER_DATA = 'onExtendOrderData'
- EXECUTE_FIELD_PREFIX = 'EXECUTE_'
- ROUND_MODE_BASKET_DISCOUNT = 0x1
- ROUND_MODE_FINAL_PRICE = 0x4
- ROUND_MODE_SALE_DISCOUNT = 0x2
- USE_MODE_APPLY = 0x2
- USE_MODE_COUPONS = 0x8
- USE_MODE_FULL = 0x1
- USE_MODE_MIXED = 0x4
Methods
- __destruct() : mixed
- buildFromBasket() : DiscountBase|null
- Builds discounts from basket. Basket doesn't have to have a order.
- buildFromOrder() : DiscountBase
- Builds discounts from order.
- calculate() : Result
- Calculate discounts.
- calculateDiscountPercent() : float|int|null
- Calculate discount percent for public components.
- clearBasketItemData() : void
- Clear basket item data.
- disableCheckingPrediction() : void
- Disables prediction checking instead real condition.
- enableCheckingPrediction() : void
- Enables prediction checking instead real condition.
- getApplyMode() : int
- Returns current sale discount apply mode.
- getApplyModeList() : array<string|int, mixed>
- Return apply mode list.
- getApplyResult() : array<string|int, mixed>
- Return discount list description.
- getBasketItemBasePrice() : float|null
- Get base price for basket item.
- getEmptyApplyBlock() : array<string|int, mixed>
- Return empty apply block.
- getOrder() : OrderBase|null
- Return order.
- getShipmentsIds() : array<string|int, mixed>
- Return shipment id list for existing order.
- getShowPrices() : array<string|int, mixed>
- Returns show prices for public components.
- getUseMode() : int
- Return calculate mode.
- isClone() : bool
- Returns true if discount entity is cloned.
- isOrderExists() : bool
- Return flag is order exists.
- isOrderNew() : bool
- Returns new order flag value.
- isOrderRefresh() : bool
- Returns full refresh status value.
- isValidState() : mixed
- load() : Discount|DiscountBase
- Get discount by order.
- loadByBasket() : Discount|DiscountBase|null
- Get discount by basket.
- loadByFuser() : null|Discount|DiscountBase
- Get discount by fuser and site.
- save() : Result
- Save discount result.
- saveExternalLastApplyblock() : void
- setApplyResult() : void
- Change applied discount list.
- setBasketBasePrice() : void
- Set base price for all basket items.
- setBasketItemBasePrice() : void
- Set base price for basket item.
- setBasketItemData() : void
- Set various basket item data.
- setBasketItemDiscounts() : void
- Set product discounts for basket item.
- setCalculateShipments() : void
- Set calculate shipments.
- setOrder() : DiscountBase
- Get discount by order basket.
- setOrderRefresh() : void
- Set full refresh status from edit order form.
- setUseMode() : void
- Set calculate mode.
- verify() : Result
- Verifies discounts before order save.
Constants
APPLY_MODE_ADD
public
mixed
APPLY_MODE_ADD
= 0x1
APPLY_MODE_DISABLE
public
mixed
APPLY_MODE_DISABLE
= 0x2
APPLY_MODE_FULL_DISABLE
public
mixed
APPLY_MODE_FULL_DISABLE
= 0x8
APPLY_MODE_FULL_LAST
public
mixed
APPLY_MODE_FULL_LAST
= 0x10
APPLY_MODE_LAST
public
mixed
APPLY_MODE_LAST
= 0x4
ENTITY_BASKET_ITEM
public
mixed
ENTITY_BASKET_ITEM
= 'BASKET_ITEM'
ENTITY_DELIVERY
public
mixed
ENTITY_DELIVERY
= 'DELIVERY'
ENTITY_ORDER
public
mixed
ENTITY_ORDER
= 'ORDER'
ERROR_ID
public
mixed
ERROR_ID
= 'BX_SALE_DISCOUNT'
EVENT_EXTEND_ORDER_DATA
public
mixed
EVENT_EXTEND_ORDER_DATA
= 'onExtendOrderData'
EXECUTE_FIELD_PREFIX
public
mixed
EXECUTE_FIELD_PREFIX
= 'EXECUTE_'
ROUND_MODE_BASKET_DISCOUNT
public
mixed
ROUND_MODE_BASKET_DISCOUNT
= 0x1
ROUND_MODE_FINAL_PRICE
public
mixed
ROUND_MODE_FINAL_PRICE
= 0x4
ROUND_MODE_SALE_DISCOUNT
public
mixed
ROUND_MODE_SALE_DISCOUNT
= 0x2
USE_MODE_APPLY
public
mixed
USE_MODE_APPLY
= 0x2
USE_MODE_COUPONS
public
mixed
USE_MODE_COUPONS
= 0x8
USE_MODE_FULL
public
mixed
USE_MODE_FULL
= 0x1
USE_MODE_MIXED
public
mixed
USE_MODE_MIXED
= 0x4
Methods
__destruct()
public
__destruct() : mixed
buildFromBasket()
Builds discounts from basket. Basket doesn't have to have a order.
public
static buildFromBasket(BasketBase $basket, BaseContext $context) : DiscountBase|null
Context describes user and user groups which use in
Parameters
- $basket : BasketBase
-
Basket.
- $context : BaseContext
-
Context.
Tags
Return values
DiscountBase|nullbuildFromOrder()
Builds discounts from order.
public
static buildFromOrder(OrderBase $order) : DiscountBase
Parameters
- $order : OrderBase
-
Order object.
Return values
DiscountBasecalculate()
Calculate discounts.
public
calculate() : Result
Return values
ResultcalculateDiscountPercent()
Calculate discount percent for public components.
public
static calculateDiscountPercent(int|float $basePrice, int|float $discount) : float|int|null
Parameters
- $basePrice : int|float
-
Base price.
- $discount : int|float
-
Discount value (for an extra can be negative).
Return values
float|int|nullclearBasketItemData()
Clear basket item data.
public
clearBasketItemData(int|string $code) : void
Parameters
- $code : int|string
-
Basket code.
disableCheckingPrediction()
Disables prediction checking instead real condition.
public
disableCheckingPrediction() : void
enableCheckingPrediction()
Enables prediction checking instead real condition.
public
enableCheckingPrediction() : void
getApplyMode()
Returns current sale discount apply mode.
public
static getApplyMode() : int
Tags
Return values
intgetApplyModeList()
Return apply mode list.
public
static getApplyModeList([bool $extendedMode = false ]) : array<string|int, mixed>
Parameters
- $extendedMode : bool = false
-
Get mode list with names.
Return values
array<string|int, mixed>getApplyResult()
Return discount list description.
public
getApplyResult([bool $extMode = false ]) : array<string|int, mixed>
Parameters
- $extMode : bool = false
-
Extended mode.
Return values
array<string|int, mixed>getBasketItemBasePrice()
Get base price for basket item.
public
getBasketItemBasePrice(int|string $code) : float|null
Parameters
- $code : int|string
-
Basket code.
Return values
float|nullgetEmptyApplyBlock()
Return empty apply block.
public
static getEmptyApplyBlock() : array<string|int, mixed>
Return values
array<string|int, mixed>getOrder()
Return order.
public
getOrder() : OrderBase|null
Return values
OrderBase|nullgetShipmentsIds()
Return shipment id list for existing order.
public
getShipmentsIds() : array<string|int, mixed>
Return values
array<string|int, mixed>getShowPrices()
Returns show prices for public components.
public
getShowPrices() : array<string|int, mixed>
Return values
array<string|int, mixed>getUseMode()
Return calculate mode.
public
getUseMode() : int
Return values
intisClone()
Returns true if discount entity is cloned.
public
isClone() : bool
Return values
boolisOrderExists()
Return flag is order exists.
public
isOrderExists() : bool
Return values
boolisOrderNew()
Returns new order flag value.
public
isOrderNew() : bool
Return values
boolisOrderRefresh()
Returns full refresh status value.
public
isOrderRefresh() : bool
Return values
boolisValidState()
public
isValidState() : mixed
load()
Get discount by order.
public
static load(Order $order) : Discount|DiscountBase
deprecated sinse sale 17.0.11
Parameters
- $order : Order
-
Order object.
Tags
Return values
Discount|DiscountBaseloadByBasket()
Get discount by basket.
public
static loadByBasket(Basket $basket) : Discount|DiscountBase|null
deprecated sinse sale 17.0.11
Parameters
- $basket : Basket
-
Basket object.
Tags
Return values
Discount|DiscountBase|nullloadByFuser()
Get discount by fuser and site.
public
static loadByFuser(string|int $fuser, string $site) : null|Discount|DiscountBase
Parameters
- $fuser : string|int
-
Fuser id.
- $site : string
-
Site id.
Return values
null|Discount|DiscountBasesave()
Save discount result.
public
save() : Result
Return values
ResultsaveExternalLastApplyblock()
public
saveExternalLastApplyblock(BasketItem $basketItem, int $orderDiscountId) : void
Parameters
- $basketItem : BasketItem
- $orderDiscountId : int
Tags
setApplyResult()
Change applied discount list.
public
setApplyResult(array<string|int, mixed> $applyResult) : void
Parameters
- $applyResult : array<string|int, mixed>
-
Change apply result.
setBasketBasePrice()
Set base price for all basket items.
public
setBasketBasePrice(array<string|int, mixed> $basket) : void
Parameters
- $basket : array<string|int, mixed>
-
Basket.
setBasketItemBasePrice()
Set base price for basket item.
public
setBasketItemBasePrice(int|string $code, float $price, string $currency) : void
Parameters
- $code : int|string
-
Basket code.
- $price : float
-
Price.
- $currency : string
-
Currency.
setBasketItemData()
Set various basket item data.
public
setBasketItemData(int|string $code, array<string|int, mixed> $providerData) : void
Parameters
- $code : int|string
-
Basket code.
- $providerData : array<string|int, mixed>
-
Product data from provider.
setBasketItemDiscounts()
Set product discounts for basket item.
public
setBasketItemDiscounts(int|string $code, array<string|int, mixed> $discountList) : void
Parameters
- $code : int|string
-
Basket code.
- $discountList : array<string|int, mixed>
-
Discount list.
setCalculateShipments()
Set calculate shipments.
public
setCalculateShipments([Shipment $shipment = null ]) : void
Parameters
- $shipment : Shipment = null
-
Current shipment.
setOrder()
Get discount by order basket.
public
static setOrder(BasketBase $basket) : DiscountBase
Parameters
- $basket : BasketBase
-
Basket.
Return values
DiscountBasesetOrderRefresh()
Set full refresh status from edit order form.
public
setOrderRefresh(bool $state) : void
Parameters
- $state : bool
-
Refresh or not order.
setUseMode()
Set calculate mode.
public
setUseMode(int $useMode) : void
Parameters
- $useMode : int
-
Calculate mode.
verify()
Verifies discounts before order save.
public
verify() : Result