src/Entity/Favoris.php line 32

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use ApiPlatform\Core\Annotation\ApiFilter;
  4. use ApiPlatform\Core\Annotation\ApiResource;
  5. use ApiPlatform\Core\Bridge\Doctrine\Orm\Filter\SearchFilter;
  6. use App\Controller\Defavoriser;
  7. use App\Controller\DefavoriserController;
  8. use App\Controller\DefavoriserStatistique;
  9. use App\Repository\FavorisRepository;
  10. use Doctrine\ORM\Mapping as ORM;
  11. use Symfony\Component\Serializer\Annotation\Groups;
  12. #[ORM\Entity(repositoryClassFavorisRepository::class)]
  13. #[ApiResource(
  14.     normalizationContext:[
  15.         'groups'=>['favoris:read']
  16.     ],
  17.     collectionOperations:[
  18.         "post",
  19.         'get',
  20.         'get_defavoriser' => [
  21.             'method' => 'GET',
  22.             'path' => "favoris/defavoris",
  23.             'controller' => DefavoriserController::class,
  24.             'read' => false,
  25.         ],
  26.     ]
  27. )]
  28. #[ApiFilter(SearchFilter::class, properties: ['user' => 'exact'])]
  29. class Favoris
  30. {
  31.     #[ORM\Id]
  32.     #[ORM\GeneratedValue]
  33.     #[ORM\Column(type'integer')]
  34.     #[Groups(['favoris:read'])]
  35.     private $id;
  36.     #[ORM\ManyToOne(targetEntityUser::class)]
  37.     #[ORM\JoinColumn(nullablefalse)]
  38.     private $user;
  39.     #[ORM\ManyToOne(targetEntityPitch::class)]
  40.     #[Groups(['favoris:read'])]
  41.     private $pitch;
  42.     public function getId(): ?int
  43.     {
  44.         return $this->id;
  45.     }
  46.     public function getUser(): ?User
  47.     {
  48.         return $this->user;
  49.     }
  50.     public function setUser(?User $user): self
  51.     {
  52.         $this->user $user;
  53.         return $this;
  54.     }
  55.     public function getPitch(): ?Pitch
  56.     {
  57.         return $this->pitch;
  58.     }
  59.     public function setPitch(?Pitch $pitch): self
  60.     {
  61.         $this->pitch $pitch;
  62.         return $this;
  63.     }
  64. }