<?phpnamespace App\Entity;use App\Repository\DomaineRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;use Gedmo\Mapping\Annotation as Gedmo;#[ORM\Entity(repositoryClass: DomaineRepository::class)]class Domaine{ #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column(type: 'integer')] private $id; #[ORM\Column(type: 'string', length: 255, nullable: true)] private $code; #[ORM\Column(type: 'string', length: 255)] private $nom; #[Gedmo\Timestampable(on: 'create')] #[ORM\Column(type: 'datetime')] private $created_at; #[Gedmo\Timestampable(on: 'update')] #[ORM\Column(type: 'datetime')] private $updated_at; #[ORM\Column(type: 'integer')] private $created_by; #[ORM\Column(type: 'integer')] private $updated_by; #[ORM\ManyToMany(targetEntity: Groupe::class, mappedBy: 'domaine')] private $groupes; public function __construct() { $this->groupes = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getCode(): ?string { return $this->code; } public function setCode(?string $code): self { $this->code = $code; return $this; } public function getNom(): ?string { return $this->nom; } public function setNom(string $nom): self { $this->nom = $nom; return $this; } public function getCreatedAt(): ?\DateTimeInterface { return $this->created_at; } public function setCreatedAt(\DateTimeInterface $created_at): self { $this->created_at = $created_at; return $this; } public function getUpdatedAt(): ?\DateTimeInterface { return $this->updated_at; } public function setUpdatedAt(\DateTimeInterface $updated_at): self { $this->updated_at = $updated_at; return $this; } public function getCreatedBy(): ?int { return $this->created_by; } public function setCreatedBy(int $created_by): self { $this->created_by = $created_by; return $this; } public function getUpdatedBy(): ?int { return $this->updated_by; } public function setUpdatedBy(int $updated_by): self { $this->updated_by = $updated_by; return $this; } /** * @return Collection<int, Groupe> */ public function getGroupes(): Collection { return $this->groupes; } public function addGroupe(Groupe $groupe): self { if (!$this->groupes->contains($groupe)) { $this->groupes[] = $groupe; $groupe->addDomaine($this); } return $this; } public function removeGroupe(Groupe $groupe): self { if ($this->groupes->removeElement($groupe)) { $groupe->removeDomaine($this); } return $this; }}