Download the PHP package positibe/sylius-composite-price-calculator-bundle without Composer
On this page you can find all versions of the php package positibe/sylius-composite-price-calculator-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download positibe/sylius-composite-price-calculator-bundle
More information about positibe/sylius-composite-price-calculator-bundle
Files in positibe/sylius-composite-price-calculator-bundle
Package sylius-composite-price-calculator-bundle
Short Description Composite Price Calculator Bundle for Sylius Project.
License MIT
Informations about the package sylius-composite-price-calculator-bundle
CompositePriceCalculatorBundle for Sylius Core Price Calculator
This bundle allows you to use multiples price calculators on chain by replacing the default calculator for a composite calculator.
Installation
-
Require plugin with composer:
- Add plugin class to your
AppKernel
:
With Symfony Flex:
Without Symfony Flex:
How to use
Nota: The main advantage of this bundle is to provide a way to implement product variant price calculator on Sylius plugins without having conflict between them. We recommend do not use it if you don't really need it.
This bundle add a new entry to our $context
passed on the calculate(ProductVariantInterface $productVariant, array $context): int
method. Now we have a price
where we have the last price before calling the current calculator.
The job of calculator now is add or modify the price given depend of the custom logic.
Here is a example of a fee calculator plugin:
Default calculator
The Positibe\Sylius\CompositePriceCalculatorBundle\Calculator\CompositePriceCalculator
overrides the default calculator sylius.calculator.product_variant_price
and the alias Sylius\Component\Core\Calculator\ProductVariantPriceCalculatorInterface
.
The default one now has the id Sylius\Component\Core\Calculator\ProductVariantPriceCalculator
and has priority: 40
, the higher priority the sooner is executed.
This bundle autoconfigure your services that implement Sylius\Component\Core\Calculator\ProductVariantPriceCalculatorInterface
interface and inject the service on the chain.
Order matters
You can change the order of the chain calculator by providing a priority
.
Causion: By default the priority is cero (`0`) so the order without priority is unpredictable.
Here
All versions of sylius-composite-price-calculator-bundle with dependencies
sylius/core-bundle Version ^1.4
symfony/config Version ^4.1
symfony/dependency-injection Version ^4.1
zendframework/zend-stdlib Version ^3.1