<?php
namespace App\Entity\TeacherRegister;
use App\Entity\Discipline;
use App\Repository\TeacherRegister\TeacherRegisterDisciplineClassRepository;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Serializer\Annotation\Groups;
/**
* @ORM\Entity(repositoryClass=TeacherRegisterDisciplineClassRepository::class)
*/
class TeacherRegisterDisciplineClass
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
* @Groups({"TeacherRegisterList"})
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity=TeacherRegister::class, inversedBy="teacherRegisterDisciplineClasses")
*/
private $teacherRegister;
/**
* @ORM\ManyToOne(targetEntity=Discipline::class)
* @Groups({"TeacherRegisterList"})
*/
private $discipline;
/**
* @ORM\Column(type="json", nullable=true)
* @Groups({"TeacherRegisterList"})
*/
private $classes = [];
/**
* @ORM\Column(type="integer", nullable=true)
* @Groups({"TeacherRegisterList"})
*/
private $vbe;
/**
* @ORM\Column(type="json", nullable=true)
* @Groups({"TeacherRegisterList"})
*/
private $classYears = [];
public function getId(): ?int
{
return $this->id;
}
public function getTeacherRegister(): ?TeacherRegister
{
return $this->teacherRegister;
}
public function setTeacherRegister(?TeacherRegister $teacherRegister): self
{
$this->teacherRegister = $teacherRegister;
return $this;
}
public function getDiscipline(): ?Discipline
{
return $this->discipline;
}
public function setDiscipline(?Discipline $discipline): self
{
$this->discipline = $discipline;
return $this;
}
public function getClasses(): ?array
{
$classesMap = [
'Priešmokyklinukai',
'1 – 4 kl.',
'5 – 8 kl.',
'9 – 10 kl.',
'11 – 12 kl.',
'Suaugę',
];
if(!is_array($this->classes))
{
$this->classes = [];
}
$classes = [];
foreach($classesMap as $class)
{
if(in_array($class, $this->classes))
{
$classes[] = $class;
}
}
return $classes;
}
public function setClasses(?array $classes): self
{
$this->classes = $classes;
return $this;
}
public function getVbe(): ?int
{
return $this->vbe;
}
public function setVbe(?int $vbe): self
{
$this->vbe = $vbe;
return $this;
}
public function getClassYears(): ?array
{
if(!is_array($this->classYears))
{
$this->classYears = [];
}
sort($this->classYears);
return $this->classYears;
}
public function setClassYears(?array $classYears): self
{
$this->classYears = $classYears;
return $this;
}
}