src/Entity/ClassLevel.php line 11

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ClassLevelRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. #[ORM\Entity(repositoryClassClassLevelRepository::class)]
  8. class ClassLevel
  9. {
  10.     #[ORM\Id]
  11.     #[ORM\GeneratedValue]
  12.     #[ORM\Column]
  13.     private ?int $id null;
  14.     #[ORM\Column(length255)]
  15.     private ?string $name null;
  16.     #[ORM\Column(length255)]
  17.     private ?string $nameEn null;
  18.     #[ORM\Column]
  19.     private ?int $level null;
  20.     #[ORM\OneToMany(mappedBy'classLevel'targetEntityTheClass::class)]
  21.     private Collection $classes;
  22.     #[ORM\ManyToOne(inversedBy'classLevels')]
  23.     #[ORM\JoinColumn(nullablefalse)]
  24.     private ?CycleLevel $cycle null;
  25.     #[ORM\OneToMany(mappedBy'level'targetEntityClassOption::class, orphanRemovaltrue)]
  26.     private Collection $classOptions;
  27.     public function __construct()
  28.     {
  29.         $this->classes = new ArrayCollection();
  30.         $this->classOptions = new ArrayCollection();
  31.     }
  32.     
  33.     public function __toString(): string
  34.     {
  35.         return $this->name ' - ' $this->nameEn;
  36.     }
  37.     public function getId(): ?int
  38.     {
  39.         return $this->id;
  40.     }
  41.     public function getName(): ?string
  42.     {
  43.         return $this->name;
  44.     }
  45.     public function setName(string $name): static
  46.     {
  47.         $this->name $name;
  48.         return $this;
  49.     }
  50.     public function getNameEn(): ?string
  51.     {
  52.         return $this->nameEn;
  53.     }
  54.     public function setNameEn(string $nameEn): static
  55.     {
  56.         $this->nameEn $nameEn;
  57.         return $this;
  58.     }
  59.     public function getLevel(): ?int
  60.     {
  61.         return $this->level;
  62.     }
  63.     public function setLevel(int $level): static
  64.     {
  65.         $this->level $level;
  66.         return $this;
  67.     }
  68.     /**
  69.      * @return Collection<int, TheClass>
  70.      */
  71.     public function getClasses(): Collection
  72.     {
  73.         return $this->classes;
  74.     }
  75.     public function addClass(TheClass $class): static
  76.     {
  77.         if (!$this->classes->contains($class)) {
  78.             $this->classes->add($class);
  79.             $class->setClassLevel($this);
  80.         }
  81.         return $this;
  82.     }
  83.     public function removeClass(TheClass $class): static
  84.     {
  85.         if ($this->classes->removeElement($class)) {
  86.             // set the owning side to null (unless already changed)
  87.             if ($class->getClassLevel() === $this) {
  88.                 $class->setClassLevel(null);
  89.             }
  90.         }
  91.         return $this;
  92.     }
  93.     public function getCycle(): ?CycleLevel
  94.     {
  95.         return $this->cycle;
  96.     }
  97.     public function setCycle(?CycleLevel $cycle): static
  98.     {
  99.         $this->cycle $cycle;
  100.         return $this;
  101.     }
  102.     /**
  103.      * @return Collection<int, ClassOption>
  104.      */
  105.     public function getClassOptions(): Collection
  106.     {
  107.         return $this->classOptions;
  108.     }
  109.     public function addClassOption(ClassOption $classOption): static
  110.     {
  111.         if (!$this->classOptions->contains($classOption)) {
  112.             $this->classOptions->add($classOption);
  113.             $classOption->setLevel($this);
  114.         }
  115.         return $this;
  116.     }
  117.     public function removeClassOption(ClassOption $classOption): static
  118.     {
  119.         if ($this->classOptions->removeElement($classOption)) {
  120.             // set the owning side to null (unless already changed)
  121.             if ($classOption->getLevel() === $this) {
  122.                 $classOption->setLevel(null);
  123.             }
  124.         }
  125.         return $this;
  126.     }
  127. }