src/Entity/JogosUsuario.php line 13

  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\JogosUsuarioRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use App\Util\Niveis;
  8. #[ORM\Entity(repositoryClassJogosUsuarioRepository::class)]
  9. class JogosUsuario extends Niveis
  10. {
  11.     #[ORM\Id]
  12.     #[ORM\GeneratedValue]
  13.     #[ORM\Column]
  14.     private ?int $id null;
  15.     #[ORM\ManyToOne(inversedBy'JogosUsuarios')]
  16.     private ?Jogos $Jogos null;
  17.     #[ORM\ManyToOne(inversedBy'JogosUsuarios')]
  18.     private ?User $Usuario null;
  19.     #[ORM\OneToMany(mappedBy'JogosUsuario'targetEntityJogosUsuarioCategoria::class)]
  20.     private Collection $JogosUsuarioCategoria;
  21.     
  22.     #[ORM\Column]
  23.     private ?int $nivel null;
  24.     #[ORM\Column(nullabletrue)]
  25.     private ?int $pontos null;
  26.     #[ORM\OneToMany(mappedBy'JogosUsuario'targetEntityJogosUsuarioModelo::class)]
  27.     private Collection $JogosUsuarioModelos;
  28.     #[ORM\Column(nullabletrue)]
  29.     private ?bool $naoRepetirPalavras null;
  30.     #[ORM\Column]
  31.     private ?int $posicao null;
  32.     public function __construct()
  33.     {
  34.         $this->JogosUsuarioCategoria = new ArrayCollection();
  35.         $this->JogosUsuarioModelos = new ArrayCollection();
  36.     }
  37.     public function getId(): ?int
  38.     {
  39.         return $this->id;
  40.     }
  41.     public function getJogos(): ?Jogos
  42.     {
  43.         return $this->Jogos;
  44.     }
  45.     public function setJogos(?Jogos $Jogos): self
  46.     {
  47.         $this->Jogos $Jogos;
  48.         return $this;
  49.     }
  50.     public function getUsuario(): ?User
  51.     {
  52.         return $this->Usuario;
  53.     }
  54.     public function setUsuario(?User $Usuario): self
  55.     {
  56.         $this->Usuario $Usuario;
  57.         return $this;
  58.     }
  59.     
  60.     public function getNivel(): ?int
  61.     {
  62.         return $this->nivel;
  63.     }
  64.     public function setNivel(int $nivel): self
  65.     {
  66.         if(!isset(self::TP_NIVEL[$nivel])){
  67.             throw new \Exception('Nível não encontrado');
  68.         }
  69.         
  70.         $this->nivel $nivel;
  71.         
  72.         return $this;
  73.     }
  74.     
  75.     public function getNiveldesc()
  76.     {
  77.         
  78.         if(!isset(self::TP_NIVEL[$this->getNivel()])){
  79.             return '';
  80.         }
  81.         
  82.         return self::TP_NIVEL[$this->getNivel()]['label'];        
  83.     }
  84.     /**
  85.      * @return Collection<int, JogosUsuarioCategoria>
  86.      */
  87.     public function getJogosUsuarioCategoria(): Collection
  88.     {
  89.         return $this->JogosUsuarioCategoria;
  90.     }
  91.     public function addJogosUsuarioCategoria(JogosUsuarioCategoria $categorium): self
  92.     {
  93.         if (!$this->JogosUsuarioCategoria->contains($categorium)) {
  94.             $this->JogosUsuarioCategoria->add($categorium);
  95.             $categorium->setJogosUsuario($this);
  96.         }
  97.         return $this;
  98.     }
  99.     public function removeJogosUsuarioCategoria(JogosUsuarioCategoria $categorium): self
  100.     {
  101.         if ($this->JogosUsuarioCategoria->removeElement($categorium)) {
  102.             // set the owning side to null (unless already changed)
  103.             if ($categorium->getJogosUsuario() === $this) {
  104.                 $categorium->setJogosUsuario(null);
  105.             }
  106.         }
  107.         return $this;
  108.     }
  109.     
  110.     public function clearJogosUsuarioCategoria(\Doctrine\ORM\EntityManager $em): self
  111.     {
  112.         $vet $this->getJogosUsuarioCategoria();
  113.         foreach($vet as $idx){
  114.             $this->removeJogosUsuarioCategoria($idx);
  115.         }
  116.         $em->persist($this);
  117.         $em->flush();
  118.         return $this;
  119.     }
  120.     public function getPontos(): ?int
  121.     {
  122.         return $this->pontos;
  123.     }
  124.     public function setPontos(?int $pontos): self
  125.     {
  126.         $this->pontos $pontos;
  127.         return $this;
  128.     }
  129.     /**
  130.      * @return Collection<int, JogosUsuarioModelo>
  131.      */
  132.     public function getJogosUsuarioModelos(): Collection
  133.     {
  134.         return $this->JogosUsuarioModelos;
  135.     }
  136.     public function addJogosUsuarioModelo(JogosUsuarioModelo $jogosUsuarioModelo): self
  137.     {
  138.         if (!$this->JogosUsuarioModelos->contains($jogosUsuarioModelo)) {
  139.             $this->JogosUsuarioModelos->add($jogosUsuarioModelo);            
  140.         }
  141.         return $this;
  142.     }
  143.     public function removeJogosUsuarioModelo(JogosUsuarioModelo $jogosUsuarioModelo): self
  144.     {
  145.         $this->JogosUsuarioModelos->removeElement($jogosUsuarioModelo);
  146.         return $this;
  147.     }
  148.     
  149.     public function clearJogosUsuarioModelos(\Doctrine\ORM\EntityManager $em): self
  150.     {
  151.         $vet $this->getJogosUsuarioModelos();
  152.         foreach($vet as $idx){
  153.             $this->removeJogosUsuarioModelo($idx);
  154.         }
  155.         
  156.         $em->persist($this);
  157.         $em->flush();
  158.         return $this;
  159.     }
  160.     public function isNaoRepetirPalavras(): ?bool
  161.     {
  162.         return $this->naoRepetirPalavras;
  163.     }
  164.     public function setNaoRepetirPalavras(bool $naoRepetirPalavras): self
  165.     {
  166.         $this->naoRepetirPalavras $naoRepetirPalavras;
  167.         return $this;
  168.     }
  169.     public function getPosicao(): ?int
  170.     {
  171.         return $this->posicao;
  172.     }
  173.     public function setPosicao(int $posicao): self
  174.     {
  175.         $this->posicao $posicao;
  176.         return $this;
  177.     }
  178. }