src/Entity/NiveauPack.php line 28

  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. use ApiPlatform\Metadata\ApiFilter;
  5. use ApiPlatform\Metadata\ApiResource;
  6. use ApiPlatform\Metadata\Get;
  7. use ApiPlatform\Metadata\GetCollection;
  8. use App\Repository\NiveauPackRepository;
  9. use Doctrine\Common\Collections\Collection;
  10. use Doctrine\Common\Collections\ArrayCollection;
  11. use ApiPlatform\Doctrine\Orm\Filter\SearchFilter;
  12. use Symfony\Component\Serializer\Annotation\Groups;
  13. #[ORM\Entity(repositoryClassNiveauPackRepository::class)]
  14. #[ApiResource(
  15.     normalizationContext: ['groups' => ['read:niveau']],
  16.     denormalizationContext: ['groups' => ['write:niveau']],
  17.     operations: [
  18.         new Get(),
  19.         new GetCollection(),
  20.     ],
  21.     paginationEnabledtrue,
  22.     paginationItemsPerPage30
  23. )]
  24. class NiveauPack
  25. {
  26.     #[ORM\Id]
  27.     #[ORM\GeneratedValue]
  28.     #[ORM\Column]
  29.     #[Groups(['read:niveau''read:pack'])]
  30.     private ?int $id null;
  31.     #[ORM\Column(length255)]
  32.     #[Groups(['read:niveau''read:pack'])]
  33.     private ?string $nomNiveau null;
  34.     #[ORM\OneToMany(mappedBy'niveauPack'targetEntityPack::class)]
  35.     private Collection $packs;
  36.     #[ORM\Column(length255)]
  37.     #[Groups(['read:niveau''read:pack'])]
  38.     private ?string $image null;
  39.     public function __construct()
  40.     {
  41.         $this->packs = new ArrayCollection();
  42.     }
  43.     public function getId(): ?int
  44.     {
  45.         return $this->id;
  46.     }
  47.     public function getNomNiveau(): ?string
  48.     {
  49.         return $this->nomNiveau;
  50.     }
  51.     public function setNomNiveau(string $nomNiveau): self
  52.     {
  53.         $this->nomNiveau $nomNiveau;
  54.         return $this;
  55.     }
  56.     /**
  57.      * @return Collection<int, Pack>
  58.      */
  59.     public function getPacks(): Collection
  60.     {
  61.         return $this->packs;
  62.     }
  63.     public function addPack(Pack $pack): self
  64.     {
  65.         if (!$this->packs->contains($pack)) {
  66.             $this->packs->add($pack);
  67.             $pack->setNiveauPack($this);
  68.         }
  69.         return $this;
  70.     }
  71.     public function removePack(Pack $pack): self
  72.     {
  73.         if ($this->packs->removeElement($pack)) {
  74.             // set the owning side to null (unless already changed)
  75.             if ($pack->getNiveauPack() === $this) {
  76.                 $pack->setNiveauPack(null);
  77.             }
  78.         }
  79.         return $this;
  80.     }
  81.     public function getImage(): ?string
  82.     {
  83.         return $this->image;
  84.     }
  85.     public function setImage(string $image): self
  86.     {
  87.         $this->image $image;
  88.         return $this;
  89.     }
  90. }