src/Entity/VariablesGroup.php line 12

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\VariablesGroupRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\DBAL\Types\Types;
  7. use Doctrine\ORM\Mapping as ORM;
  8. #[ORM\Entity(repositoryClassVariablesGroupRepository::class)]
  9. class VariablesGroup
  10. {
  11.     #[ORM\Id]
  12.     #[ORM\GeneratedValue]
  13.     #[ORM\Column]
  14.     private ?int $id null;
  15.     #[ORM\Column(length255)]
  16.     private ?string $label null;
  17.     #[ORM\Column(typeTypes::DATETIME_MUTABLE)]
  18.     private ?\DateTimeInterface $date_creation null;
  19.     #[ORM\Column(typeTypes::INTEGERoptions: ['default' => 1])]
  20.     private int $etat 1;
  21.     #[ORM\Column(typeTypes::BOOLEANnullabletrue)]
  22.     private ?bool $contact null;
  23.     #[ORM\Column(typeTypes::BOOLEANnullabletrue)]
  24.     private ?bool $objet null;
  25.     #[ORM\OneToMany(mappedBy'variable_group'targetEntityVariable::class, cascade: ['remove''persist'])]
  26.     private Collection $variables;
  27.     #[ORM\OneToMany(mappedBy'attributGroupe'targetEntityAttributGroupeLiaison::class, cascade: ['remove''persist'])]
  28.     #[ORM\OrderBy(['colonne' => 'ASC''ordre' => 'ASC'])]
  29.     private Collection $attributGroupeLiaisons;
  30.     #[ORM\Column(nullabletrue)]
  31.     private ?bool $societe null;
  32.     #[ORM\Column(nullabletrue)]
  33.     private ?bool $utilisateur null;
  34.     #[ORM\ManyToOne(inversedBy'variablesGroups')]
  35.     private ?Document $document null;
  36.     #[ORM\Column(typeTypes::TEXTnullabletrue)]
  37.     private ?string $icone null;
  38.     #[ORM\Column(typeTypes::BOOLEANoptions: ['default' => false])]
  39.     private bool $actif_fiche false;
  40.     #[ORM\Column(typeTypes::BOOLEANoptions: ['default' => false])]
  41.     private bool $actif_liste false;
  42.     public function __construct()
  43.     {
  44.         $this->variables = new ArrayCollection();
  45.         $this->attributGroupeLiaisons = new ArrayCollection();
  46.     }
  47.     public function getId(): ?int
  48.     {
  49.         return $this->id;
  50.     }
  51.     public function getLabel(): ?string
  52.     {
  53.         return $this->label;
  54.     }
  55.     public function setLabel(string $label): static
  56.     {
  57.         $this->label $label;
  58.         return $this;
  59.     }
  60.     public function getColonne(): int
  61.     {
  62.         if ($this->societe || $this->utilisateur || $this->document) {
  63.             return 1;
  64.         }
  65.         if (!$this->attributGroupeLiaisons->isEmpty()) {
  66.             $firstLiaison $this->attributGroupeLiaisons->first();
  67.             return $firstLiaison->getColonne() ?? 1;
  68.         }
  69.         return 1;
  70.     }
  71.     public function getDateCreation(): ?\DateTimeInterface
  72.     {
  73.         return $this->date_creation;
  74.     }
  75.     public function setDateCreation(\DateTimeInterface $date_creation): static
  76.     {
  77.         $this->date_creation $date_creation;
  78.         return $this;
  79.     }
  80.     public function getVariables(): Collection
  81.     {
  82.         return $this->variables;
  83.     }
  84.     public function addVariable(Variable $variable): static
  85.     {
  86.         if (!$this->variables->contains($variable)) {
  87.             $this->variables->add($variable);
  88.             $variable->setVariableGroup($this);
  89.         }
  90.         return $this;
  91.     }
  92.     public function removeVariable(Variable $variable): static
  93.     {
  94.         if ($this->variables->removeElement($variable)) {
  95.             if ($variable->getVariableGroup() === $this) {
  96.                 $variable->setVariableGroup(null);
  97.             }
  98.         }
  99.         return $this;
  100.     }
  101.     public function getAttributGroupeLiaisons(): Collection
  102.     {
  103.         return $this->attributGroupeLiaisons;
  104.     }
  105.     public function addAttributGroupeLiaison(AttributGroupeLiaison $attributGroupeLiaison): static
  106.     {
  107.         if (!$this->attributGroupeLiaisons->contains($attributGroupeLiaison)) {
  108.             $this->attributGroupeLiaisons->add($attributGroupeLiaison);
  109.             $attributGroupeLiaison->setAttributGroupe($this);
  110.         }
  111.         return $this;
  112.     }
  113.     public function removeAttributGroupeLiaison(AttributGroupeLiaison $attributGroupeLiaison): static
  114.     {
  115.         if ($this->attributGroupeLiaisons->removeElement($attributGroupeLiaison)) {
  116.             if ($attributGroupeLiaison->getAttributGroupe() === $this) {
  117.                 $attributGroupeLiaison->setAttributGroupe(null);
  118.             }
  119.         }
  120.         return $this;
  121.     }
  122.     public function getContactTypes(): Collection
  123.     {
  124.         $contactTypes = new ArrayCollection();
  125.         foreach ($this->attributGroupeLiaisons as $liaison) {
  126.             if ($liaison->getContactType() !== null) {
  127.                 $contactTypes->add($liaison->getContactType());
  128.             }
  129.         }
  130.         return $contactTypes;
  131.     }
  132.     public function getObjetTypes(): Collection
  133.     {
  134.         $objetTypes = new ArrayCollection();
  135.         foreach ($this->attributGroupeLiaisons as $liaison) {
  136.             if ($liaison->getObjetType() !== null) {
  137.                 $objetTypes->add($liaison->getObjetType());
  138.             }
  139.         }
  140.         return $objetTypes;
  141.     }
  142.     public function getContactGroup(): Collection
  143.     {
  144.         return $this->getContactTypes();
  145.     }
  146.     public function getObjetGroup(): Collection
  147.     {
  148.         return $this->getObjetTypes();
  149.     }
  150.     public function isSociete(): ?bool
  151.     {
  152.         return $this->societe;
  153.     }
  154.     public function setSociete(?bool $societe): static
  155.     {
  156.         $this->societe $societe;
  157.         return $this;
  158.     }
  159.     public function isUtilisateur(): ?bool
  160.     {
  161.         return $this->utilisateur;
  162.     }
  163.     public function setUtilisateur(?bool $utilisateur): static
  164.     {
  165.         $this->utilisateur $utilisateur;
  166.         return $this;
  167.     }
  168.     public function getDocument(): ?Document
  169.     {
  170.         return $this->document;
  171.     }
  172.     public function setDocument(?Document $document): static
  173.     {
  174.         $this->document $document;
  175.         return $this;
  176.     }
  177.     public function getEtat(): int
  178.     {
  179.         return $this->etat;
  180.     }
  181.     public function setEtat(int $etat): static
  182.     {
  183.         $this->etat $etat;
  184.         return $this;
  185.     }
  186.     public function isContact(): ?bool
  187.     {
  188.         return $this->contact;
  189.     }
  190.     public function setContact(?bool $contact): static
  191.     {
  192.         $this->contact $contact;
  193.         return $this;
  194.     }
  195.     public function isObjet(): ?bool
  196.     {
  197.         return $this->objet;
  198.     }
  199.     public function setObjet(?bool $objet): static
  200.     {
  201.         $this->objet $objet;
  202.         return $this;
  203.     }
  204.     public function getIcone(): ?string
  205.     {
  206.         return $this->icone;
  207.     }
  208.     public function setIcone(?string $icone): static
  209.     {
  210.         $this->icone $icone trim($icone) : null;
  211.         return $this;
  212.     }
  213.     public function isActifFiche(): bool
  214.     {
  215.         return $this->actif_fiche;
  216.     }
  217.     public function setActifFiche(bool $actif_fiche): static
  218.     {
  219.         $this->actif_fiche $actif_fiche;
  220.         return $this;
  221.     }
  222.     public function isActifListe(): bool
  223.     {
  224.         return $this->actif_liste;
  225.     }
  226.     public function setActifListe(bool $actif_liste): static
  227.     {
  228.         $this->actif_liste $actif_liste;
  229.         return $this;
  230.     }
  231. }