<?phpnamespace App\Entity;use App\Repository\ReviewFormRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;use Ramsey\Uuid\Doctrine\UuidGenerator;#[ORM\Entity(repositoryClass: ReviewFormRepository::class)]class ReviewForm{ #[ORM\Id] #[ORM\Column(type: 'uuid', unique: true)] #[ORM\GeneratedValue(strategy: 'CUSTOM')] #[ORM\CustomIdGenerator(class: UuidGenerator::class)] private ?\Ramsey\Uuid\UuidInterface $id = null; #[ORM\Column(type: Types::DATETIME_MUTABLE)] private ?\DateTimeInterface $createdAt = null; #[ORM\Column(length: 255)] private ?string $name = null; #[ORM\OneToMany(targetEntity: Dimension::class, mappedBy: 'reviewForm')] private Collection $dimensions; #[ORM\OneToMany(targetEntity: Employee::class, mappedBy: 'ReviewForm')] private Collection $employees; #[ORM\OneToMany(targetEntity: Session::class, mappedBy: 'reviewForm')] private Collection $sessions; #[ORM\ManyToOne] private ?Client $client = null; public function __construct() { $this->createdAt = new \DateTime(); $this->dimensions = new ArrayCollection(); $this->employees = new ArrayCollection(); $this->sessions = new ArrayCollection(); } public function getId(): ?\Ramsey\Uuid\UuidInterface { return $this->id; } public function getCreatedAt(): ?\DateTimeInterface { return $this->createdAt; } public function setCreatedAt(\DateTimeInterface $createdAt): static { $this->createdAt = $createdAt; return $this; } public function getName(): ?string { return $this->name; } public function setName(string $name): static { $this->name = $name; return $this; } /** * @return Collection<int, Dimension> */ public function getDimensions(): Collection { return $this->dimensions; } public function addDimension(Dimension $dimension): static { if (!$this->dimensions->contains($dimension)) { $this->dimensions->add($dimension); $dimension->setReviewForm($this); } return $this; } public function removeDimension(Dimension $dimension): static { if ($this->dimensions->removeElement($dimension)) { // set the owning side to null (unless already changed) if ($dimension->getReviewForm() === $this) { $dimension->setReviewForm(null); } } return $this; } /** * @return Collection<int, Employee> */ public function getEmployees(): Collection { return $this->employees; } public function addEmployee(Employee $employee): static { if (!$this->employees->contains($employee)) { $this->employees->add($employee); $employee->setReviewForm($this); } return $this; } public function removeEmployee(Employee $employee): static { if ($this->employees->removeElement($employee)) { // set the owning side to null (unless already changed) if ($employee->getReviewForm() === $this) { $employee->setReviewForm(null); } } return $this; } /** * @return Collection<int, Session> */ public function getSessions(): Collection { return $this->sessions; } public function addSession(Session $session): static { if (!$this->sessions->contains($session)) { $this->sessions->add($session); $session->setReviewForm($this); } return $this; } public function removeSession(Session $session): static { if ($this->sessions->removeElement($session)) { // set the owning side to null (unless already changed) if ($session->getReviewForm() === $this) { $session->setReviewForm(null); } } return $this; } public function getClient(): ?client { return $this->client; } public function setClient(?client $client): static { $this->client = $client; return $this; }}