<?php
namespace App\Entity;
use App\Repository\ProspectRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: ProspectRepository::class)]
#[ORM\Table(name: '`prospect`')]
class Prospect
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(nullable: true)]
private ?int $prospectnummer = null;
#[ORM\ManyToOne(inversedBy: 'prospects')]
#[ORM\JoinColumn(nullable: false)]
private ?vestiging $vestiging = null;
#[ORM\ManyToOne]
private ?ordersoort $ordersoort = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $overledene_naam = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $geb_datum = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $overl_datum = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $begraaf_datum = null;
#[ORM\Column(length: 255, nullable: true)]
private ?string $grafnummer = null;
#[ORM\ManyToOne(inversedBy: 'prospects')]
private ?familie $familie = null;
#[ORM\ManyToOne(inversedBy: 'prospects')]
private ?uitvaartvereniging $uitvaartvereniging = null;
#[ORM\Column(type: Types::TEXT, nullable: true)]
private ?string $opmerkingen = null;
#[ORM\ManyToOne]
private ?Brief $brief = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $brief_streefdatum = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $brief_verzenddatum = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $created_at = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $updated_at = null;
#[ORM\ManyToOne]
private ?begraafplaats $begraafplaats = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $datum_fotoboek_afgegeven = null;
#[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)]
private ?\DateTimeInterface $datum_fotoboek_retour = null;
#[ORM\OneToMany(mappedBy: 'prospect', targetEntity: Reminder::class)]
private Collection $reminders;
public function __construct()
{
$this->reminders = new ArrayCollection();
}
public function __toString()
{
return($this->id.', '.$this->overledene_naam);
}
public function getId(): ?int
{
return $this->id;
}
public function getProspectnummer(): ?int
{
return $this->prospectnummer;
}
public function setProspectnummer(?int $prospectnummer): self
{
$this->prospectnummer = $prospectnummer;
return $this;
}
public function getVestiging(): ?vestiging
{
return $this->vestiging;
}
public function setVestiging(?vestiging $vestiging): self
{
$this->vestiging = $vestiging;
return $this;
}
public function getOrdersoort(): ?ordersoort
{
return $this->ordersoort;
}
public function setOrdersoort(?ordersoort $ordersoort): self
{
$this->ordersoort = $ordersoort;
return $this;
}
public function getOverledeneNaam(): ?string
{
return $this->overledene_naam;
}
public function setOverledeneNaam(?string $overledene_naam): self
{
$this->overledene_naam = $overledene_naam;
return $this;
}
public function getGebDatum(): ?\DateTimeInterface
{
return $this->geb_datum;
}
public function setGebDatum(?\DateTimeInterface $geb_datum): self
{
$this->geb_datum = $geb_datum;
return $this;
}
public function getOverlDatum(): ?\DateTimeInterface
{
return $this->overl_datum;
}
public function setOverlDatum(?\DateTimeInterface $overl_datum): self
{
$this->overl_datum = $overl_datum;
return $this;
}
public function getBegraafDatum(): ?\DateTimeInterface
{
return $this->begraaf_datum;
}
public function setBegraafDatum(?\DateTimeInterface $begraaf_datum): self
{
$this->begraaf_datum = $begraaf_datum;
return $this;
}
public function getGrafnummer(): ?string
{
return $this->grafnummer;
}
public function setGrafnummer(?string $grafnummer): self
{
$this->grafnummer = $grafnummer;
return $this;
}
public function getFamilie(): ?familie
{
return $this->familie;
}
public function setFamilie(?familie $familie): self
{
$this->familie = $familie;
return $this;
}
public function getUitvaartvereniging(): ?uitvaartvereniging
{
return $this->uitvaartvereniging;
}
public function setuitvaartvereniging(?uitvaartvereniging $uitvaartvereniging): self
{
$this->uitvaartvereniging = $uitvaartvereniging;
return $this;
}
public function getOpmerkingen(): ?string
{
return $this->opmerkingen;
}
public function setOpmerkingen(?string $opmerkingen): self
{
$this->opmerkingen = $opmerkingen;
return $this;
}
public function getBrief(): ?brief
{
return $this->brief;
}
public function setBrief(?brief $brief): self
{
$this->brief = $brief;
return $this;
}
public function getBriefStreefdatum(): ?\DateTimeInterface
{
return $this->brief_streefdatum;
}
public function setBriefStreefdatum(?\DateTimeInterface $brief_streefdatum): self
{
$this->brief_streefdatum = $brief_streefdatum;
return $this;
}
public function getBriefVerzenddatum(): ?\DateTimeInterface
{
return $this->brief_verzenddatum;
}
public function setBriefVerzenddatum(?\DateTimeInterface $brief_verzenddatum): self
{
$this->brief_verzenddatum = $brief_verzenddatum;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->created_at;
}
public function setCreatedAt(?\DateTimeInterface $created_at): self
{
$this->created_at = $created_at;
return $this;
}
public function getUpdatedAt(): ?\DateTimeInterface
{
return $this->updated_at;
}
public function setUpdatedAt(?\DateTimeInterface $updated_at): self
{
$this->updated_at = $updated_at;
return $this;
}
public function getBegraafplaats(): ?begraafplaats
{
return $this->begraafplaats;
}
public function setBegraafplaats(?begraafplaats $begraafplaats): self
{
$this->begraafplaats = $begraafplaats;
return $this;
}
public function getDatumFotoboekAfgegeven(): ?\DateTimeInterface
{
return $this->datum_fotoboek_afgegeven;
}
public function setDatumFotoboekAfgegeven(?\DateTimeInterface $datum_fotoboek_afgegeven): self
{
$this->datum_fotoboek_afgegeven = $datum_fotoboek_afgegeven;
return $this;
}
public function getDatumFotoboekRetour(): ?\DateTimeInterface
{
return $this->datum_fotoboek_retour;
}
public function setDatumFotoboekRetour(?\DateTimeInterface $datum_fotoboek_retour): self
{
$this->datum_fotoboek_retour = $datum_fotoboek_retour;
return $this;
}
/**
* @return Collection<int, Reminder>
*/
public function getReminders(): Collection
{
return $this->reminders;
}
public function addReminder(Reminder $reminder): static
{
if (!$this->reminders->contains($reminder)) {
$this->reminders->add($reminder);
$reminder->setProspect($this);
}
return $this;
}
public function removeReminder(Reminder $reminder): static
{
if ($this->reminders->removeElement($reminder)) {
// set the owning side to null (unless already changed)
if ($reminder->getProspect() === $this) {
$reminder->setProspect(null);
}
}
return $this;
}
}