<?phpnamespace App\Entity;use ArrayAccess;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity * @ORM\Table(name="empresa") */class Empresa extends Entidad implements ArrayAccess{ /** * @ORM\Column(type="string", nullable=true, name="numero_trabajadores") */ private $numeroTrabajadores; /** * @ORM\OneToMany(targetEntity=\App\Entity\Participante::class, mappedBy="empresa") */ protected $trabajadores; /** * @ORM\OneToMany(targetEntity=\App\Entity\EmpresaPropietarioContenido::class, mappedBy="empresa") */ private $empresaPropietarioContenidos; public function __construct() { $this->trabajadores = new ArrayCollection(); $this->empresaPropietarioContenidos = new ArrayCollection(); } /** * @return Collection<int, Participante> */ public function getTrabajadores(): Collection { return $this->trabajadores; } public function addTrabajadore(Participante $trabajadore): static { if (!$this->trabajadores->contains($trabajadore)) { $this->trabajadores->add($trabajadore); $trabajadore->setEmpresa($this); } return $this; } public function removeTrabajadore(Participante $trabajadore): static { if ($this->trabajadores->removeElement($trabajadore)) { // set the owning side to null (unless already changed) if ($trabajadore->getEmpresa() === $this) { $trabajadore->setEmpresa(null); } } return $this; } public function getNumeroTrabajadores(): ?string { return $this->numeroTrabajadores; } public function setNumeroTrabajadores(?string $numeroTrabajadores): static { $this->numeroTrabajadores = $numeroTrabajadores; return $this; } /** * @return Collection<int, EmpresaPropietarioContenido> */ public function getEmpresaPropietarioContenidos(): Collection { return $this->empresaPropietarioContenidos; } public function addEmpresaPropietarioContenido(EmpresaPropietarioContenido $empresaPropietarioContenido): static { if (!$this->empresaPropietarioContenidos->contains($empresaPropietarioContenido)) { $this->empresaPropietarioContenidos->add($empresaPropietarioContenido); $empresaPropietarioContenido->setEmpresa($this); } return $this; } public function removeEmpresaPropietarioContenido(EmpresaPropietarioContenido $empresaPropietarioContenido): static { if ($this->empresaPropietarioContenidos->removeElement($empresaPropietarioContenido)) { // set the owning side to null (unless already changed) if ($empresaPropietarioContenido->getEmpresa() === $this) { $empresaPropietarioContenido->setEmpresa(null); } } return $this; } public function offsetExists(mixed $offset): bool { return property_exists($this, $offset); } public function offsetGet(mixed $offset): mixed { return $this->$offset ?? null; } public function offsetSet(mixed $offset, mixed $value): void { $this->$offset = $value; } public function offsetUnset(mixed $offset): void { if (property_exists($this, $offset)) { unset($this->$offset); } }}