vendor/shopware/core/Checkout/Cart/Price/Struct/ListPrice.php line 10

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace Shopware\Core\Checkout\Cart\Price\Struct;
  3. use Shopware\Core\Framework\Log\Package;
  4. use Shopware\Core\Framework\Struct\Struct;
  5. use Shopware\Core\Framework\Util\FloatComparator;
  6. #[Package('checkout')]
  7. class ListPrice extends Struct
  8. {
  9.     /**
  10.      * @var float
  11.      */
  12.     protected $price;
  13.     /**
  14.      * @var float
  15.      */
  16.     protected $discount;
  17.     /**
  18.      * @var float
  19.      */
  20.     protected $percentage;
  21.     private function __construct(float $pricefloat $discountfloat $percentage)
  22.     {
  23.         $this->price FloatComparator::cast($price);
  24.         $this->discount FloatComparator::cast($discount);
  25.         $this->percentage FloatComparator::cast($percentage);
  26.     }
  27.     public static function createFromUnitPrice(float $unitPricefloat $listPrice): ListPrice
  28.     {
  29.         return new self(
  30.             $listPrice,
  31.             ($listPrice $unitPrice) * -1,
  32.             round(100 $unitPrice $listPrice 1002)
  33.         );
  34.     }
  35.     public function getPrice(): float
  36.     {
  37.         return FloatComparator::cast($this->price);
  38.     }
  39.     public function getDiscount(): float
  40.     {
  41.         return FloatComparator::cast($this->discount);
  42.     }
  43.     public function getPercentage(): float
  44.     {
  45.         return FloatComparator::cast($this->percentage);
  46.     }
  47.     public function getApiAlias(): string
  48.     {
  49.         return 'cart_list_price';
  50.     }
  51. }