<?phpnamespace App\Entity;use App\Entity\Traits\Timestampable;use App\Repository\ExamAgendaElementRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;use JMS\Serializer\Annotation\Groups;#[ORM\HasLifecycleCallbacks]#[ORM\Entity(repositoryClass: ExamAgendaElementRepository::class)]class ExamAgendaElement{ use Timestampable; #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column] #[Groups(['getExamAgenda'])] private ?int $id = null; #[ORM\Column(type: Types::TIME_MUTABLE)] #[Groups(['getExamAgenda'])] private ?\DateTimeInterface $startAt = null; #[ORM\Column(type: Types::TIME_MUTABLE)] #[Groups(['getExamAgenda'])] private ?\DateTimeInterface $endAt = null; #[ORM\Column(length: 255)] #[Groups(['getExamAgenda'])] private ?string $duration = null; #[ORM\Column(length: 255, nullable: true)] #[Groups(['getExamAgenda'])] private ?string $other = null; #[ORM\ManyToOne(inversedBy: 'examAgendaElements')] #[Groups(['getExamAgenda'])] private ?Subject $subject = null; #[ORM\ManyToOne(inversedBy: 'examAgendaElements')] private ?ExamAgendaDay $examAgendaDay = null; #[ORM\ManyToOne(inversedBy: 'examAgendaElements')] #[ORM\JoinColumn(nullable: false)] private ?User $author = null; public function getId(): ?int { return $this->id; } public function getStartAt(): ?\DateTimeInterface { return $this->startAt; } public function setStartAt(\DateTimeInterface $startAt): static { $this->startAt = $startAt; return $this; } public function getEndAt(): ?\DateTimeInterface { return $this->endAt; } public function setEndAt(\DateTimeInterface $endAt): static { $this->endAt = $endAt; return $this; } public function getDuration(): ?string { return $this->duration; } public function setDuration(string $duration): static { $this->duration = $duration; return $this; } public function getOther(): ?string { return $this->other; } public function setOther(?string $other): static { $this->other = $other; return $this; } public function getSubject(): ?Subject { return $this->subject; } public function setSubject(?Subject $subject): static { $this->subject = $subject; return $this; } public function getExamAgendaDay(): ?ExamAgendaDay { return $this->examAgendaDay; } public function setExamAgendaDay(?ExamAgendaDay $examAgendaDay): static { $this->examAgendaDay = $examAgendaDay; return $this; } public function getAuthor(): ?User { return $this->author; } public function setAuthor(?User $author): static { $this->author = $author; return $this; }}