<?php
namespace App\Entity\Gos;
use App\Repository\Gos\LeadRemindersRepository;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=LeadRemindersRepository::class)
* @ORM\HasLifecycleCallbacks()
*/
class LeadReminders
{
public const DEFAULT_REMINDER_DAYS =
[
'event' =>
[
'firstReminderDays' => 1,
'secondReminderDays' => 5,
'lastReminderDays' => null,
],
'newsletter' =>
[
'firstReminderDays' => 1,
'secondReminderDays' => 14,
'lastReminderDays' => 60,
]
];
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="boolean")
*/
private $generateReminders;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $firstReminderDays;
/**
* @ORM\Column(type="boolean")
*/
private $firstReminderUseDate;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $firstReminderDate;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $secondReminderDays;
/**
* @ORM\Column(type="boolean")
*/
private $secondReminderUseDate;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $secondReminderDate;
/**
* @ORM\Column(type="integer", nullable=true)
*/
private $lastReminderDays;
/**
* @ORM\Column(type="boolean")
*/
private $lastReminderUseDate;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $lastReminderDate;
/**
* @ORM\Column(type="datetime")
*/
private $createdAt;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $updatedAt;
/**
* @ORM\PrePersist()
*/
public function prePersist()
{
$this->createdAt = new \DateTime();
}
/**
* @ORM\PreUpdate()
*/
public function preUpdate()
{
$this->updatedAt = new \DateTime();
}
public function getId(): ?int
{
return $this->id;
}
public function getGenerateReminders(): ?bool
{
return $this->generateReminders;
}
public function setGenerateReminders(bool $generateReminders): self
{
$this->generateReminders = $generateReminders;
return $this;
}
public function getFirstReminderDays(): ?int
{
return $this->firstReminderDays;
}
public function setFirstReminderDays(?int $firstReminderDays): self
{
$this->firstReminderDays = $firstReminderDays;
return $this;
}
public function getFirstReminderUseDate(): ?bool
{
return $this->firstReminderUseDate;
}
public function setFirstReminderUseDate(bool $firstReminderUseDate): self
{
$this->firstReminderUseDate = $firstReminderUseDate;
return $this;
}
public function getFirstReminderDate(): ?\DateTimeInterface
{
return $this->firstReminderDate;
}
public function setFirstReminderDate(?\DateTimeInterface $firstReminderDate): self
{
$this->firstReminderDate = $firstReminderDate;
return $this;
}
public function getSecondReminderDays(): ?int
{
return $this->secondReminderDays;
}
public function setSecondReminderDays(?int $secondReminderDays): self
{
$this->secondReminderDays = $secondReminderDays;
return $this;
}
public function getSecondReminderUseDate(): ?bool
{
return $this->secondReminderUseDate;
}
public function setSecondReminderUseDate(bool $secondReminderUseDate): self
{
$this->secondReminderUseDate = $secondReminderUseDate;
return $this;
}
public function getSecondReminderDate(): ?\DateTimeInterface
{
return $this->secondReminderDate;
}
public function setSecondReminderDate(?\DateTimeInterface $secondReminderDate): self
{
$this->secondReminderDate = $secondReminderDate;
return $this;
}
public function getLastReminderDays(): ?int
{
return $this->lastReminderDays;
}
public function setLastReminderDays(?int $lastReminderDays): self
{
$this->lastReminderDays = $lastReminderDays;
return $this;
}
public function getLastReminderUseDate(): ?bool
{
return $this->lastReminderUseDate;
}
public function setLastReminderUseDate(bool $lastReminderUseDate): self
{
$this->lastReminderUseDate = $lastReminderUseDate;
return $this;
}
public function getLastReminderDate(): ?\DateTimeInterface
{
return $this->lastReminderDate;
}
public function setLastReminderDate(?\DateTimeInterface $lastReminderDate): self
{
$this->lastReminderDate = $lastReminderDate;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(\DateTimeInterface $createdAt): self
{
$this->createdAt = $createdAt;
return $this;
}
public function getUpdatedAt(): ?\DateTimeInterface
{
return $this->updatedAt;
}
public function setUpdatedAt(?\DateTimeInterface $updatedAt): self
{
$this->updatedAt = $updatedAt;
return $this;
}
}