Browse Source

PriceUtils : getMarginOrderProductsWithReductions

feature/export_comptable
Guillaume 4 years ago
parent
commit
fdb39f5535
1 changed files with 27 additions and 23 deletions
  1. +27
    -23
      ShopBundle/Services/Price/OrderShopPriceUtils.php

+ 27
- 23
ShopBundle/Services/Price/OrderShopPriceUtils.php View File

return $total; return $total;
} }



//Inclus les ReductionCatalog des OrderProducts //Inclus les ReductionCatalog des OrderProducts
public function getMarginOrderProducts(OrderShopInterface $orderShop): float public function getMarginOrderProducts(OrderShopInterface $orderShop): float
{ {
return $total; return $total;
} }


public function getMarginOrderProductsWithReductions(OrderShopInterface $orderShop): float
{
$total = $this->getMarginOrderProducts($orderShop);

$totalReductionAmount = 0;
foreach ($orderShop->getOrderReductionCarts() as $orderReductionCart) {
$totalReductionAmount += $this->getOrderProductsReductionCartAmountWithoutTax($orderShop, $orderReductionCart);
}

foreach ($orderShop->getOrderReductionCredits() as $orderReductionCredit) {
$totalReductionAmount += $this->getOrderProductsReductionCreditAmountWithoutTax($orderShop, $orderReductionCredit);
}

$total -= $totalReductionAmount;

return $total;
}

public function getMarginOrderProductsPercent(OrderShopInterface $orderShop): float public function getMarginOrderProductsPercent(OrderShopInterface $orderShop): float
{ {
if ($this->getTotalOrderProducts($orderShop)) { if ($this->getTotalOrderProducts($orderShop)) {
return $this->round($this->getMarginOrderProducts($orderShop) / $this->getTotalOrderProducts($orderShop) * 100);
return $this->round($this->getMarginOrderProductsWithReductions($orderShop) / $this->getTotalOrderProductsWithReductions($orderShop) * 100);
} else { } else {
return 0; return 0;
} }

} }


public function getMarginOrderProductsWithReductionsPercent(OrderShopInterface $orderShop): float
{
if ($this->getTotalOrderProducts($orderShop)) {
return $this->round($this->getMarginOrderProducts($orderShop) / $this->getTotalOrderProducts($orderShop) * 100);
} else {
return 0;
}
}


public function getTotalOrderProductsWithTax(OrderShopInterface $orderShop): float public function getTotalOrderProductsWithTax(OrderShopInterface $orderShop): float
{ {
return $total; return $total;
} }



public function getMarginOrderProductsWithReductions(OrderShopInterface $orderShop): float
{
$total = $this->getMarginOrderProducts($orderShop);

$totalReductionAmount = 0;
foreach ($orderShop->getOrderReductionCarts() as $orderReductionCart) {
$totalReductionAmount += $this->getOrderProductsReductionCartAmountWithoutTax($orderShop, $orderReductionCart);
}

foreach ($orderShop->getOrderReductionCredits() as $orderReductionCredit) {
$totalReductionAmount += $this->getOrderProductsReductionCreditAmountWithoutTax($orderShop, $orderReductionCredit);
}

$total -= $totalReductionAmount;

return $total;
}


public function getTotalOrderProductsWithTaxAndReductionCarts(OrderShopInterface $orderShop) public function getTotalOrderProductsWithTaxAndReductionCarts(OrderShopInterface $orderShop)
{ {
$total = $this->getTotalOrderProductsWithTax($orderShop); $total = $this->getTotalOrderProductsWithTax($orderShop);

Loading…
Cancel
Save