src/Entity/Contact.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Category;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Sulu\Bundle\ContactBundle\Entity\Contact as SuluContact;
  8. use JMS\Serializer\Annotation\ExclusionPolicy;
  9. /**
  10.  * @ORM\Entity()
  11.  * @ORM\Table(name="co_contacts")
  12.  * @ExclusionPolicy("all")
  13.  */
  14. class Contact extends SuluContact
  15. {
  16.     /**
  17.      * @ORM\Column(type="boolean")
  18.      */
  19.     private ?bool $visibleAnnuaire true;
  20.     /**
  21.      * @ORM\Column(type="text", nullable=true)
  22.      */
  23.     private ?string $freeText;
  24.     /**
  25.      * @ORM\ManyToOne(targetEntity=TypologieActeur::class, inversedBy="contact")
  26.      */
  27.     private $typologieActeur;
  28.     /**
  29.      * @ORM\Column(type="string", length=255, nullable=true)
  30.      */
  31.     private $autresTypologieActeur;
  32.     /**
  33.      * @ORM\Column(type="string", length=255, nullable=true)
  34.      */
  35.     private $structure;
  36.     /**
  37.      * @ORM\ManyToOne(targetEntity=TypologieStructure::class, inversedBy="contact")
  38.      */
  39.     private $typologieStructure;
  40.     /**
  41.      * @ORM\ManyToOne(targetEntity=Category::class, inversedBy="contacts")
  42.      */
  43.     private $departement;
  44.     /**
  45.      * @ORM\ManyToOne(targetEntity=Category::class, inversedBy="territoireContacts")
  46.      */
  47.     private $territoireInterv;
  48.     /**
  49.      * @ORM\ManyToMany(targetEntity=Category::class, inversedBy="optinsContacts")
  50.      */
  51.     private $optins;
  52.     public function __construct()
  53.     {
  54.         parent::__construct();
  55.         $this->optins = new ArrayCollection();
  56.     }
  57.     public function getVisibleAnnuaire(): ?bool
  58.     {
  59.         return $this->visibleAnnuaire;
  60.     }
  61.     public function setVisibleAnnuaire(?bool $visibleAnnuaire): void
  62.     {
  63.         $this->visibleAnnuaire $visibleAnnuaire;
  64.     }
  65.     public function getFreeText(): ?string
  66.     {
  67.         return $this->freeText;
  68.     }
  69.     public function setFreeText(?string $freeText): void
  70.     {
  71.         $this->freeText $freeText;
  72.     }
  73.     public function getTypologieActeur(): ?TypologieActeur
  74.     {
  75.         return $this->typologieActeur;
  76.     }
  77.     public function setTypologieActeur(?TypologieActeur $typologieActeur): self
  78.     {
  79.         $this->typologieActeur $typologieActeur;
  80.         return $this;
  81.     }
  82.     public function getAutresTypologieActeur(): ?string
  83.     {
  84.         return $this->autresTypologieActeur;
  85.     }
  86.     public function setAutresTypologieActeur(?string $autresTypologieActeur): self
  87.     {
  88.         $this->autresTypologieActeur $autresTypologieActeur;
  89.         return $this;
  90.     }
  91.     public function getStructure(): ?string
  92.     {
  93.         return $this->structure;
  94.     }
  95.     public function setStructure(?string $structure): self
  96.     {
  97.         $this->structure $structure;
  98.         return $this;
  99.     }
  100.     public function getTypologieStructure(): ?TypologieStructure
  101.     {
  102.         return $this->typologieStructure;
  103.     }
  104.     public function setTypologieStructure(?TypologieStructure $typologieStructure): self
  105.     {
  106.         $this->typologieStructure $typologieStructure;
  107.         return $this;
  108.     }
  109.     public function getDepartement(): ?Category
  110.     {
  111.         return $this->departement;
  112.     }
  113.     public function setDepartement(?Category $departement): self
  114.     {
  115.         $this->departement $departement;
  116.         return $this;
  117.     }
  118.     public function getTerritoireInterv(): ?Category
  119.     {
  120.         return $this->territoireInterv;
  121.     }
  122.     public function setTerritoireInterv(?Category $territoireInterv): self
  123.     {
  124.         $this->territoireInterv $territoireInterv;
  125.         return $this;
  126.     }
  127.     /**
  128.      * @return Collection<int, Category>
  129.      */
  130.     public function getOptins(): Collection
  131.     {
  132.         return $this->optins;
  133.     }
  134.     public function addOptin(Category $optin): self
  135.     {
  136.         if (!$this->optins->contains($optin)) {
  137.             $this->optins[] = $optin;
  138.         }
  139.         return $this;
  140.     }
  141.     public function removeOptin(Category $optin): self
  142.     {
  143.         $this->optins->removeElement($optin);
  144.         return $this;
  145.     }
  146. }