<?php
namespace App\Entity;
use App\Repository\RFDisposicionProveedorRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Table(name: 'rf_disposicion_proveedor')]
#[ORM\Entity(repositoryClass: RFDisposicionProveedorRepository::class)]
class RFDisposicionProveedor
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\ManyToOne(inversedBy: 'disposicionProveedor')]
private ?RFDisposicion $disposicion = null;
#[ORM\ManyToOne(inversedBy: 'disposicionProveedor')]
private ?TerProveedor $proveedor = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $fechaRecoleccion = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $placaVehiculo = null;
#[ORM\Column(nullable: true)]
private ?int $cantidadEstibas = null;
#[ORM\Column(nullable: true)]
private ?float $pesoTotal = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $evidenciaEliminacion = null;
#[ORM\ManyToMany(targetEntity: ParTipoConstanciaRF::class, inversedBy: 'disposicionProveedor')]
private Collection $firmaConstancia;
#[ORM\Column(length: 255, nullable: true)]
private ?string $acta = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $certificadoEliminacion = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $evidencia = null;
#[ORM\Column(length: 50)]
private ?string $createUser = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $createAt = null;
#[ORM\Column(length: 50)]
private ?string $updateUser = null;
#[ORM\Column(type: Types::DATETIME_MUTABLE)]
private ?\DateTimeInterface $updateAt = null;
#[ORM\OneToMany(mappedBy: 'disposicionProveedor', targetEntity: RFDisposicionProveedorEvidencia::class)]
private Collection $disposicionProveedorEvidencia;
#[ORM\OneToMany(mappedBy: 'disposicionProveedor', targetEntity: RFDisposicionProveedorDocumento::class)]
private Collection $disposicionProveedorDocumento;
#[ORM\ManyToMany(targetEntity: TerPersona::class, inversedBy: 'disposicionProveedorDirector')]
private Collection $director;
#[ORM\Column(nullable: true)]
private ?bool $entregaProveedor = null;
public function __construct()
{
$this->firmaConstancia = new ArrayCollection();
$this->disposicionProveedorEvidencia = new ArrayCollection();
$this->disposicionProveedorDocumento = new ArrayCollection();
$this->director = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getDisposicion(): ?RFDisposicion
{
return $this->disposicion;
}
public function setDisposicion(?RFDisposicion $disposicion): static
{
$this->disposicion = $disposicion;
return $this;
}
public function getProveedor(): ?TerProveedor
{
return $this->proveedor;
}
public function setProveedor(?TerProveedor $proveedor): static
{
$this->proveedor = $proveedor;
return $this;
}
public function getFechaRecoleccion(): ?\DateTimeInterface
{
return $this->fechaRecoleccion;
}
public function setFechaRecoleccion(\DateTimeInterface $fechaRecoleccion): static
{
$this->fechaRecoleccion = $fechaRecoleccion;
return $this;
}
public function getPlacaVehiculo(): ?string
{
return $this->placaVehiculo;
}
public function setPlacaVehiculo(string $placaVehiculo): static
{
$this->placaVehiculo = $placaVehiculo;
return $this;
}
public function getCantidadEstibas(): ?int
{
return $this->cantidadEstibas;
}
public function setCantidadEstibas(int $cantidadEstibas): static
{
$this->cantidadEstibas = $cantidadEstibas;
return $this;
}
public function getPesoTotal(): ?float
{
return $this->pesoTotal;
}
public function setPesoTotal(float $pesoTotal): static
{
$this->pesoTotal = $pesoTotal;
return $this;
}
public function getEvidenciaEliminacion(): ?string
{
return $this->evidenciaEliminacion;
}
public function setEvidenciaEliminacion(string $evidenciaEliminacion): static
{
$this->evidenciaEliminacion = $evidenciaEliminacion;
return $this;
}
/**
* @return Collection<int, ParTipoConstanciaRF>
*/
public function getFirmaConstancia(): Collection
{
return $this->firmaConstancia;
}
public function addFirmaConstancium(ParTipoConstanciaRF $firmaConstancium): static
{
if (!$this->firmaConstancia->contains($firmaConstancium)) {
$this->firmaConstancia->add($firmaConstancium);
}
return $this;
}
public function removeFirmaConstancium(ParTipoConstanciaRF $firmaConstancium): static
{
$this->firmaConstancia->removeElement($firmaConstancium);
return $this;
}
public function getActa(): ?string
{
return $this->acta;
}
public function setActa(?string $acta): static
{
$this->acta = $acta;
return $this;
}
public function getCertificadoEliminacion(): ?string
{
return $this->certificadoEliminacion;
}
public function setCertificadoEliminacion(?string $certificadoEliminacion): static
{
$this->certificadoEliminacion = $certificadoEliminacion;
return $this;
}
public function getEvidencia(): ?string
{
return $this->evidencia;
}
public function setEvidencia(?string $evidencia): static
{
$this->evidencia = $evidencia;
return $this;
}
public function getCreateUser(): ?string
{
return $this->createUser;
}
public function setCreateUser(string $createUser): static
{
$this->createUser = $createUser;
return $this;
}
public function getCreateAt(): ?\DateTimeInterface
{
return $this->createAt;
}
public function setCreateAt(\DateTimeInterface $createAt): static
{
$this->createAt = $createAt;
return $this;
}
public function getUpdateUser(): ?string
{
return $this->updateUser;
}
public function setUpdateUser(string $updateUser): static
{
$this->updateUser = $updateUser;
return $this;
}
public function getUpdateAt(): ?\DateTimeInterface
{
return $this->updateAt;
}
public function setUpdateAt(\DateTimeInterface $updateAt): static
{
$this->updateAt = $updateAt;
return $this;
}
/**
* @return Collection<int, RFDisposicionProveedorEvidencia>
*/
public function getDisposicionProveedorEvidencia(): Collection
{
return $this->disposicionProveedorEvidencia;
}
public function addDisposicionProveedorEvidencium(RFDisposicionProveedorEvidencia $disposicionProveedorEvidencium): static
{
if (!$this->disposicionProveedorEvidencia->contains($disposicionProveedorEvidencium)) {
$this->disposicionProveedorEvidencia->add($disposicionProveedorEvidencium);
$disposicionProveedorEvidencium->setDisposicionProveedor($this);
}
return $this;
}
public function removeDisposicionProveedorEvidencium(RFDisposicionProveedorEvidencia $disposicionProveedorEvidencium): static
{
if ($this->disposicionProveedorEvidencia->removeElement($disposicionProveedorEvidencium)) {
// set the owning side to null (unless already changed)
if ($disposicionProveedorEvidencium->getDisposicionProveedor() === $this) {
$disposicionProveedorEvidencium->setDisposicionProveedor(null);
}
}
return $this;
}
/**
* @return Collection<int, RFDisposicionProveedorDocumento>
*/
public function getDisposicionProveedorDocumento(): Collection
{
return $this->disposicionProveedorDocumento;
}
public function addDisposicionProveedorDocumento(RFDisposicionProveedorDocumento $disposicionProveedorDocumento): static
{
if (!$this->disposicionProveedorDocumento->contains($disposicionProveedorDocumento)) {
$this->disposicionProveedorDocumento->add($disposicionProveedorDocumento);
$disposicionProveedorDocumento->setDisposicionProveedor($this);
}
return $this;
}
public function removeDisposicionProveedorDocumento(RFDisposicionProveedorDocumento $disposicionProveedorDocumento): static
{
if ($this->disposicionProveedorDocumento->removeElement($disposicionProveedorDocumento)) {
// set the owning side to null (unless already changed)
if ($disposicionProveedorDocumento->getDisposicionProveedor() === $this) {
$disposicionProveedorDocumento->setDisposicionProveedor(null);
}
}
return $this;
}
/**
* @return Collection<int, TerPersona>
*/
public function getDirector(): Collection
{
return $this->director;
}
public function addDirector(TerPersona $director): static
{
if (!$this->director->contains($director)) {
$this->director->add($director);
}
return $this;
}
public function removeDirector(TerPersona $director): static
{
$this->director->removeElement($director);
return $this;
}
public function isEntregaProveedor(): ?bool
{
return $this->entregaProveedor;
}
public function setEntregaProveedor(?bool $entregaProveedor): static
{
$this->entregaProveedor = $entregaProveedor;
return $this;
}
}