<?php
namespace App\Entity;
use App\Service\MailService;
use DateTime;
use Doctrine\ORM\Mapping as ORM;
use InvalidArgumentException;
/**
* @ORM\Entity
*
* @ORM\Table(
* name="metro_dish_lead_products",
* indexes={
*
* @ORM\Index(name="updated_at_idx", columns={"updated_at"})
* }
* )
*/
class MetroDishLeadProduct
{
/**
* @var string
*
* @ORM\Column(name="id", type="string")
*
* @ORM\Id
*/
protected $id;
public function setId(string $id)
{
$this->id = $id;
}
public function getId()
{
return $this->id;
}
/**
* @var string
*
* @ORM\Column(name="stage", type="string", length=128, nullable=false)
*/
protected $stage;
public function getStage(): string
{
return $this->stage;
}
public function setStage(string $stage): void
{
$this->stage = $stage;
}
/**
* @var string
*
* @ORM\Column(name="establishment", type="string", length=128, nullable=false)
*/
protected $establishment;
public function getEstablishment(): string
{
return $this->establishment;
}
public function setEstablishment(string $establishment): void
{
$this->establishment = $establishment;
}
/**
* @var string
*
* @ORM\Column(name="contact_firstname", type="string", length=128, nullable=false)
*/
protected $contactFirstname;
public function getContactFirstname(): string
{
return $this->contactFirstname;
}
public function setContactFirstname(string $contactFirstname): void
{
$this->contactFirstname = $contactFirstname;
}
/**
* @var string
*
* @ORM\Column(name="contact_lastname", type="string", length=128, nullable=false)
*/
protected $contactLastname;
public function getContactLastname(): string
{
return $this->contactLastname;
}
public function setContactLastname(string $contactLastname): void
{
$this->contactLastname = $contactLastname;
}
/**
* @var string
*
* @ORM\Column(name="contact_email", type="string", length=128, nullable=false)
*/
protected $contactEmail;
public function getContactEmail(): string
{
return $this->contactEmail;
}
public function setContactEmail(string $contactEmail): void
{
if (!MailService::emailAddressIsValidForMailer($contactEmail)) {
throw new InvalidArgumentException("E-mail '$contactEmail' is not valid.");
}
$this->contactEmail = $contactEmail;
}
/**
* @var ?string
*
* @ORM\Column(name="contact_phone", type="string", length=128, nullable=true)
*/
protected $contactPhone;
public function getContactPhone(): ?string
{
return $this->contactPhone;
}
public function setContactPhone(?string $contactPhone): void
{
$this->contactPhone = $contactPhone;
}
/**
* @var string
*
* @ORM\Column(name="contact_mobile", type="string", length=128, nullable=false)
*/
protected $contactMobile;
public function getContactMobile(): string
{
return $this->contactMobile;
}
public function setContactMobile(string $contactMobile): void
{
$this->contactMobile = $contactMobile;
}
/**
* @var string
*
* @ORM\Column(name="contact_street", type="string", length=128, nullable=false)
*/
protected $contactStreet;
public function getContactStreet(): string
{
return $this->contactStreet;
}
public function setContactStreet(string $contactStreet): void
{
$this->contactStreet = $contactStreet;
}
/**
* @var string
*
* @ORM\Column(name="contact_city", type="string", length=128, nullable=false)
*/
protected $contactCity;
public function getContactCity(): string
{
return $this->contactCity;
}
public function setContactCity(string $contactCity): void
{
$this->contactCity = $contactCity;
}
/**
* @var string
*
* @ORM\Column(name="contact_zipcode", type="string", length=128, nullable=false)
*/
protected $contactZipcode;
public function getContactZipcode(): string
{
return $this->contactZipcode;
}
public function setContactZipcode(string $contactZipcode): void
{
$this->contactZipcode = $contactZipcode;
}
/**
* @var string
*
* @ORM\Column(name="contact_country", type="string", length=128, nullable=false)
*/
protected $contactCountry;
public function getContactCountry(): string
{
return $this->contactCountry;
}
public function setContactCountry(string $contactCountry): void
{
$this->contactCountry = $contactCountry;
}
/**
* @var ?string
*
* @ORM\Column(name="documentation", type="string", length=8192, nullable=true)
*/
protected $documentation;
public function getDocumentation(): ?string
{
return $this->documentation;
}
public function setDocumentation(?string $documentation): void
{
$this->documentation = $documentation;
}
/**
* @var DateTime
*
* @ORM\Column(name="initially_received_at", type="datetime", nullable=false)
*/
protected $initiallyReceivedAt;
public function getInitiallyReceivedAt(): DateTime
{
return $this->initiallyReceivedAt;
}
public function setInitiallyReceivedAt(DateTime $initiallyReceivedAt): void
{
$this->initiallyReceivedAt = $initiallyReceivedAt;
}
/**
* @var DateTime
*
* @ORM\Column(name="updated_at", type="datetime", nullable=false)
*/
protected $updatedAt;
public function getUpdatedAt(): DateTime
{
return $this->updatedAt;
}
public function setUpdatedAt(DateTime $updatedAt): void
{
$this->updatedAt = $updatedAt;
}
}