<?php
namespace App\Entity;
use App\Repository\CategorieRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: CategorieRepository::class)]
class Categorie
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\Column(type: 'string',length: 255)]
private $libelle;
#[ORM\OneToMany(mappedBy: 'categorie', targetEntity: Preparation::class)]
private $preparations;
#[ORM\OneToMany(mappedBy: 'categorie', targetEntity: Produit::class)]
private $produits;
public function __toString()
{
return $this->libelle;
}
public function __construct()
{
$this->preparations = new ArrayCollection();
$this->produits = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getLibelle(): ?string
{
return $this->libelle;
}
public function setLibelle(string $libelle): self
{
$this->libelle = $libelle;
return $this;
}
/**
* @return Collection|Preparation[]
*/
public function getPreparations(): Collection
{
return $this->preparations;
}
public function addPreparation(Preparation $preparation): self
{
if (!$this->preparations->contains($preparation)) {
$this->preparations[] = $preparation;
$preparation->setCategorie($this);
}
return $this;
}
public function removePreparation(Preparation $preparation): self
{
if ($this->preparations->removeElement($preparation)) {
// set the owning side to null (unless already changed)
if ($preparation->getCategorie() === $this) {
$preparation->setCategorie(null);
}
}
return $this;
}
/**
* @return Collection|Produit[]
*/
public function getProduits(): Collection
{
return $this->produits;
}
public function addProduit(Produit $produit): self
{
if (!$this->produits->contains($produit)) {
$this->produits[] = $produit;
$produit->setCategorie($this);
}
return $this;
}
public function removeProduit(Produit $produit): self
{
if ($this->produits->removeElement($produit)) {
// set the owning side to null (unless already changed)
if ($produit->getCategorie() === $this) {
$produit->setCategorie(null);
}
}
return $this;
}
}