<?php
namespace App\Entity;
use App\Repository\ParTipoEvaluacionRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: ParTipoEvaluacionRepository::class)]
class ParTipoEvaluacion {
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(length: 255)]
private ?string $nombre = null;
#[ORM\ManyToOne(inversedBy: 'tipoEvaluaciones')]
private ?ParEstado $estado = null;
#[ORM\OneToMany(mappedBy: 'tipoEvaluacion', targetEntity: GHEvaluacionDesempeno::class)]
private Collection $evaluacionesDesempeno;
public function __construct() {
$this->evaluacionesDesempeno = new ArrayCollection();
}
public function __toString(): string {
return $this->getNombre();
}
public function getId(): ?int {
return $this->id;
}
public function getNombre(): ?string {
return $this->nombre;
}
public function setNombre(string $nombre): static {
$this->nombre = $nombre;
return $this;
}
public function getEstado(): ?ParEstado {
return $this->estado;
}
public function setEstado(?ParEstado $estado): static {
$this->estado = $estado;
return $this;
}
/**
* @return Collection<int, GHEvaluacionDesempeno>
*/
public function getEvaluacionesDesempeno(): Collection {
return $this->evaluacionesDesempeno;
}
public function addEvaluacionesDesempeno(GHEvaluacionDesempeno $evaluacionesDesempeno): static {
if (!$this->evaluacionesDesempeno->contains($evaluacionesDesempeno)) {
$this->evaluacionesDesempeno->add($evaluacionesDesempeno);
$evaluacionesDesempeno->setTipoEvaluacion($this);
}
return $this;
}
public function removeEvaluacionesDesempeno(GHEvaluacionDesempeno $evaluacionesDesempeno): static {
if ($this->evaluacionesDesempeno->removeElement($evaluacionesDesempeno)) {
// set the owning side to null (unless already changed)
if ($evaluacionesDesempeno->getTipoEvaluacion() === $this) {
$evaluacionesDesempeno->setTipoEvaluacion(null);
}
}
return $this;
}
}