src/Entity/Packing.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Product\Product;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. /**
  8.  * Packing
  9.  *
  10.  * @ORM\Table(name="packing")
  11.  * @ORM\Entity()
  12.  */
  13. class Packing
  14. {
  15.     /**
  16.      * @ORM\Id
  17.      * @ORM\GeneratedValue
  18.      * @ORM\Column(type="integer")
  19.      */
  20.     private $id;
  21.     /**
  22.      * @ORM\Column(type="string", length=255)
  23.      */
  24.     private $name;
  25.     /**
  26.      * @ORM\Column(type="float")
  27.      */
  28.     private $length;
  29.     /**
  30.      * @ORM\Column(type="float")
  31.      */
  32.     private $width;
  33.     /**
  34.      * @ORM\Column(type="float")
  35.      */
  36.     private $height;
  37.     /**
  38.      * @ORM\Column(type="float")
  39.      */
  40.     private $weight;
  41.     /**
  42.      * @ORM\OneToMany(targetEntity=Product::class, mappedBy="packing")
  43.      */
  44.     private $products;
  45.     public function __construct()
  46.     {
  47.         $this->products = new ArrayCollection();
  48.     }
  49.     public function getId(): ?int
  50.     {
  51.         return $this->id;
  52.     }
  53.     public function getName(): ?string
  54.     {
  55.         return $this->name;
  56.     }
  57.     public function setName(string $name): self
  58.     {
  59.         $this->name $name;
  60.         return $this;
  61.     }
  62.     public function getLength(): ?float
  63.     {
  64.         return $this->length;
  65.     }
  66.     public function setLength(float $length): self
  67.     {
  68.         $this->length $length;
  69.         return $this;
  70.     }
  71.     public function getWidth(): ?float
  72.     {
  73.         return $this->width;
  74.     }
  75.     public function setWidth(float $width): self
  76.     {
  77.         $this->width $width;
  78.         return $this;
  79.     }
  80.     public function getHeight(): ?float
  81.     {
  82.         return $this->height;
  83.     }
  84.     public function setHeight(float $height): self
  85.     {
  86.         $this->height $height;
  87.         return $this;
  88.     }
  89.     public function __toString()
  90.     {
  91.         return "{$this->name} ({$this->length}x{$this->width}x{$this->height})x{$this->weight}Kg";
  92.     }
  93.     public function getWeight(): ?float
  94.     {
  95.         return $this->weight;
  96.     }
  97.     public function setWeight(float $weight): self
  98.     {
  99.         $this->weight $weight;
  100.         return $this;
  101.     }
  102.     /**
  103.      * @return Collection<int, Product>
  104.      */
  105.     public function getProducts(): Collection
  106.     {
  107.         return $this->products;
  108.     }
  109.     public function addProduct(Product $product): self
  110.     {
  111.         if (!$this->products->contains($product)) {
  112.             $this->products[] = $product;
  113.             $product->setPacking($this);
  114.         }
  115.         return $this;
  116.     }
  117.     public function removeProduct(Product $product): self
  118.     {
  119.         if ($this->products->removeElement($product)) {
  120.             // set the owning side to null (unless already changed)
  121.             if ($product->getPacking() === $this) {
  122.                 $product->setPacking(null);
  123.             }
  124.         }
  125.         return $this;
  126.     }
  127. }