src/Entity/User/PasswordRecovery.php line 19

  1. <?php
  2. /**
  3.  * Created by PhpStorm.
  4.  * User: Михаил
  5.  * Date: 13.12.2018
  6.  * Time: 0:48
  7.  */
  8. namespace App\Entity\User;
  9. use App\Entity\Traits\CreatedTrait;
  10. use App\Entity\Traits\UpdatedTrait;
  11. use DateTime;
  12. use Doctrine\ORM\Mapping as ORM;
  13. #[ORM\Table(name'user_password_recovery')]
  14. #[ORM\Entity]
  15. #[ORM\HasLifecycleCallbacks]
  16. class PasswordRecovery
  17. {
  18.     use CreatedTrait;
  19.     use UpdatedTrait;
  20.     public const TYPE_PHONE 'phone';
  21.     public const TYPE_EMAIL 'email';
  22.     #[ORM\Id]
  23.     #[ORM\GeneratedValue(strategy'AUTO')]
  24.     #[ORM\Column(type'integer')]
  25.     private $id;
  26.     #[ORM\ManyToOne(targetEntity'User')]
  27.     #[ORM\JoinColumn(nullablefalse)]
  28.     private $user;
  29.     #[ORM\Column(type'string'uniquetruelength100)]
  30.     private $token;
  31.     /**
  32.      * @var bool
  33.      */
  34.     #[ORM\Column(type'boolean')]
  35.     private $used 0;
  36.     #[ORM\Column(type'string')]
  37.     private $type;
  38.     /**
  39.      * @var DateTime
  40.      */
  41.     #[ORM\Column(type'datetime')]
  42.     private $valid_till;
  43.     /**
  44.      * @return mixed
  45.      */
  46.     public function getId()
  47.     {
  48.         return $this->id;
  49.     }
  50.     /**
  51.      * @param mixed $id
  52.      */
  53.     public function setId($id): void
  54.     {
  55.         $this->id $id;
  56.     }
  57.     /**
  58.      * @return mixed
  59.      */
  60.     public function getUser(): User
  61.     {
  62.         return $this->user;
  63.     }
  64.     /**
  65.      * @param mixed $user
  66.      */
  67.     public function setUser(User $user): void
  68.     {
  69.         $this->user $user;
  70.     }
  71.     /**
  72.      * @return mixed
  73.      */
  74.     public function getToken(): string
  75.     {
  76.         return $this->token;
  77.     }
  78.     /**
  79.      * @param mixed $token
  80.      */
  81.     public function setToken(string $token): void
  82.     {
  83.         $this->token $token;
  84.     }
  85.     /**
  86.      * @return bool
  87.      */
  88.     public function isUsed(): bool
  89.     {
  90.         return $this->used;
  91.     }
  92.     /**
  93.      * @param bool $used
  94.      */
  95.     public function setUsed(bool $used): void
  96.     {
  97.         $this->used $used;
  98.     }
  99.     /**
  100.      * @return mixed
  101.      */
  102.     public function getType()
  103.     {
  104.         return $this->type;
  105.     }
  106.     /**
  107.      * @param mixed $type
  108.      */
  109.     public function setType($type): void
  110.     {
  111.         $this->type $type;
  112.     }
  113.     /**
  114.      * @return DateTime
  115.      */
  116.     public function getValidTill(): DateTime
  117.     {
  118.         return $this->valid_till;
  119.     }
  120.     /**
  121.      * @param DateTime $valid_till
  122.      */
  123.     public function setValidTill(DateTime $valid_till): void
  124.     {
  125.         $this->valid_till $valid_till;
  126.     }
  127. }