ProductDiscountHelper
class ProductDiscountHelper
Class TotalProductDiscountHelper
Properties
| protected ProductSettingsManager | $productSettingsManager | ||
| protected ProductGroupManager | $productGroupManager | ||
| protected User|null | $user | ||
| protected array | $currentPricelist | ||
| protected array | $preparedProductGroups | ||
| protected array | $cachedProductGroups |
Methods
__construct(ProductSettingsManager $productSettingsManager, ProductGroupManager $productGroupManager, TokenStorage $tokenStorage, PricelistManager $pricelistManager)
ProductDiscountHelper constructor.
array|null
getCurrentPricelist()
Find user price list if logged or default
int|null
getCurrentPricelistId()
Find current price list id
array
getTotalGroupDiscount(int $productId, int $quantity = 1)
Calculate total group discount
prepareProductGroups()
Cache product groups per request
array
getPreparedProductGroups()
Find cached prepared product groups
array
getCachedProductGroups()
Find cached product groups
int
getTotalPricelistDiscount(array $productPricelistItemsArray, int $quantity = 1)
Calculate total price list discount
float
getFinalPrice(float $price, float $pricelistDiscount, float $groupDiscountTotal, float $groupDiscountFixedTotal)
Calculate final price with all discounts
Details
at line 53
__construct(ProductSettingsManager $productSettingsManager, ProductGroupManager $productGroupManager, TokenStorage $tokenStorage, PricelistManager $pricelistManager)
ProductDiscountHelper constructor.
at line 65
array|null
getCurrentPricelist()
Find user price list if logged or default
at line 94
int|null
getCurrentPricelistId()
Find current price list id
at line 108
array
getTotalGroupDiscount(int $productId, int $quantity = 1)
Calculate total group discount
at line 168
prepareProductGroups()
Cache product groups per request
at line 217
array
getPreparedProductGroups()
Find cached prepared product groups
at line 228
array
getCachedProductGroups()
Find cached product groups
at line 241
int
getTotalPricelistDiscount(array $productPricelistItemsArray, int $quantity = 1)
Calculate total price list discount
at line 304
float
getFinalPrice(float $price, float $pricelistDiscount, float $groupDiscountTotal, float $groupDiscountFixedTotal)
Calculate final price with all discounts