<?phpnamespace App\Entity;use App\Entity\Traits\Timestampable;use App\Repository\EventRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;use JMS\Serializer\Annotation\Groups;#[ORM\Table(name: "event")]#[ORM\Index(columns: ["title","description"], name: "event",flags: ['fulltext'])]#[ORM\HasLifecycleCallbacks]#[ORM\Entity(repositoryClass: EventRepository::class)]class Event{ use Timestampable; #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column] #[Groups(['getEvent'])] private ?int $id = null; #[ORM\Column(length: 255)] #[Groups(['getEvent'])] private ?string $title = null; #[ORM\Column(type: Types::TEXT, nullable: true)] #[Groups(['getEvent'])] private ?string $description = null; #[ORM\Column(type: Types::DATE_MUTABLE)] #[Groups(['getEvent'])] private ?\DateTimeInterface $dayDate = null; #[ORM\Column(type: Types::TIME_MUTABLE)] #[Groups(['getEvent'])] private ?\DateTimeInterface $startTime = null; #[ORM\Column(type: Types::TIME_MUTABLE)] #[Groups(['getEvent'])] private ?\DateTimeInterface $endTime = null; #[ORM\ManyToOne(inversedBy: 'event', cascade: ["persist"])] #[Groups(['getEvent'])] private ?CategoryEvent $categoryEvent = null; #[ORM\ManyToOne(inversedBy: 'events', cascade: ["persist"])] private ?User $author = null; #[ORM\ManyToOne(inversedBy: 'eventsEdited', cascade: ["persist"])] private ?User $editor = null; #[ORM\ManyToOne(inversedBy: 'events', cascade: ["persist"])] private ?School $school = null; #[ORM\ManyToOne(inversedBy: 'events')] private ?SchoolYear $year = null; public function getId(): ?int { return $this->id; } public function getTitle(): ?string { return $this->title; } public function setTitle(string $title): static { $this->title = $title; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(?string $description): static { $this->description = $description; return $this; } public function getDayDate(): ?\DateTimeInterface { return $this->dayDate; } public function setDayDate(\DateTimeInterface $dayDate): static { $this->dayDate = $dayDate; return $this; } public function getStartTime(): ?\DateTimeInterface { return $this->startTime; } public function setStartTime(\DateTimeInterface $startTime): static { $this->startTime = $startTime; return $this; } public function getEndTime(): ?\DateTimeInterface { return $this->endTime; } public function setEndTime(\DateTimeInterface $endTime): static { $this->endTime = $endTime; return $this; } public function getCategoryEvent(): ?CategoryEvent { return $this->categoryEvent; } public function setCategoryEvent(?CategoryEvent $categoryEvent): static { $this->categoryEvent = $categoryEvent; return $this; } public function getAuthor(): ?User { return $this->author; } public function setAuthor(?User $author): static { $this->author = $author; return $this; } public function getEditor(): ?User { return $this->editor; } public function setEditor(?User $editor): static { $this->editor = $editor; return $this; } public function getSchool(): ?School { return $this->school; } public function setSchool(?School $school): static { $this->school = $school; return $this; } public function getYear(): ?SchoolYear { return $this->year; } public function setYear(?SchoolYear $year): static { $this->year = $year; return $this; }}