Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
srv
/
data
/
web
/
vhosts
/
716cf56cb2.url-de-test.ws
/
htdocs
/
src
/
Entity
/
/srv/data/web/vhosts/716cf56cb2.url-de-test.ws/htdocs/src/Entity/Option.php
<?php namespace App\Entity; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use Symfony\Component\Validator\Constraints as Assert; use App\Repository\OptionRepository; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity(repositoryClass=OptionRepository::class) * @ORM\Table(name="`option`") */ class Option { /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=255) * @Assert\NotBlank(message="Le nom ne doit pas être vide") */ private $name; /** * @ORM\Column(type="text") * @Assert\NotBlank(message="La description ne doit pas être vide") */ private $description; /** * @ORM\Column(type="integer") * @Assert\NotNull(message="Le prix ne doit pas être vide") * @Assert\Positive(message="Le prix doit être superieur à 0") */ private $price; /** * @ORM\Column(type="datetime_immutable") */ private $createdAt; /** * @ORM\Column(type="datetime_immutable", nullable=true) */ private $updatedAt; /** * @ORM\ManyToMany(targetEntity=Logement::class, mappedBy="options") */ private $logements; /** * @ORM\Column(type="boolean") */ private $isRequired; /** * @ORM\Column(type="string", length=255) */ private $alias; public function __construct() { $this->createdAt = new \DateTimeImmutable(); $this->logements = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getName(): ?string { return $this->name; } public function setName(string $name): self { $this->name = $name; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(string $description): self { $this->description = $description; return $this; } public function getPrice(): ?int { return $this->price; } public function setPrice(int $price): self { $this->price = $price; return $this; } public function getCreatedAt(): ?\DateTimeImmutable { return $this->createdAt; } public function setCreatedAt(\DateTimeImmutable $createdAt): self { $this->createdAt = $createdAt; return $this; } public function getUpdatedAt(): ?\DateTimeImmutable { return $this->updatedAt; } public function setUpdatedAt(?\DateTimeImmutable $updatedAt): self { $this->updatedAt = $updatedAt; return $this; } /** * @return Collection<int, Logement> */ public function getLogements(): Collection { return $this->logements; } public function addLogement(Logement $logement): self { if (!$this->logements->contains($logement)) { $this->logements[] = $logement; $logement->addOption($this); } return $this; } public function removeLogement(Logement $logement): self { if ($this->logements->removeElement($logement)) { $logement->removeOption($this); } return $this; } public function isIsRequired(): ?bool { return $this->isRequired; } public function setIsRequired(bool $isRequired): self { $this->isRequired = $isRequired; return $this; } public function getAlias(): ?string { return $this->alias; } public function setAlias(string $alias): self { $this->alias = $alias; return $this; } }