<?php
namespace App\Entity;
use App\Repository\DefautCategorieRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: DefautCategorieRepository::class)]
class DefautCategorie implements \Stringable
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $name;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $name_en;
#[ORM\OneToMany(targetEntity: Defaut::class, mappedBy: 'categorie')]
private $defauts;
#[ORM\ManyToMany(targetEntity: CategorieFamille::class, mappedBy: 'categoriesdefaut')]
private $categorieFamilles;
#[ORM\OneToMany(targetEntity: FicheQualiteDefaut::class, mappedBy: 'defaut_categorie', cascade: ['persist', 'remove'])]
private $ficheQualiteDefauts;
#[ORM\OneToMany(targetEntity: FicheQualiteAtelierAuditeurDefaut::class, mappedBy: 'defaut_categorie')]
private $ficheQualiteAtelierAuditeurDefauts;
#[ORM\OneToMany(targetEntity: FicheQualiteAtelierDefaut::class, mappedBy: 'defaut_categorie')]
private $ficheQualiteAtelierDefauts;
#[ORM\OneToMany(targetEntity: FicheQualiteCentDefaut::class, mappedBy: 'defaut_categorie')]
private $ficheQualiteCentDefauts;
public function __construct()
{
$this->defauts = new ArrayCollection();
$this->categorieFamilles = new ArrayCollection();
$this->ficheQualiteDefauts = new ArrayCollection();
$this->ficheQualiteAtelierAuditeurDefauts = new ArrayCollection();
$this->ficheQualiteAtelierDefauts = new ArrayCollection();
$this->ficheQualiteCentDefauts = new ArrayCollection();
}
public function __toString(): string{
return (string) $this->name;
}
public function getId(): ?int
{
return $this->id;
}
public function getName(): ?string
{
return $this->name;
}
public function setName(?string $name): self
{
$this->name = $name;
return $this;
}
public function getNameEn(): ?string
{
return $this->name_en;
}
public function setNameEn(?string $name_en): self
{
$this->name_en = $name_en;
return $this;
}
/**
* @return Collection|Defaut[]
*/
public function getDefauts(): Collection
{
return $this->defauts;
}
public function addDefaut(Defaut $defaut): self
{
if (!$this->defauts->contains($defaut)) {
$this->defauts[] = $defaut;
$defaut->setCategorie($this);
}
return $this;
}
public function removeDefaut(Defaut $defaut): self
{
if ($this->defauts->removeElement($defaut)) {
// set the owning side to null (unless already changed)
if ($defaut->getCategorie() === $this) {
$defaut->setCategorie(null);
}
}
return $this;
}
/**
* @return Collection|CategorieFamille[]
*/
public function getCategorieFamilles(): Collection
{
return $this->categorieFamilles;
}
public function addCategorieFamille(CategorieFamille $categorieFamille): self
{
if (!$this->categorieFamilles->contains($categorieFamille)) {
$this->categorieFamilles[] = $categorieFamille;
$categorieFamille->addCategoriesdefaut($this);
}
return $this;
}
public function removeCategorieFamille(CategorieFamille $categorieFamille): self
{
if ($this->categorieFamilles->removeElement($categorieFamille)) {
$categorieFamille->removeCategoriesdefaut($this);
}
return $this;
}
/**
* @return Collection|FicheQualiteDefaut[]
*/
public function getFicheQualiteDefauts(): Collection
{
return $this->ficheQualiteDefauts;
}
public function addFicheQualiteDefaut(FicheQualiteDefaut $ficheQualiteDefaut): self
{
if (!$this->ficheQualiteDefauts->contains($ficheQualiteDefaut)) {
$this->ficheQualiteDefauts[] = $ficheQualiteDefaut;
$ficheQualiteDefaut->setDefautCategorie($this);
}
return $this;
}
public function removeFicheQualiteDefaut(FicheQualiteDefaut $ficheQualiteDefaut): self
{
if ($this->ficheQualiteDefauts->removeElement($ficheQualiteDefaut)) {
// set the owning side to null (unless already changed)
if ($ficheQualiteDefaut->getDefautCategorie() === $this) {
$ficheQualiteDefaut->setDefautCategorie(null);
}
}
return $this;
}
/**
* @return Collection|FicheQualiteAtelierAuditeurDefaut[]
*/
public function getFicheQualiteAtelierAuditeurDefauts(): Collection
{
return $this->ficheQualiteAtelierAuditeurDefauts;
}
public function addFicheQualiteAtelierAuditeurDefaut(FicheQualiteAtelierAuditeurDefaut $ficheQualiteAtelierAuditeurDefaut): self
{
if (!$this->ficheQualiteAtelierAuditeurDefauts->contains($ficheQualiteAtelierAuditeurDefaut)) {
$this->ficheQualiteAtelierAuditeurDefauts[] = $ficheQualiteAtelierAuditeurDefaut;
$ficheQualiteAtelierAuditeurDefaut->setDefautCategorie($this);
}
return $this;
}
public function removeFicheQualiteAtelierAuditeurDefaut(FicheQualiteAtelierAuditeurDefaut $ficheQualiteAtelierAuditeurDefaut): self
{
if ($this->ficheQualiteAtelierAuditeurDefauts->removeElement($ficheQualiteAtelierAuditeurDefaut)) {
// set the owning side to null (unless already changed)
if ($ficheQualiteAtelierAuditeurDefaut->getDefautCategorie() === $this) {
$ficheQualiteAtelierAuditeurDefaut->setDefautCategorie(null);
}
}
return $this;
}
/**
* @return Collection|FicheQualiteAtelierDefaut[]
*/
public function getFicheQualiteAtelierDefauts(): Collection
{
return $this->ficheQualiteAtelierDefauts;
}
public function addFicheQualiteAtelierDefaut(FicheQualiteAtelierDefaut $ficheQualiteAtelierDefaut): self
{
if (!$this->ficheQualiteAtelierDefauts->contains($ficheQualiteAtelierDefaut)) {
$this->ficheQualiteAtelierDefauts[] = $ficheQualiteAtelierDefaut;
$ficheQualiteAtelierDefaut->setDefautCategorie($this);
}
return $this;
}
public function removeFicheQualiteAtelierDefaut(FicheQualiteAtelierDefaut $ficheQualiteAtelierDefaut): self
{
if ($this->ficheQualiteAtelierDefauts->removeElement($ficheQualiteAtelierDefaut)) {
// set the owning side to null (unless already changed)
if ($ficheQualiteAtelierDefaut->getDefautCategorie() === $this) {
$ficheQualiteAtelierDefaut->setDefautCategorie(null);
}
}
return $this;
}
/**
* @return Collection|FicheQualiteCentDefaut[]
*/
public function getFicheQualiteCentDefauts(): Collection
{
return $this->ficheQualiteCentDefauts;
}
public function addFicheQualiteCentDefaut(FicheQualiteCentDefaut $ficheQualiteCentDefaut): self
{
if (!$this->ficheQualiteCentDefauts->contains($ficheQualiteCentDefaut)) {
$this->ficheQualiteCentDefauts[] = $ficheQualiteCentDefaut;
$ficheQualiteCentDefaut->setDefautCategorie($this);
}
return $this;
}
public function removeFicheQualiteCentDefaut(FicheQualiteCentDefaut $ficheQualiteCentDefaut): self
{
if ($this->ficheQualiteCentDefauts->removeElement($ficheQualiteCentDefaut)) {
// set the owning side to null (unless already changed)
if ($ficheQualiteCentDefaut->getDefautCategorie() === $this) {
$ficheQualiteCentDefaut->setDefautCategorie(null);
}
}
return $this;
}
}