src/Entity/Slide.php line 31

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use ApiPlatform\Metadata\ApiResource;
  4. use App\Repository\SlideRepository;
  5. use Doctrine\DBAL\Types\Types;
  6. use Doctrine\ORM\Mapping as ORM
  7. use ApiPlatform\Metadata\ApiFilter;
  8. use ApiPlatform\Doctrine\Orm\Filter\SearchFilter;
  9. use Symfony\Component\Serializer\Annotation\Groups;
  10. #[ORM\Entity(repositoryClassSlideRepository::class)]
  11. #[ApiResource(
  12.     normalizationContext: ['groups' => ['slider:read']],
  13.     denormalizationContext: ['groups' => ['slider:write']],
  14.     order: ['id' => 'DESC'],
  15. )]
  16. #[ApiFilter(
  17.     SearchFilter::class, 
  18.     properties: [
  19.         'slider.id' => 'exact',
  20.         'slider.slug' => 'ipartial'
  21.         'name' => 'ipartial'
  22.     ]
  23. )]
  24. class Slide
  25. {
  26.     #[ORM\Id]
  27.     #[ORM\GeneratedValue]
  28.     #[ORM\Column]
  29.     #[Groups(['slider:read''slider:write''page:read'])]
  30.     private ?int $id null;
  31.     #[ORM\Column(length255nullabletrue)]
  32.     #[Groups(['slider:read''slider:write''page:read'])]
  33.     private ?string $name null;
  34.     #[ORM\Column(typeTypes::TEXTnullabletrue)]
  35.     #[Groups(['slider:read''slider:write''page:read'])]
  36.     private ?string $content null;
  37.     #[ORM\ManyToOne(inversedBy'slides')]
  38.     #[Groups(['slider:read''slider:write''page:read'])]
  39.     private ?MediaObject $media null;
  40.     #[ORM\Column(nullabletrue)]
  41.     #[Groups(['slider:read''slider:write''page:read'])]
  42.     private ?array $data null;
  43.     #[ORM\Column(length255nullabletrue)]
  44.     #[Groups(['slider:read''slider:write''page:read'])]
  45.     private ?string $btnUrl null;
  46.     #[ORM\Column(length255nullabletrue)]
  47.     #[Groups(['slider:read''slider:write''page:read'])]
  48.     private ?string $mediaUrl null;
  49.     #[ORM\ManyToOne(inversedBy'slides')]
  50.     #[Groups(['slider:read''slider:write'])]
  51.     private ?Slider $slider null;
  52.     #[ORM\Column(nullabletrue)]
  53.     #[Groups(['slider:read''slider:write''page:read'])]
  54.     private ?int $orders null;
  55.     #[ORM\ManyToOne(inversedBy'MobileSlides')]
  56.     #[Groups(['slider:read''slider:write''page:read'])]
  57.     private ?MediaObject $mobileMedia null;
  58.     public function getId(): ?int
  59.     {
  60.         return $this->id;
  61.     }
  62.     public function getName(): ?string
  63.     {
  64.         return $this->name;
  65.     }
  66.     public function setName(?string $name): static
  67.     {
  68.         $this->name $name;
  69.         return $this;
  70.     }
  71.     public function getContent(): ?string
  72.     {
  73.         return $this->content;
  74.     }
  75.     public function setContent(?string $content): static
  76.     {
  77.         $this->content $content;
  78.         return $this;
  79.     }
  80.     public function getMedia(): ?MediaObject
  81.     {
  82.         return $this->media;
  83.     }
  84.     public function setMedia(?MediaObject $media): static
  85.     {
  86.         $this->media $media;
  87.         return $this;
  88.     }
  89.     public function getData(): ?array
  90.     {
  91.         return $this->data;
  92.     }
  93.     public function setData(?array $data): static
  94.     {
  95.         $this->data $data;
  96.         return $this;
  97.     }
  98.     public function getBtnUrl(): ?string
  99.     {
  100.         return $this->btnUrl;
  101.     }
  102.     public function setBtnUrl(?string $btnUrl): static
  103.     {
  104.         $this->btnUrl $btnUrl;
  105.         return $this;
  106.     }
  107.     public function getMediaUrl(): ?string
  108.     {
  109.         return $this->mediaUrl;
  110.     }
  111.     public function setMediaUrl(?string $mediaUrl): static
  112.     {
  113.         $this->mediaUrl $mediaUrl;
  114.         return $this;
  115.     }
  116.     public function getSlider(): ?Slider
  117.     {
  118.         return $this->slider;
  119.     }
  120.     public function setSlider(?Slider $slider): static
  121.     {
  122.         $this->slider $slider;
  123.         return $this;
  124.     }
  125.     public function getOrders(): ?int
  126.     {
  127.         return $this->orders;
  128.     }
  129.     public function setOrders(?int $orders): static
  130.     {
  131.         $this->orders $orders;
  132.         return $this;
  133.     }
  134.     public function getMobileMedia(): ?MediaObject
  135.     {
  136.         return $this->mobileMedia;
  137.     }
  138.     public function setMobileMedia(?MediaObject $mobileMedia): static
  139.     {
  140.         $this->mobileMedia $mobileMedia;
  141.         return $this;
  142.     }
  143. }