src/Entity/User.php line 13

  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface;
  5. use Symfony\Component\Security\Core\User\UserInterface;
  6. use Symfony\Component\Validator\Constraints as Assert;
  7. /**
  8.  * @ORM\Entity
  9.  */
  10. class User implements UserInterfacePasswordAuthenticatedUserInterface
  11. {
  12.     /**
  13.      * @ORM\Id()
  14.      * @ORM\GeneratedValue()
  15.      * @ORM\Column(type="integer")
  16.      */
  17.     private $id;
  18.     /**
  19.      * @ORM\Column(type="string", length=180)
  20.      * @Assert\NotBlank()
  21.      */
  22.     private $username;
  23.     /**
  24.      * @ORM\Column(type="json")
  25.      * @Assert\NotBlank()
  26.      */
  27.     private $roles = [];
  28.     /**
  29.      * @var string The hashed password
  30.      * @ORM\Column(type="string")
  31.      * @Assert\NotBlank()
  32.      */
  33.     private $password;
  34.     /**
  35.      * @ORM\Column(type="string", length=255)
  36.      * @Assert\NotBlank()
  37.      */
  38.     private $lastName;
  39.     /**
  40.      * @ORM\Column(type="string", length=255)
  41.      * @Assert\NotBlank()
  42.      */
  43.     private $nickName;
  44.     /**
  45.      * @ORM\Column(type="string", length=255)
  46.      * @Assert\NotBlank()
  47.      */
  48.     private $mail;
  49.     /**
  50.      * @ORM\Column(type="string", length=255,unique=true)
  51.      * @Assert\NotBlank()
  52.      */
  53.     private $phone;
  54.     /**
  55.      * @ORM\Column(type="string", length=255, nullable=true)
  56.      */
  57.     private $society;
  58.     /**
  59.      * @ORM\Column(type="boolean", nullable=false)
  60.      */
  61.     private $isActif;
  62.     /**
  63.      * @ORM\Column(type="boolean", nullable=true)
  64.      */
  65.     private $isArchived;
  66.     /**
  67.      * @ORM\Column(type="string", length=255, nullable=true)
  68.      */
  69.     private $societyFonction;
  70.     /**
  71.      * @ORM\Column(type="string", length=255)
  72.      */
  73.     private $cp;
  74.     
  75.     /**
  76.      * @ORM\Column(type="text")
  77.      */
  78.     private $adresse;
  79.     /**
  80.      * @ORM\Column(type="string", length=255)
  81.      */
  82.     private $city;
  83.     /**
  84.      * @ORM\Column(name="date_creation" , type="datetime", length=255)
  85.      * @Assert\NotBlank()
  86.      */
  87.     private $dateCreation;
  88.     public function getId(): ?int
  89.     {
  90.         return $this->id;
  91.     }
  92.     /**
  93.      * A visual identifier that represents this user.
  94.      *
  95.      * @see UserInterface
  96.      */
  97.     public function getUsername(): string
  98.     {
  99.         return (string) $this->username;
  100.     }
  101.     public function setUsername(string $username): self
  102.     {
  103.         $this->username $username;
  104.         return $this;
  105.     }
  106.     /**
  107.      * @see UserInterface
  108.      */
  109.     public function getRoles(): array
  110.     {
  111.         $roles $this->roles;
  112.         // guarantee every user at least has ROLE_USER
  113.         $roles[] = 'ROLE_USER';
  114.         return array_unique($roles);
  115.     }
  116.     public function setRoles(array $roles): self
  117.     {
  118.         $this->roles $roles;
  119.         return $this;
  120.     }
  121.     /**
  122.      * @see UserInterface
  123.      */
  124.     public function getPassword(): string
  125.     {
  126.         return (string) $this->password;
  127.     }
  128.     public function setPassword(string $password): self
  129.     {
  130.         $this->password $password;
  131.         return $this;
  132.     }
  133.     /**
  134.      * @see UserInterface
  135.      */
  136.     public function getSalt()
  137.     {
  138.         // not needed when using the "bcrypt" algorithm in security.yaml
  139.     }
  140.     /**
  141.      * @see UserInterface
  142.      */
  143.     public function eraseCredentials()
  144.     {
  145.         // If you store any temporary, sensitive data on the user, clear it here
  146.         // $this->plainPassword = null;
  147.     }
  148.     public function getLastName(): ?string
  149.     {
  150.         return $this->lastName;
  151.     }
  152.     public function setLastName(?string $lastName): self
  153.     {
  154.         $this->lastName $lastName;
  155.         return $this;
  156.     }
  157.     public function getNickName(): ?string
  158.     {
  159.         return $this->nickName;
  160.     }
  161.     public function setNickName(string $nickName): self
  162.     {
  163.         $this->nickName $nickName;
  164.         return $this;
  165.     }
  166.     public function getIsActif(): ?bool
  167.     {
  168.         return $this->isActif;
  169.     }
  170.     public function setIsActif(bool $isActif): self
  171.     {
  172.         $this->isActif $isActif;
  173.         return $this;
  174.     }
  175.     public function getIsArchived(): ?bool
  176.     {
  177.         return $this->isArchived;
  178.     }
  179.     public function setIsArchived(bool $isArchived false): self
  180.     {
  181.         $this->isArchived $isArchived;
  182.         return $this;
  183.     }
  184.     public function getMail(): ?string
  185.     {
  186.         return $this->mail;
  187.     }
  188.     public function setMail(string $mail): self
  189.     {
  190.         $this->mail $mail;
  191.         return $this;
  192.     }
  193.     public function getPhone(): ?int
  194.     {
  195.         return $this->phone;
  196.     }
  197.     public function setPhone(int $phone): self
  198.     {
  199.         $this->phone $phone;
  200.         return $this;
  201.     }
  202.     public function getSociety(): ?string
  203.     {
  204.         return $this->society;
  205.     }
  206.     public function setSociety(string $society): self
  207.     {
  208.         $this->society $society;
  209.         return $this;
  210.     }
  211.     public function getSocietyFonction(): ?string
  212.     {
  213.         return $this->societyFonction;
  214.     }
  215.     public function setSocietyFonction(?string $societyFonction): self
  216.     {
  217.         $this->societyFonction $societyFonction;
  218.         return $this;
  219.     }
  220.     public function getAdresse(): ?string
  221.     {
  222.         return $this->adresse;
  223.     }
  224.     public function setAdresse(string $adresse): self
  225.     {
  226.         $this->adresse $adresse;
  227.         return $this;
  228.     }
  229.     public function getCp(): ?string
  230.     {
  231.         return $this->cp;
  232.     }
  233.     public function setCp(string $cp): self
  234.     {
  235.         $this->cp $cp;
  236.         return $this;
  237.     }
  238.     public function getCity(): ?string
  239.     {
  240.         return $this->city;
  241.     }
  242.     public function setCity(string $city): self
  243.     {
  244.         $this->city $city;
  245.         return $this;
  246.     }
  247.     public function getUserIdentifier(): string
  248.     {
  249.         return $this->username;
  250.     }
  251.     public function getDateCreation(): ?\DateTimeInterface
  252.     {
  253.         return $this->dateCreation;
  254.     }
  255.     public function setDateCreation(\DateTimeInterface $dateCreation): self
  256.     {
  257.         $this->dateCreation $dateCreation;
  258.         return $this;
  259.     }
  260. }