<?php
namespace App\Entity;
use App\Repository\DocDocumentoRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: DocDocumentoRepository::class)]
class DocDocumento
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(length: 100)]
private ?string $nombre = null;
#[ORM\Column]
private ?int $moduloId = null;
#[ORM\ManyToOne(inversedBy: 'documento')]
private ?ParEstado $estado = null;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: GHDocumentoContratacion::class)]
private Collection $documentoContratacion;
#[ORM\Column(length: 255, nullable: true)]
private ?string $archivo = null;
#[ORM\ManyToMany(targetEntity: ParProceso::class, mappedBy: 'documentos')]
private Collection $proceso;
#[ORM\ManyToMany(targetEntity: RFTablaRetencion::class, mappedBy: 'documentos')]
private Collection $tablaRetencion;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: RFInventarioDocumentalSST::class)]
private Collection $inventarioDocumentalSST;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: RFInventarioDocumentalComercial::class)]
private Collection $inventarioDocumentalComercial;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: RFInventarioDocumentalComex::class)]
private Collection $inventarioDocumentalComex;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: RFInventarioDocumentalFinanzas::class)]
private Collection $inventarioDocumentalFinanzas;
#[ORM\OneToMany(mappedBy: 'documento', targetEntity: RFInventarioDocumentalGesHum::class)]
private Collection $inventarioDocumentalGesHum;
#[ORM\ManyToMany(targetEntity: ParInversion::class, mappedBy: 'documento')]
private Collection $documentoInversion;
public function __construct()
{
$this->documentoCarnetizacion = new ArrayCollection();
$this->documentoContratacion = new ArrayCollection();
$this->proceso = new ArrayCollection();
$this->tablaRetencion = new ArrayCollection();
$this->inventarioDocumentalSST = new ArrayCollection();
$this->inventarioDocumentalComercial = new ArrayCollection();
$this->inventarioDocumentalComex = new ArrayCollection();
$this->inventarioDocumentalFinanzas = new ArrayCollection();
$this->inventarioDocumentalGesHum = new ArrayCollection();
$this->documentoInversion = new ArrayCollection();
}
public function __toString() {
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 getModuloId(): ?int
{
return $this->moduloId;
}
public function setModuloId(int $moduloId): static
{
$this->moduloId = $moduloId;
return $this;
}
public function getEstado(): ?ParEstado
{
return $this->estado;
}
public function setEstado(?ParEstado $estado): static
{
$this->estado = $estado;
return $this;
}
/**
* @return Collection<int, GHDocumentoContratacion>
*/
public function getDocumentoContratacion(): Collection
{
return $this->documentoContratacion;
}
public function addDocumentoContratacion(GHDocumentoContratacion $documentoContratacion): static
{
if (!$this->documentoContratacion->contains($documentoContratacion)) {
$this->documentoContratacion->add($documentoContratacion);
$documentoContratacion->setDocumento($this);
}
return $this;
}
public function removeDocumentoContratacion(GHDocumentoContratacion $documentoContratacion): static
{
if ($this->documentoContratacion->removeElement($documentoContratacion)) {
// set the owning side to null (unless already changed)
if ($documentoContratacion->getDocumento() === $this) {
$documentoContratacion->setDocumento(null);
}
}
return $this;
}
public function getArchivo(): ?string
{
return $this->archivo;
}
public function setArchivo(?string $archivo): static
{
$this->archivo = $archivo;
return $this;
}
/**
* @return Collection<int, ParProceso>
*/
public function getProceso(): Collection
{
return $this->proceso;
}
public function addProceso(ParProceso $proceso): static
{
if (!$this->proceso->contains($proceso)) {
$this->proceso->add($proceso);
$proceso->addDocumento($this);
}
return $this;
}
public function removeProceso(ParProceso $proceso): static
{
if ($this->proceso->removeElement($proceso)) {
$proceso->removeDocumento($this);
}
return $this;
}
/**
* @return Collection<int, RFTablaRetencion>
*/
public function getTablaRetencion(): Collection
{
return $this->tablaRetencion;
}
public function addTablaRetencion(RFTablaRetencion $tablaRetencion): static
{
if (!$this->tablaRetencion->contains($tablaRetencion)) {
$this->tablaRetencion->add($tablaRetencion);
$tablaRetencion->addDocumento($this);
}
return $this;
}
public function removeTablaRetencion(RFTablaRetencion $tablaRetencion): static
{
if ($this->tablaRetencion->removeElement($tablaRetencion)) {
$tablaRetencion->removeDocumento($this);
}
return $this;
}
/**
* @return Collection<int, RFInventarioDocumentalSST>
*/
public function getInventarioDocumentalSST(): Collection
{
return $this->inventarioDocumentalSST;
}
public function addInventarioDocumentalSST(RFInventarioDocumentalSST $inventarioDocumentalSST): static
{
if (!$this->inventarioDocumentalSST->contains($inventarioDocumentalSST)) {
$this->inventarioDocumentalSST->add($inventarioDocumentalSST);
$inventarioDocumentalSST->setDocumento($this);
}
return $this;
}
public function removeInventarioDocumentalSST(RFInventarioDocumentalSST $inventarioDocumentalSST): static
{
if ($this->inventarioDocumentalSST->removeElement($inventarioDocumentalSST)) {
// set the owning side to null (unless already changed)
if ($inventarioDocumentalSST->getDocumento() === $this) {
$inventarioDocumentalSST->setDocumento(null);
}
}
return $this;
}
/**
* @return Collection<int, RFInventarioDocumentalComercial>
*/
public function getInventarioDocumentalComercial(): Collection
{
return $this->inventarioDocumentalComercial;
}
public function addInventarioDocumentalComercial(RFInventarioDocumentalComercial $inventarioDocumentalComercial): static
{
if (!$this->inventarioDocumentalComercial->contains($inventarioDocumentalComercial)) {
$this->inventarioDocumentalComercial->add($inventarioDocumentalComercial);
$inventarioDocumentalComercial->setDocumento($this);
}
return $this;
}
public function removeInventarioDocumentalComercial(RFInventarioDocumentalComercial $inventarioDocumentalComercial): static
{
if ($this->inventarioDocumentalComercial->removeElement($inventarioDocumentalComercial)) {
// set the owning side to null (unless already changed)
if ($inventarioDocumentalComercial->getDocumento() === $this) {
$inventarioDocumentalComercial->setDocumento(null);
}
}
return $this;
}
/**
* @return Collection<int, RFInventarioDocumentalComex>
*/
public function getInventarioDocumentalComex(): Collection
{
return $this->inventarioDocumentalComex;
}
public function addInventarioDocumentalComex(RFInventarioDocumentalComex $inventarioDocumentalComex): static
{
if (!$this->inventarioDocumentalComex->contains($inventarioDocumentalComex)) {
$this->inventarioDocumentalComex->add($inventarioDocumentalComex);
$inventarioDocumentalComex->setDocumento($this);
}
return $this;
}
public function removeInventarioDocumentalComex(RFInventarioDocumentalComex $inventarioDocumentalComex): static
{
if ($this->inventarioDocumentalComex->removeElement($inventarioDocumentalComex)) {
// set the owning side to null (unless already changed)
if ($inventarioDocumentalComex->getDocumento() === $this) {
$inventarioDocumentalComex->setDocumento(null);
}
}
return $this;
}
/**
* @return Collection<int, RFInventarioDocumentalFinanzas>
*/
public function getInventarioDocumentalFinanzas(): Collection
{
return $this->inventarioDocumentalFinanzas;
}
public function addInventarioDocumentalFinanza(RFInventarioDocumentalFinanzas $inventarioDocumentalFinanza): static
{
if (!$this->inventarioDocumentalFinanzas->contains($inventarioDocumentalFinanza)) {
$this->inventarioDocumentalFinanzas->add($inventarioDocumentalFinanza);
$inventarioDocumentalFinanza->setDocumento($this);
}
return $this;
}
public function removeInventarioDocumentalFinanza(RFInventarioDocumentalFinanzas $inventarioDocumentalFinanza): static
{
if ($this->inventarioDocumentalFinanzas->removeElement($inventarioDocumentalFinanza)) {
// set the owning side to null (unless already changed)
if ($inventarioDocumentalFinanza->getDocumento() === $this) {
$inventarioDocumentalFinanza->setDocumento(null);
}
}
return $this;
}
/**
* @return Collection<int, RFInventarioDocumentalGesHum>
*/
public function getInventarioDocumentalGesHum(): Collection
{
return $this->inventarioDocumentalGesHum;
}
public function addInventarioDocumentalGesHum(RFInventarioDocumentalGesHum $inventarioDocumentalGesHum): static
{
if (!$this->inventarioDocumentalGesHum->contains($inventarioDocumentalGesHum)) {
$this->inventarioDocumentalGesHum->add($inventarioDocumentalGesHum);
$inventarioDocumentalGesHum->setDocumento($this);
}
return $this;
}
public function removeInventarioDocumentalGesHum(RFInventarioDocumentalGesHum $inventarioDocumentalGesHum): static
{
if ($this->inventarioDocumentalGesHum->removeElement($inventarioDocumentalGesHum)) {
// set the owning side to null (unless already changed)
if ($inventarioDocumentalGesHum->getDocumento() === $this) {
$inventarioDocumentalGesHum->setDocumento(null);
}
}
return $this;
}
/**
* @return Collection<int, ParInversion>
*/
public function getDocumentoInversion(): Collection
{
return $this->documentoInversion;
}
public function addDocumentoInversion(ParInversion $documentoInversion): static
{
if (!$this->documentoInversion->contains($documentoInversion)) {
$this->documentoInversion->add($documentoInversion);
$documentoInversion->addDocumento($this);
}
return $this;
}
public function removeDocumentoInversion(ParInversion $documentoInversion): static
{
if ($this->documentoInversion->removeElement($documentoInversion)) {
$documentoInversion->removeDocumento($this);
}
return $this;
}
}