src/Entity/CartItemPurchase.php line 8

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. #[ORM\Entity]
  5. class CartItemPurchase extends CartItem implements CartItemShopInterface
  6. {
  7.     #[ORM\ManyToOne(targetEntityItemVariation::class, inversedBy'purchases')]
  8.     private $purchaseItem;
  9.     public function getPurchaseItem(): ?ItemVariation
  10.     {
  11.         return $this->purchaseItem;
  12.     }
  13.     public function setPurchaseItem(?ItemVariation $purchaseItem): self
  14.     {
  15.         $this->purchaseItem $purchaseItem;
  16.         return $this;
  17.     }
  18.     public function getVariation(): ItemVariation
  19.     {
  20.         return $this->purchaseItem;
  21.     }
  22.     public function getName(): ?string
  23.     {
  24.         return parent::getName() ?? sprintf('%s (achat)'$this->getPurchaseItem()?->getName());
  25.     }
  26.     public static function createFromItemVariation(ItemVariation $variation): CartItem
  27.     {
  28.         return (new self())
  29.             ->setPrice($variation->getPrice())
  30.             ->setPurchaseItem($variation);
  31.     }
  32. }