<?php
namespace App\Entity;
use App\Entity\Traits\TimeStampable;
use App\Entity\Traits\TimeStampableTrait;
use App\Repository\EvaluationCritereRepository;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Serializer\Annotation\Groups;
#[ORM\Entity(repositoryClass: EvaluationCritereRepository::class)]
#[ORM\HasLifecycleCallbacks]
class EvaluationCritere
{
use TimeStampableTrait;
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
#[Groups(['critere:read', 'evaluationCritere:read'])]
private ?int $id = null;
#[ORM\ManyToOne(inversedBy: 'evaluationCriteres')]
#[Groups(['evaluationCritere:read'])]
private ?PerformenceCritere $critere = null;
#[ORM\Column]
#[Groups(['critere:read', 'evaluationCritere:read'])]
private ?int $note = null;
#[ORM\ManyToOne(inversedBy: 'evaluationCriteres')]
#[Groups(['evaluationCritere:read'])]
private ?User $createdBy = null;
#[ORM\ManyToOne(inversedBy: 'evaluationCriteres')]
#[Groups(['critere:read', 'evaluationCritere:read'])]
private ?Evaluation $evaluation = null;
public function getId(): ?int
{
return $this->id;
}
public function getCritere(): ?PerformenceCritere
{
return $this->critere;
}
public function setCritere(?PerformenceCritere $critere): static
{
$this->critere = $critere;
return $this;
}
public function getNote(): ?int
{
return $this->note;
}
public function setNote(int $note): static
{
$this->note = $note;
return $this;
}
public function getCreatedBy(): ?User
{
return $this->createdBy;
}
public function setCreatedBy(?User $createdBy): static
{
$this->createdBy = $createdBy;
return $this;
}
public function getEvaluation(): ?Evaluation
{
return $this->evaluation;
}
public function setEvaluation(?Evaluation $evaluation): static
{
$this->evaluation = $evaluation;
return $this;
}
}