<?php
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class Formulario
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $slug;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $titulo;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $descripcion;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $fechaAlta;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $documento;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $inputs;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $destinatarios1;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $fechaBaja;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $inscripcionUnica;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $createdAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @ORM\OneToMany(targetEntity=\App\Entity\Evento::class, mappedBy="formulario")
*/
private $eventos;
/**
* @ORM\OneToMany(targetEntity=\App\Entity\FormularioRespuestas::class, mappedBy="formulario")
*/
private $formularioRespuestas;
/**
* @ORM\ManyToOne(targetEntity=\App\Entity\PropietarioContenido::class, inversedBy="formulariosEmisor")
* @ORM\JoinColumn(name="propietario_contenido_id", referencedColumnName="id")
*/
private $propietarioContenidoEmisor;
/**
* @ORM\ManyToMany(targetEntity=\App\Entity\CategoriaFormulario::class, inversedBy="formularios")
* @ORM\JoinTable(
* name="CategoriaFormularioToFormulario",
* joinColumns={@ORM\JoinColumn(name="formulario_id", referencedColumnName="id", nullable=false)},
* inverseJoinColumns={@ORM\JoinColumn(name="categoria_formulario_id", referencedColumnName="id", nullable=false)}
* )
*/
private $categorias;
public function __construct()
{
$this->eventos = new ArrayCollection();
$this->formularioRespuestas = new ArrayCollection();
$this->categorias = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function setId($id)
{
$this->id = $id;
return $this;
}
public function getSlug(): ?string
{
return $this->slug;
}
public function setSlug(?string $slug): static
{
$this->slug = $slug;
return $this;
}
public function getTitulo(): ?string
{
return $this->titulo;
}
public function setTitulo(?string $titulo): static
{
$this->titulo = $titulo;
return $this;
}
public function getDescripcion(): ?string
{
return $this->descripcion;
}
public function setDescripcion(?string $descripcion): static
{
$this->descripcion = $descripcion;
return $this;
}
public function getFechaAlta(): ?\DateTimeInterface
{
return $this->fechaAlta;
}
public function setFechaAlta(?\DateTimeInterface $fechaAlta): static
{
$this->fechaAlta = $fechaAlta;
return $this;
}
public function getDocumento(): ?string
{
return $this->documento;
}
public function setDocumento(?string $documento): static
{
$this->documento = $documento;
return $this;
}
public function getInputs(): ?string
{
return $this->inputs;
}
public function setInputs(?string $inputs): static
{
$this->inputs = $inputs;
return $this;
}
public function getDestinatarios1(): ?string
{
return $this->destinatarios1;
}
public function setDestinatarios1(?string $destinatarios1): static
{
$this->destinatarios1 = $destinatarios1;
return $this;
}
public function getFechaBaja(): ?\DateTimeInterface
{
return $this->fechaBaja;
}
public function setFechaBaja(?\DateTimeInterface $fechaBaja): static
{
$this->fechaBaja = $fechaBaja;
return $this;
}
public function isInscripcionUnica(): ?bool
{
return $this->inscripcionUnica;
}
public function setInscripcionUnica(?bool $inscripcionUnica): static
{
$this->inscripcionUnica = $inscripcionUnica;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(?\DateTimeInterface $createdAt): static
{
$this->createdAt = $createdAt;
return $this;
}
public function getUpdatedAt(): ?\DateTimeInterface
{
return $this->updatedAt;
}
public function setUpdatedAt(?\DateTimeInterface $updatedAt): static
{
$this->updatedAt = $updatedAt;
return $this;
}
/**
* @return Collection<int, Evento>
*/
public function getEventos(): Collection
{
return $this->eventos;
}
public function addEvento(Evento $evento): static
{
if (!$this->eventos->contains($evento)) {
$this->eventos->add($evento);
$evento->setFormulario($this);
}
return $this;
}
public function removeEvento(Evento $evento): static
{
if ($this->eventos->removeElement($evento)) {
// set the owning side to null (unless already changed)
if ($evento->getFormulario() === $this) {
$evento->setFormulario(null);
}
}
return $this;
}
/**
* @return Collection<int, FormularioRespuestas>
*/
public function getFormularioRespuestas(): Collection
{
return $this->formularioRespuestas;
}
public function addFormularioRespuesta(FormularioRespuestas $formularioRespuesta): static
{
if (!$this->formularioRespuestas->contains($formularioRespuesta)) {
$this->formularioRespuestas->add($formularioRespuesta);
$formularioRespuesta->setFormulario($this);
}
return $this;
}
public function removeFormularioRespuesta(FormularioRespuestas $formularioRespuesta): static
{
if ($this->formularioRespuestas->removeElement($formularioRespuesta)) {
// set the owning side to null (unless already changed)
if ($formularioRespuesta->getFormulario() === $this) {
$formularioRespuesta->setFormulario(null);
}
}
return $this;
}
public function getPropietarioContenidoEmisor(): ?PropietarioContenido
{
return $this->propietarioContenidoEmisor;
}
public function setPropietarioContenidoEmisor(?PropietarioContenido $propietarioContenidoEmisor): static
{
$this->propietarioContenidoEmisor = $propietarioContenidoEmisor;
return $this;
}
/**
* @return Collection<int, CategoriaFormulario>
*/
public function getCategorias(): Collection
{
return $this->categorias;
}
public function addCategoria(CategoriaFormulario $categoria): static
{
if (!$this->categorias->contains($categoria)) {
$this->categorias->add($categoria);
}
return $this;
}
public function removeCategoria(CategoriaFormulario $categoria): static
{
$this->categorias->removeElement($categoria);
return $this;
}
}