src/Entity/User.php line 15

Open in your IDE?
  1. <?php 
  2. // src/AppBundle/Entity/User.php
  3. namespace App\Entity;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Symfony\Component\Security\Core\User\UserInterface;
  7. use JMS\Serializer\Annotation as Serializer;
  8. use Doctrine\ORM\Mapping as ORM;
  9. use Doctrine\ORM\Event\PostFlushEventArgs;
  10. /**
  11.  * @ORM\Table(name="ba_user")
  12.  * @ORM\Entity(repositoryClass="App\Repository\UserRepository")
  13.  */
  14. class User implements UserInterface
  15. {
  16.     use \App\Traits\Timestampable;
  17.     // use \App\Traits\Blameable;
  18.     /**
  19.      * @ORM\Column(name="id", type="integer", nullable=false)
  20.      * @ORM\Id
  21.      * @ORM\GeneratedValue(strategy="IDENTITY")
  22.      */
  23.     private $id;
  24.     /**
  25.      * @ORM\Column(type="string", length=25, unique=true)
  26.      */
  27.     private $username;
  28.     /**
  29.      * @ORM\Column(type="string", length=64)
  30.      */
  31.     private $password;
  32.     /**
  33.      * @ORM\Column(type="string", length=100)
  34.      */
  35.     private $email;
  36.     /**
  37.      * @ORM\Column(name="is_active", type="boolean")
  38.      */
  39.     private $isActive;
  40.     /**
  41.      * @ORM\ManyToOne(targetEntity="App\Entity\Role")
  42.      */
  43.     private $role;
  44.     /**
  45.      * @ORM\Column(type="string", length=255)
  46.      */
  47.     private $firstname;
  48.     /**
  49.      * @ORM\Column(type="string", length=255)
  50.      */
  51.     private $lastname;
  52.     /**
  53.      * @ORM\OneToMany(targetEntity="App\Entity\Log", mappedBy="user_crea")
  54.      */
  55.     private $logs;
  56.     /**
  57.      * @ORM\Column(type="string", length=100, nullable=true)
  58.      */
  59.     private $phone;
  60.     /**
  61.      * @ORM\Column(type="string", length=100, nullable=true)
  62.      */
  63.     private $cellphone;
  64.     /**
  65.      * @ORM\Column(type="text", nullable=true)
  66.      */
  67.     private $address;
  68.     /**
  69.      * @ORM\Column(type="string", length=100, nullable=true)
  70.      */
  71.     private $city;
  72.     /**
  73.      * @ORM\Column(type="string", length=10, nullable=true)
  74.      */
  75.     private $zipcode;
  76.     /**
  77.      * @ORM\Column(type="string", length=255, nullable=true)
  78.      */
  79.     private $avatar;
  80.     /**
  81.      * @ORM\OneToMany(targetEntity="App\Entity\HistoriquePage", mappedBy="user")
  82.      */
  83.     private $historiquePages;
  84.     /**
  85.      * @ORM\ManyToOne(targetEntity="App\Entity\Langue")
  86.      */
  87.     private $langue;
  88.     /**
  89.      * @ORM\Column(type="integer", nullable=true)
  90.      */
  91.     private $uid;
  92.     /**
  93.      * @ORM\OneToMany(targetEntity="App\Entity\Filtre", mappedBy="user")
  94.      */
  95.     private $filtres;
  96.     /**
  97.      * @ORM\OneToMany(targetEntity=UserFilter::class, mappedBy="user")
  98.      */
  99.     private $userFilters;
  100.     /**
  101.      * @ORM\OneToMany(targetEntity=Dossier::class, mappedBy="chargeDossier")
  102.      */
  103.     private $dossiers;
  104.     /**
  105.      * @ORM\OneToMany(targetEntity=Dossier::class, mappedBy="chargeDossier2")
  106.      */
  107.     private $dossiers2;
  108.     /**
  109.      * @ORM\OneToMany(targetEntity=TableauBordRequeteUser::class, mappedBy="user")
  110.      */
  111.     private $tableauBordRequeteUsers;
  112.     /**
  113.      * @ORM\OneToMany(targetEntity=DossierSegmentTodo::class, mappedBy="responsable")
  114.      */
  115.     private $dossierSegmentTodos;
  116.     public function __construct()
  117.     {
  118.         $this->isActive true;
  119.         $this->logs = new ArrayCollection();
  120.         $this->historiquePages = new ArrayCollection();
  121.         $this->filtres = new ArrayCollection();
  122.         // may not be needed, see section on salt below
  123.         // $this->salt = md5(uniqid('', true));
  124.         $this->userFilters = new ArrayCollection();
  125.         $this->dossiers = new ArrayCollection();
  126.         $this->dossiers2 = new ArrayCollection();
  127.         $this->tableauBordRequeteUsers = new ArrayCollection();
  128.         $this->dossierSegmentTodos = new ArrayCollection();    
  129.     }
  130.     public function __toString()
  131.     {
  132.         return $this->firstname " " $this->lastname;
  133.     }
  134.     
  135.     public function getUsername()
  136.     {
  137.         return $this->username;
  138.     }
  139.     public function getSalt()
  140.     {
  141.         // you *may* need a real salt depending on your encoder
  142.         // see section on salt below
  143.         return null;
  144.     }
  145.     public function getPassword()
  146.     {
  147.         return $this->password;
  148.     }
  149.     
  150.     /**
  151.      * @see UserInterface
  152.      */
  153.     public function getRoles(): array
  154.     {
  155.         return array('ROLE_USER''ROLE_API');
  156.     }
  157.     public function getRole(): ?Role
  158.     {
  159.         return $this->role;
  160.     }
  161.     public function setRole(?Role $role): self
  162.     {
  163.         $this->role $role;
  164.         return $this;
  165.     }
  166.     public function eraseCredentials()
  167.     {
  168.     }
  169.     /** @see \Serializable::serialize() */
  170.     public function serialize()
  171.     {
  172.         return serialize(array(
  173.             $this->id,
  174.             $this->username,
  175.             $this->password,
  176.             // see section on salt below
  177.             // $this->salt,
  178.         ));
  179.     }
  180.     /** @see \Serializable::unserialize() */
  181.     public function unserialize($serialized)
  182.     {
  183.         list (
  184.             $this->id,
  185.             $this->username,
  186.             $this->password,
  187.             // see section on salt below
  188.             // $this->salt
  189.         ) = unserialize($serialized);
  190.     }
  191.     public function getFirstname(): ?string
  192.     {
  193.         return $this->firstname;
  194.     }
  195.     public function setFirstname(string $firstname): self
  196.     {
  197.         $this->firstname $firstname;
  198.         return $this;
  199.     }
  200.     public function getLastname(): ?string
  201.     {
  202.         return $this->lastname;
  203.     }
  204.     public function setLastname(string $lastname): self
  205.     {
  206.         $this->lastname $lastname;
  207.         return $this;
  208.     }
  209.     public function getId(): ?int
  210.     {
  211.         return $this->id;
  212.     }
  213.     public function setUsername(string $username): self
  214.     {
  215.         $this->username $username;
  216.         return $this;
  217.     }
  218.     public function setPassword(string $password): self
  219.     {
  220.         $this->password $password;
  221.         return $this;
  222.     }
  223.     public function getEmail(): ?string
  224.     {
  225.         return $this->email;
  226.     }
  227.     public function setEmail(string $email): self
  228.     {
  229.         $this->email $email;
  230.         return $this;
  231.     }
  232.     public function getIsActive(): ?bool
  233.     {
  234.         return $this->isActive;
  235.     }
  236.     public function setIsActive(bool $isActive): self
  237.     {
  238.         $this->isActive $isActive;
  239.         return $this;
  240.     }
  241.     /**
  242.      * @return Collection|Log[]
  243.      */
  244.     public function getLogs(): Collection
  245.     {
  246.         return $this->logs;
  247.     }
  248.     public function addLog(Log $log): self
  249.     {
  250.         if (!$this->logs->contains($log)) {
  251.             $this->logs[] = $log;
  252.             $log->setUserCrea($this);
  253.         }
  254.         return $this;
  255.     }
  256.     public function removeLog(Log $log): self
  257.     {
  258.         if ($this->logs->contains($log)) {
  259.             $this->logs->removeElement($log);
  260.             // set the owning side to null (unless already changed)
  261.             if ($log->getUserCrea() === $this) {
  262.                 $log->setUserCrea(null);
  263.             }
  264.         }
  265.         return $this;
  266.     }
  267.     public function getPhone(): ?string
  268.     {
  269.         return $this->phone;
  270.     }
  271.     public function setPhone(?string $phone): self
  272.     {
  273.         $this->phone $phone;
  274.         return $this;
  275.     }
  276.     public function getCellphone(): ?string
  277.     {
  278.         return $this->cellphone;
  279.     }
  280.     public function setCellphone(?string $cellphone): self
  281.     {
  282.         $this->cellphone $cellphone;
  283.         return $this;
  284.     }
  285.     public function getAddress(): ?string
  286.     {
  287.         return $this->address;
  288.     }
  289.     public function setAddress(?string $address): self
  290.     {
  291.         $this->address $address;
  292.         return $this;
  293.     }
  294.     public function getCity(): ?string
  295.     {
  296.         return $this->city;
  297.     }
  298.     public function setCity(?string $city): self
  299.     {
  300.         $this->city $city;
  301.         return $this;
  302.     }
  303.     public function getZipcode(): ?string
  304.     {
  305.         return $this->zipcode;
  306.     }
  307.     public function setZipcode(?string $zipcode): self
  308.     {
  309.         $this->zipcode $zipcode;
  310.         return $this;
  311.     }
  312.     public function getAvatar()
  313.     {
  314.         return $this->avatar;
  315.     }
  316.     public function setAvatar$avatar): self
  317.     {
  318.         $this->avatar $avatar;
  319.         return $this;
  320.     }
  321.     /**
  322.      * @return Collection|HistoriquePage[]
  323.      */
  324.     public function getHistoriquePages(): Collection
  325.     {
  326.         return $this->historiquePages;
  327.     }
  328.     public function addHistoriquePage(HistoriquePage $historiquePage): self
  329.     {
  330.         if (!$this->historiquePages->contains($historiquePage)) {
  331.             $this->historiquePages[] = $historiquePage;
  332.             $historiquePage->setUser($this);
  333.         }
  334.         return $this;
  335.     }
  336.     public function removeHistoriquePage(HistoriquePage $historiquePage): self
  337.     {
  338.         if ($this->historiquePages->contains($historiquePage)) {
  339.             $this->historiquePages->removeElement($historiquePage);
  340.             // set the owning side to null (unless already changed)
  341.             if ($historiquePage->getUser() === $this) {
  342.                 $historiquePage->setUser(null);
  343.             }
  344.         }
  345.         return $this;
  346.     }
  347.     public function getLangue(): ?Langue
  348.     {
  349.         return $this->langue;
  350.     }
  351.     public function setLangue(?Langue $langue): self
  352.     {
  353.         $this->langue $langue;
  354.         return $this;
  355.     }
  356.     
  357.     public function postFlush(PostFlushEventArgs $eventArgs){
  358.             die('test');
  359.     }
  360.     public function getUid(): ?int
  361.     {
  362.         return $this->uid;
  363.     }
  364.     public function setUid(?int $uid): self
  365.     {
  366.         $this->uid $uid;
  367.         return $this;
  368.     }
  369.     
  370.      /**
  371.      * @return Collection|Filtre[]
  372.      */
  373.     public function getFiltres(): Collection
  374.     {
  375.         return $this->filtres;
  376.     }
  377.     public function addFiltre(Filtre $filtre): self
  378.     {
  379.         if (!$this->filtres->contains($filtre)) {
  380.             $this->filtres[] = $filtre;
  381.             $filtre->setUser($this);
  382.         }
  383.         return $this;
  384.     }
  385.     public function removeFiltre(Filtre $filtre): self
  386.     {
  387.         if ($this->filtres->contains($filtre)) {
  388.             $this->filtres->removeElement($filtre);
  389.             // set the owning side to null (unless already changed)
  390.             if ($filtre->getUser() === $this) {
  391.                 $filtre->setUser(null);
  392.             }
  393.         }
  394.         return $this;
  395.     }
  396.     /**
  397.      * @return Collection|UserFilters[]
  398.      */
  399.     public function getUserFilters(): Collection
  400.     {
  401.         return $this->userFilters;
  402.     }
  403.     public function addUserFilter(UserFilter $userFilter): self
  404.     {
  405.         if (!$this->userFilters->contains($userFilter)) {
  406.             $this->userFilters[] = $userFilter;
  407.             $userFilter->setUser($this);
  408.         }
  409.         return $this;
  410.     }
  411.     public function removeUserFilter(UserFilter $userFilter): self
  412.     {
  413.         if ($this->userFilters->contains($userFilter)) {
  414.             $this->userFilters->removeElement($userFilter);
  415.             // set the owning side to null (unless already changed)
  416.             if ($userFilter->getUser() === $this) {
  417.                 $userFilter->setUser(null);
  418.             }
  419.         }
  420.         return $this;
  421.     }
  422.     /**
  423.      * @return Collection|Dossier[]
  424.      */
  425.     public function getDossiers(): Collection
  426.     {
  427.         return $this->dossiers;
  428.     }
  429.     public function addDossier(Dossier $dossier): self
  430.     {
  431.         if (!$this->dossiers->contains($dossier)) {
  432.             $this->dossiers[] = $dossier;
  433.             $dossier->setChargeDossier($this);
  434.         }
  435.         return $this;
  436.     }
  437.     public function removeDossier(Dossier $dossier): self
  438.     {
  439.         if ($this->dossiers->contains($dossier)) {
  440.             $this->dossiers->removeElement($dossier);
  441.             // set the owning side to null (unless already changed)
  442.             if ($dossier->getChargeDossier() === $this) {
  443.                 $dossier->setChargeDossier(null);
  444.             }
  445.         }
  446.         return $this;
  447.     }
  448.     /**
  449.      * @return Collection|Dossier[]
  450.      */
  451.     public function getDossiers2(): Collection
  452.     {
  453.         return $this->dossiers2;
  454.     }
  455.     public function addDossiers2(Dossier $dossiers2): self
  456.     {
  457.         if (!$this->dossiers2->contains($dossiers2)) {
  458.             $this->dossiers2[] = $dossiers2;
  459.             $dossiers2->setChargeDossier2($this);
  460.         }
  461.         return $this;
  462.     }
  463.     public function removeDossiers2(Dossier $dossiers2): self
  464.     {
  465.         if ($this->dossiers2->contains($dossiers2)) {
  466.             $this->dossiers2->removeElement($dossiers2);
  467.             // set the owning side to null (unless already changed)
  468.             if ($dossiers2->getChargeDossier2() === $this) {
  469.                 $dossiers2->setChargeDossier2(null);
  470.             }
  471.         }
  472.         return $this;
  473.     }
  474.     /**
  475.      * @return Collection|TableauBordRequeteUser[]
  476.      */
  477.     public function getTableauBordRequeteUsers(): Collection
  478.     {
  479.         return $this->tableauBordRequeteUsers;
  480.     }
  481.     public function addTableauBordRequeteUser(TableauBordRequeteUser $tableauBordRequeteUser): self
  482.     {
  483.         if (!$this->tableauBordRequeteUsers->contains($tableauBordRequeteUser)) {
  484.             $this->tableauBordRequeteUsers[] = $tableauBordRequeteUser;
  485.             $tableauBordRequeteUser->setUser($this);
  486.         }
  487.         return $this;
  488.     }
  489.     public function removeTableauBordRequeteUser(TableauBordRequeteUser $tableauBordRequeteUser): self
  490.     {
  491.         if ($this->tableauBordRequeteUsers->contains($tableauBordRequeteUser)) {
  492.             $this->tableauBordRequeteUsers->removeElement($tableauBordRequeteUser);
  493.             // set the owning side to null (unless already changed)
  494.             if ($tableauBordRequeteUser->getUser() === $this) {
  495.                 $tableauBordRequeteUser->setUser(null);
  496.             }
  497.         }
  498.         return $this;
  499.     }
  500.     /**
  501.      * @return Collection|DossierSegmentTodo[]
  502.      */
  503.     public function getDossierSegmentTodos(): Collection
  504.     {
  505.         return $this->dossierSegmentTodos;
  506.     }
  507.     public function addDossierSegmentTodo(DossierSegmentTodo $dossierSegmentTodo): self
  508.     {
  509.         if (!$this->dossierSegmentTodos->contains($dossierSegmentTodo)) {
  510.             $this->dossierSegmentTodos[] = $dossierSegmentTodo;
  511.             $dossierSegmentTodo->setResponsable($this);
  512.         }
  513.         return $this;
  514.     }
  515.     public function removeDossierSegmentTodo(DossierSegmentTodo $dossierSegmentTodo): self
  516.     {
  517.         if ($this->dossierSegmentTodos->contains($dossierSegmentTodo)) {
  518.             $this->dossierSegmentTodos->removeElement($dossierSegmentTodo);
  519.             // set the owning side to null (unless already changed)
  520.             if ($dossierSegmentTodo->getResponsable() === $this) {
  521.                 $dossierSegmentTodo->setResponsable(null);
  522.             }
  523.         }
  524.         return $this;
  525.     }
  526. }
  527. ?>