src/Entity/UserFavorite.php line 18

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\UserFavoriteRepository;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Gedmo\Mapping\Annotation as Gedmo;
  6. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  7. use Symfony\Component\Serializer\Annotation\Groups;
  8. /**
  9.  * @ORM\Entity(repositoryClass=UserFavoriteRepository::class)
  10.  * @UniqueEntity(
  11.  *     fields={"user", "workshop"},
  12.  *     message="user_favorite.unique_entity",
  13.  * )
  14.  */
  15. class UserFavorite
  16. {
  17.     /**
  18.      * @ORM\Id
  19.      * @ORM\GeneratedValue
  20.      * @ORM\Column(type="integer")
  21.      * @Groups({"user_favorite:read"})
  22.      */
  23.     private $id;
  24.     /**
  25.      * @ORM\ManyToOne(targetEntity=User::class, inversedBy="favorites", cascade={"persist"})
  26.      * @ORM\JoinColumn(nullable=false)
  27.      */
  28.     private $user;
  29.     /**
  30.      * @ORM\ManyToOne(targetEntity=Workshop::class, cascade={"persist"})
  31.      * @Groups({"user_favorite:read"})
  32.      */
  33.     private $workshop;
  34.     /**
  35.      * @ORM\Column(type="datetime", nullable=true, options={"default": "CURRENT_TIMESTAMP"})
  36.      * @Gedmo\Timestampable(on="create")
  37.      * @Groups({"user_favorite:read"})
  38.      */
  39.     private $createdAt;
  40.     public function getId(): ?int
  41.     {
  42.         return $this->id;
  43.     }
  44.     public function getUser(): ?User
  45.     {
  46.         return $this->user;
  47.     }
  48.     public function setUser(?User $user): self
  49.     {
  50.         $this->user $user;
  51.         return $this;
  52.     }
  53.     public function getWorkshop(): ?Workshop
  54.     {
  55.         return $this->workshop;
  56.     }
  57.     public function setWorkshop(?Workshop $workshop): self
  58.     {
  59.         $this->workshop $workshop;
  60.         return $this;
  61.     }
  62.     public function getCreatedAt(): ?\DateTimeInterface
  63.     {
  64.         return $this->createdAt;
  65.     }
  66.     public function setCreatedAt(?\DateTimeInterface $createdAt): self
  67.     {
  68.         $this->createdAt $createdAt;
  69.         return $this;
  70.     }
  71. }