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.
- 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.
- getEmptyApplyBlock() : array<string|int, mixed>
- Return empty apply block.
- getOrder() : OrderBase|null
- Return 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
- save() : Result
- Save discount result.
- setApplyResult() : void
- Change applied discount list.
- 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|nullgetApplyMode()
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>getEmptyApplyBlock()
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|nullgetShowPrices()
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
save()
Save discount result.
public
save() : Result
Return values
ResultsetApplyResult()
Change applied discount list.
public
setApplyResult(array<string|int, mixed> $applyResult) : void
Parameters
- $applyResult : array<string|int, mixed>
-
Change apply result.
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