WIP: Adjust model, remove manager branch in navigation
This commit is contained in:
+30
-15
@@ -5,6 +5,8 @@ namespace App\Entity;
|
||||
use App\Entity\Traits\BlameableEntity;
|
||||
use App\Entity\Traits\TimestampableEntity;
|
||||
use App\Repository\JobProfileRepository;
|
||||
use Doctrine\Common\Collections\ArrayCollection;
|
||||
use Doctrine\Common\Collections\Collection;
|
||||
use Doctrine\DBAL\Types\Types;
|
||||
use Doctrine\ORM\Mapping as ORM;
|
||||
use Symfony\Component\Uid\Uuid;
|
||||
@@ -28,15 +30,16 @@ class JobProfile implements BlameableEntityInterface, TimestampableEntityInterfa
|
||||
#[Assert\NotBlank(message: 'Bitte gib die Bezeichnung an')]
|
||||
private ?string $name = null;
|
||||
|
||||
#[ORM\ManyToOne]
|
||||
private ?Training $requiredTraining = null;
|
||||
|
||||
#[ORM\Column(type: Types::JSON)]
|
||||
private array $requiredLicenses = [];
|
||||
|
||||
#[ORM\ManyToMany(targetEntity: Training::class)]
|
||||
private Collection $requiredTrainings;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->uuid = Uuid::v4();
|
||||
$this->requiredTrainings = new ArrayCollection();
|
||||
}
|
||||
|
||||
public function getId(): ?int
|
||||
@@ -61,18 +64,6 @@ class JobProfile implements BlameableEntityInterface, TimestampableEntityInterfa
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getRequiredTraining(): ?Training
|
||||
{
|
||||
return $this->requiredTraining;
|
||||
}
|
||||
|
||||
public function setRequiredTraining(?Training $requiredTraining): static
|
||||
{
|
||||
$this->requiredTraining = $requiredTraining;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getRequiredLicenses(): array
|
||||
{
|
||||
return $this->requiredLicenses;
|
||||
@@ -84,4 +75,28 @@ class JobProfile implements BlameableEntityInterface, TimestampableEntityInterfa
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Collection<int, Training>
|
||||
*/
|
||||
public function getRequiredTrainings(): Collection
|
||||
{
|
||||
return $this->requiredTrainings;
|
||||
}
|
||||
|
||||
public function addRequiredTraining(Training $requiredTraining): static
|
||||
{
|
||||
if (!$this->requiredTrainings->contains($requiredTraining)) {
|
||||
$this->requiredTrainings->add($requiredTraining);
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function removeRequiredTraining(Training $requiredTraining): static
|
||||
{
|
||||
$this->requiredTrainings->removeElement($requiredTraining);
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user