src/Flexy/BookingBundle/Entity/Offer.php line 13
<?phpnamespace App\Flexy\BookingBundle\Entity;use ApiPlatform\Core\Annotation\ApiResource;use App\Repository\Flexy\BookingBundle\Entity\OfferRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;#[ApiResource]#[ORM\Entity(repositoryClass: OfferRepository::class)]class Offer{#[ORM\Id]#[ORM\GeneratedValue]#[ORM\Column(type: 'integer')]private $id;#[ORM\Column(type: 'string', length: 255)]private ?string $name = null;#[ORM\Column(type: 'text', nullable: true)]private ?string $description = null;#[ORM\Column(type: 'datetime_immutable', nullable: true)]private ?\DateTimeImmutable $createdAt = null;#[ORM\Column(type: 'float')]private ?float $price = null;#[ORM\Column(type: 'float', nullable: true)]private ?float $oldPrice = null;#[ORM\Column(type: 'datetime_immutable', nullable: true)]private ?\DateTimeImmutable $endAt = null;#[ORM\OneToMany(targetEntity: Reservation::class, mappedBy: 'offer')]private \Doctrine\Common\Collections\Collection|array $reservations;#[ORM\ManyToOne(targetEntity: CategoryOffer::class, inversedBy: 'offers')]private ?\App\Flexy\BookingBundle\Entity\CategoryOffer $categoryOffer = null;#[ORM\Column(type: 'string', length: 255, nullable: true)]private ?string $image = null;public function __construct(){$this->reservations = new ArrayCollection();$this->createdAt = new \DateTimeImmutable();}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 getCreatedAt(): ?\DateTimeImmutable{return $this->createdAt;}public function setCreatedAt(?\DateTimeImmutable $createdAt): self{$this->createdAt = $createdAt;return $this;}public function getPrice(): ?float{return $this->price;}public function setPrice(float $price): self{$this->price = $price;return $this;}public function getOldPrice(): ?float{return $this->oldPrice;}public function setOldPrice(?float $oldPrice): self{$this->oldPrice = $oldPrice;return $this;}public function getEndAt(): ?\DateTimeImmutable{return $this->endAt;}public function setEndAt(?\DateTimeImmutable $endAt): self{$this->endAt = $endAt;return $this;}/*** @return Collection<int, Reservation>*/public function getReservations(): Collection{return $this->reservations;}public function addReservation(Reservation $reservation): self{if (!$this->reservations->contains($reservation)) {$this->reservations[] = $reservation;$reservation->setOffer($this);}return $this;}public function removeReservation(Reservation $reservation): self{if ($this->reservations->removeElement($reservation)) {// set the owning side to null (unless already changed)if ($reservation->getOffer() === $this) {$reservation->setOffer(null);}}return $this;}public function getCategoryOffer(): ?CategoryOffer{return $this->categoryOffer;}public function setCategoryOffer(?CategoryOffer $categoryOffer): self{$this->categoryOffer = $categoryOffer;return $this;}public function getImage(): ?string{return $this->image;}public function setImage(?string $image): self{$this->image = $image;return $this;}public function getFormattedPrice(){return $this->getPrice() / 100 ;}}