src/Entity/ShoppingCartDetail.php line 12

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ShoppingCartDetailRepository;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Gedmo\Blameable\Traits\BlameableEntity;
  6. use Gedmo\Timestampable\Traits\TimestampableEntity;
  7. use Symfony\Component\Validator\Constraints as Assert;
  8. #[ORM\Entity(repositoryClassShoppingCartDetailRepository::class)]
  9. class ShoppingCartDetail
  10. {
  11.     use BlameableEntity//Hook blameable behaviour. Updates createdBy, updatedBy fields
  12.     use TimestampableEntity//Hook timestampable behaviour. Updates createdAt, updatedAt fields 
  13.     
  14.     #[ORM\Id]
  15.     #[ORM\GeneratedValue(strategy"IDENTITY")]
  16.     #[ORM\Column]
  17.     private ?int $id null;
  18.     #[ORM\ManyToOne(inversedBy'shoppingCartDetails')]
  19.     #[ORM\JoinColumn(nullablefalse)]
  20.     #[Assert\NotNull()]
  21.     private ?ShoppingCart $header null;
  22.     #[ORM\ManyToOne]
  23.     #[ORM\JoinColumn(nullablefalse)]
  24.     #[Assert\NotNull()]
  25.     private ?Product $product null;
  26.     #[ORM\Column]
  27.     #[Assert\NotNull()]
  28.     #[Assert\Positive()]
  29.     #[Assert\Expression(
  30.         "!this.getProduct().getLimitUnitsPerBuyer() or value <= this.getProduct().getLimitUnitsPerBuyer()",
  31.     )]
  32.     private ?int $quantity null;
  33.     
  34.     public function __toString()
  35.     {
  36.         return ($this->header $this->header->getId() : "") . "_" $this->id;
  37.     }
  38.     public function getId(): ?int
  39.     {
  40.         return $this->id;
  41.     }
  42.     public function getHeader(): ?ShoppingCart
  43.     {
  44.         return $this->header;
  45.     }
  46.     public function setHeader(?ShoppingCart $header): self
  47.     {
  48.         $this->header $header;
  49.         return $this;
  50.     }
  51.     public function getProduct(): ?Product
  52.     {
  53.         return $this->product;
  54.     }
  55.     public function setProduct(?Product $product): self
  56.     {
  57.         $this->product $product;
  58.         return $this;
  59.     }
  60.     
  61.     public function getQuantity(): ?int
  62.     {
  63.         return $this->quantity;
  64.     }
  65.     public function setQuantity(int $quantity): self
  66.     {
  67.         $this->quantity $quantity;
  68.         return $this;
  69.     }
  70. }