src/Entity/Hebergement.php line 30

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Symfony package.
  4.  *
  5.  * (c) Fabien Potencier <fabien@symfony.com>
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. namespace App\Entity;
  11. use Doctrine\Common\Collections\ArrayCollection;
  12. use Doctrine\Common\Collections\Collection;
  13. use Doctrine\ORM\Mapping as ORM;
  14. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  15. use Symfony\Component\Validator\Constraints as Assert;
  16. /**
  17.  * @ORM\Entity()
  18.  * @ORM\Table(name="hebergement")
  19.  *
  20.  * Defines the properties of the Tag entity to represent the subcategory tags.
  21.  *
  22.  * See https://symfony.com/doc/current/doctrine.html#creating-an-entity-class
  23.  *
  24.  * @author Yonel Ceruto <yonelceruto@gmail.com>
  25.  */
  26. class Hebergement {
  27.     /**
  28.      * @ORM\Id
  29.      * @ORM\GeneratedValue
  30.      * @ORM\Column(type="integer")
  31.      */
  32.     private ?int $id null;
  33.     /**
  34.      * @ORM\Column(type="string", nullable=true)
  35.      */
  36.     private ?string $name null;
  37.     /**
  38.      * @ORM\Column(type="string", nullable=true)
  39.      */
  40.     private ?string $description null;
  41.     /**
  42.      * @ORM\Column(type="boolean")
  43.      */
  44.     private $published;
  45.     /**
  46.      * @ORM\Column(type="string", nullable=true)
  47.      */
  48.     private ?string $ordre null;
  49.     /**
  50.      * @ORM\Column(type="string", nullable=true)
  51.      */
  52.     private ?string $price null;
  53.     /**
  54.      * @ORM\Column(type="string", nullable=true)
  55.      */
  56.     private ?string $image null;
  57.     /**
  58.      * @ORM\OneToMany(targetEntity="App\Entity\Media", mappedBy="hebergement",orphanRemoval=true))
  59.      * @ORM\OrderBy({"id": "DESC"})
  60.      */
  61.     private Collection $medias;
  62.     /**
  63.      * @ORM\ManyToOne(targetEntity="App\Entity\Experience", inversedBy="hebergements")
  64.      */
  65.     private $experience;
  66.     public function __construct() {
  67.         $this->experiences = new ArrayCollection();
  68.         $this->medias = new ArrayCollection();
  69.         $this->published 1;
  70.     }
  71.     public function getId(): ?int {
  72.         return $this->id;
  73.     }
  74.     public function getName(): ?string {
  75.         return $this->name;
  76.     }
  77.     public function getDescription(): ?string {
  78.         return $this->description;
  79.     }
  80.     public function getPublished() {
  81.         return $this->published;
  82.     }
  83.     public function getOrdre(): ?string {
  84.         return $this->ordre;
  85.     }
  86.     public function getPrice(): ?string {
  87.         return $this->price;
  88.     }
  89.     public function getImage(): ?string {
  90.         return $this->image;
  91.     }
  92.     public function getMedias(): Collection {
  93.         return $this->medias;
  94.     }
  95.     public function getExperience() {
  96.         return $this->experience;
  97.     }
  98.     public function setId(?int $id): void {
  99.         $this->id $id;
  100.     }
  101.     public function setName(?string $name): void {
  102.         $this->name $name;
  103.     }
  104.     public function setDescription(?string $description): void {
  105.         $this->description $description;
  106.     }
  107.     public function setPublished($published): void {
  108.         $this->published $published;
  109.     }
  110.     public function setOrdre(?string $ordre): void {
  111.         $this->ordre $ordre;
  112.     }
  113.     public function setPrice(?string $price): void {
  114.         $this->price $price;
  115.     }
  116.     public function setImage(?string $image): void {
  117.         $this->image $image;
  118.     }
  119.     public function setMedias(Collection $medias): void {
  120.         $this->medias $medias;
  121.     }
  122.     public function setExperience($experience): void {
  123.         $this->experience $experience;
  124.     }
  125.         
  126.     public function addMedia(Media $media): void {
  127.         $media->setHebergement($this);
  128.         if (!$this->medias->contains($media)) {
  129.             $this->medias->add($media);
  130.         }
  131.     }
  132.     public function removeMedia(Media $media): void {
  133.         $this->medias->removeElement($media);
  134.     }
  135. }