<?phpnamespace App\Entity;use App\Repository\TipoImpuestoRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass=TipoImpuestoRepository::class) */class TipoImpuesto{ /** * @ORM\Id() * @ORM\GeneratedValue() * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=255) */ private $nombre; /** * @ORM\OneToMany(targetEntity=Contrato::class, mappedBy="tipoImpuesto") */ private $contratos; /** * @ORM\ManyToOne(targetEntity=Impuesto::class, inversedBy="tipoImpuestos") */ private $impuesto; /** * @ORM\ManyToOne(targetEntity=TipoTarifa::class, inversedBy="tipoImpuestos") */ private $tipoTarifa; public function __construct() { $this->contratos = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getNombre(): ?string { return $this->nombre; } public function setNombre(string $nombre): self { $this->nombre = $nombre; return $this; } /** * @return Collection|Contrato[] */ public function getContratos(): Collection { return $this->contratos; } public function addContrato(Contrato $contrato): self { if (!$this->contratos->contains($contrato)) { $this->contratos[] = $contrato; $contrato->setTipoImpuesto($this); } return $this; } public function removeProducto(Contrato $contrato): self { if ($this->contratos->contains($contrato)) { $this->contratos->removeElement($contrato); // set the owning side to null (unless already changed) if ($contrato->getTipoImpuesto() === $this) { $contrato->setTipoImpuesto(null); } } return $this; } public function __toString():?string { return $this->nombre; } public function getImpuesto(): ?Impuesto { return $this->impuesto; } public function setImpuesto(?Impuesto $impuesto): self { $this->impuesto = $impuesto; return $this; } public function getTipoTarifa(): ?TipoTarifa { return $this->tipoTarifa; } public function setTipoTarifa(?TipoTarifa $tipoTarifa): self { $this->tipoTarifa = $tipoTarifa; return $this; }}