<?php
namespace App\Entity\Visa;
use App\Entity\User\User;
use App\Repository\Visa\VisaExigencesRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\DBAL\Types\Types;
use Doctrine\ORM\Mapping as ORM;
#[ORM\Entity(repositoryClass: VisaExigencesRepository::class)]
class VisaExigences
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: 'integer')]
private $id;
#[ORM\Column(type: 'float', nullable: true)]
private $numeroExigence;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $lot;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $sousLot;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $cibles;
#[ORM\Column(type: 'string', length: 255, nullable: true)]
private $elementsConcernes;
#[ORM\Column(type: 'text', nullable: true)]
private $exigences;
#[ORM\Column(type: 'text', nullable: true)]
private $commentairesEntreprise;
#[ORM\Column(type: 'text', nullable: true)]
private $commentairesMOE;
#[ORM\Column(type: 'text', nullable: true)]
private $localisation;
#[ORM\ManyToOne(targetEntity: User::class)]
private $idUser;
#[ORM\ManyToOne(targetEntity: VisaProjets::class)]
private $idProjet;
#[ORM\Column(type: 'boolean', nullable: true)]
private $validation;
/**
* @var Collection $visaJustificatifs
*/
#[ORM\OneToMany(targetEntity: VisaJustificatifs::class, mappedBy: 'exigence')]
private Collection $visaJustificatifs;
public function getVisaJustificatifs(): Collection {
return $this->visaJustificatifs;
}
public function __construct()
{
$this->User = new ArrayCollection();
$this->projet = new ArrayCollection();
$this->visaJustificatifs=new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getValidation(): ?bool
{
return $this->validation;
}
public function setValidation(?bool $validation): self
{
$this->validation = $validation;
return $this;
}
public function getCommentairesMOE(): ?string
{
return $this->commentairesMOE;
}
public function setCommentairesMOE(?string $commentairesMOE): self
{
$this->commentairesMOE = $commentairesMOE;
return $this;
}
public function getLocalisation(): ?string
{
return $this->localisation;
}
public function setLocalisation(?string $localisation): self
{
$this->localisation = $localisation;
return $this;
}
public function getIdUser(): ?User
{
return $this->idUser;
}
public function setIdUser(?User $idUser): self
{
$this->idUser = $idUser;
return $this;
}
public function getIdProjet(): ?VisaProjets
{
return $this->idProjet;
}
public function setIdProjet(?VisaProjets $idProjet): self
{
$this->idProjet = $idProjet;
return $this;
}
public function getNumeroExigence(): ?float
{
return $this->numeroExigence;
}
public function setNumeroExigence(?float $numeroExigence): self
{
$this->numeroExigence = $numeroExigence;
return $this;
}
public function getLot(): ?string
{
return $this->lot;
}
public function setLot(?string $lot): self
{
$this->lot = $lot;
return $this;
}
public function getSousLot(): ?string
{
return $this->sousLot;
}
public function setSousLot(?string $sousLot): self
{
$this->sousLot = $sousLot;
return $this;
}
public function getCibles(): ?string
{
return $this->cibles;
}
public function setCibles(?string $cibles): self
{
$this->cibles = $cibles;
return $this;
}
public function getElementsConcernes(): ?string
{
return $this->elementsConcernes;
}
public function setElementsConcernes(?string $elementsConcernes): self
{
$this->elementsConcernes = $elementsConcernes;
return $this;
}
public function getExigences(): ?string
{
return $this->exigences;
}
public function setExigences(?string $exigences): self
{
$this->exigences = $exigences;
return $this;
}
public function getCommentairesEntreprise(): ?string
{
return $this->commentairesEntreprise;
}
public function setCommentairesEntreprise(?string $commentairesEntreprise): self
{
$this->commentairesEntreprise = $commentairesEntreprise;
return $this;
}
public function isValidation(): ?bool
{
return $this->validation;
}
public function addVisaJustificatif(VisaJustificatifs $visaJustificatif): self
{
if (!$this->visaJustificatifs->contains($visaJustificatif)) {
$this->visaJustificatifs->add($visaJustificatif);
$visaJustificatif->setExigence($this);
}
return $this;
}
public function removeVisaJustificatif(VisaJustificatifs $visaJustificatif): self
{
if ($this->visaJustificatifs->removeElement($visaJustificatif)) {
// set the owning side to null (unless already changed)
if ($visaJustificatif->getExigence() === $this) {
$visaJustificatif->setExigence(null);
}
}
return $this;
}
}