Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
setCalculatedTaxes example
$this
->
applyLineItemTaxes
(
$lineItems
,
$result
->
getLineItemTaxes
(
)
)
;
$this
->
applyDeliveryTaxes
(
$deliveries
,
$result
->
getDeliveryTaxes
(
)
)
;
$price
=
$this
->amountCalculator->
calculate
(
$cart
->
getLineItems
(
)
->
getPrices
(
)
,
$cart
->
getDeliveries
(
)
->
getShippingCosts
(
)
,
$context
)
;
// either take the price from the tax provider result or take the calculated taxes
$taxes
=
$price
->
getCalculatedTaxes
(
)
->
filter
(
fn
(
CalculatedTax
$tax
)
=>
$tax
->
getTax
(
)
> 0.0
)
;
$price
->
setCalculatedTaxes
(
$taxes
)
;
if
(
$result
->
getCartPriceTaxes
(
)
)
{
$price
=
$this
->
applyCartPriceTaxes
(
$price
,
$result
->
getCartPriceTaxes
(
)
,
$context
)
;
}
$cart
->
setPrice
(
$price
)
;
}
private
function
applyCartPriceTaxes
(
CartPrice
$price
, CalculatedTaxCollection
$taxes
, SalesChannelContext
$context
)
: CartPrice
{
$netPrice
=
$price
->
getNetPrice
(
)
;