<?php
namespace App\Entity;
use App\Repository\ProductionComRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity(repositoryClass=ProductionComRepository::class)
*/
class ProductionCom
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $presentation;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreCaptation;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreClipMusic;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreFilmPeda;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreMagazine;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genrePub;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreReportage;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreTeaser;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreVideo;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $genreAutre;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $genreAutrePrecision;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techAnim;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techDrone;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techRealAug;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techVideo360;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techPriseVueSol;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techVr;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techWeb;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $techAutre;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $techAutrePrecision;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $lienDemo;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $lienAutreProjet;
/**
* @ORM\Column(type="string", length=25, nullable=true)
*/
private $prodCine;
/**
* @ORM\Column(type="string", length=25, nullable=true)
*/
private $prodAudio;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $langueEtrangere;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $langueEtrangerePrecision;
/**
* @ORM\Column(type="string", length=5, nullable=true)
*/
private $recompenseFestival;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $recompenseFestivalPrecision;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $suggestionReseau;
/**
* @ORM\Column(type="datetime")
*/
private $createdAt;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="productionsCom")
* @ORM\JoinColumn(nullable=false)
*/
private $user;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Travaux", mappedBy="productionCom", cascade={"persist"}, orphanRemoval=true)
* @ORM\OrderBy({"annee" = "DESC"})
* @Assert\Valid
*/
private $travaux;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $modifiedAt;
/**
* @ORM\Column(type="string", length=25)
*/
private $statut;
/**
* @ORM\Column(type="datetime")
*/
private $statutDate;
public function __construct()
{
$this->travaux = new ArrayCollection();
$this->statut = 'nouveau';
$this->statutDate = new \DateTime();
}
public function getId(): ?int
{
return $this->id;
}
public function getPresentation(): ?string
{
return $this->presentation;
}
public function setPresentation(?string $presentation): self
{
$this->presentation = $presentation;
return $this;
}
public function getGenreCaptation(): ?bool
{
return $this->genreCaptation;
}
public function setGenreCaptation(?bool $genreCaptation): self
{
$this->genreCaptation = $genreCaptation;
return $this;
}
public function getGenreClipMusic(): ?bool
{
return $this->genreClipMusic;
}
public function setGenreClipMusic(?bool $genreClipMusic): self
{
$this->genreClipMusic = $genreClipMusic;
return $this;
}
public function getGenreFilmPeda(): ?bool
{
return $this->genreFilmPeda;
}
public function setGenreFilmPeda(?bool $genreFilmPeda): self
{
$this->genreFilmPeda = $genreFilmPeda;
return $this;
}
public function getGenreMagazine(): ?bool
{
return $this->genreMagazine;
}
public function setGenreMagazine(?bool $genreMagazine): self
{
$this->genreMagazine = $genreMagazine;
return $this;
}
public function getGenrePub(): ?bool
{
return $this->genrePub;
}
public function setGenrePub(?bool $genrePub): self
{
$this->genrePub = $genrePub;
return $this;
}
public function getGenreReportage(): ?bool
{
return $this->genreReportage;
}
public function setGenreReportage(?bool $genreReportage): self
{
$this->genreReportage = $genreReportage;
return $this;
}
public function getGenreTeaser(): ?bool
{
return $this->genreTeaser;
}
public function setGenreTeaser(?bool $genreTeaser): self
{
$this->genreTeaser = $genreTeaser;
return $this;
}
public function getGenreVideo(): ?bool
{
return $this->genreVideo;
}
public function setGenreVideo(?bool $genreVideo): self
{
$this->genreVideo = $genreVideo;
return $this;
}
public function getGenreAutre(): ?bool
{
return $this->genreAutre;
}
public function setGenreAutre(?bool $genreAutre): self
{
$this->genreAutre = $genreAutre;
return $this;
}
public function getGenreAutrePrecision(): ?string
{
return $this->genreAutrePrecision;
}
public function setGenreAutrePrecision(?string $genreAutrePrecision): self
{
$this->genreAutrePrecision = $genreAutrePrecision;
return $this;
}
public function getTechAnim(): ?bool
{
return $this->techAnim;
}
public function setTechAnim(?bool $techAnim): self
{
$this->techAnim = $techAnim;
return $this;
}
public function getTechDrone(): ?bool
{
return $this->techDrone;
}
public function setTechDrone(?bool $techDrone): self
{
$this->techDrone = $techDrone;
return $this;
}
public function getTechRealAug(): ?bool
{
return $this->techRealAug;
}
public function setTechRealAug(?bool $techRealAug): self
{
$this->techRealAug = $techRealAug;
return $this;
}
public function getTechVideo360(): ?bool
{
return $this->techVideo360;
}
public function setTechVideo360(?bool $techVideo360): self
{
$this->techVideo360 = $techVideo360;
return $this;
}
public function getTechPriseVueSol(): ?bool
{
return $this->techPriseVueSol;
}
public function setTechPriseVueSol(?bool $techPriseVueSol): self
{
$this->techPriseVueSol = $techPriseVueSol;
return $this;
}
public function getTechVr(): ?bool
{
return $this->techVr;
}
public function setTechVr(?bool $techVr): self
{
$this->techVr = $techVr;
return $this;
}
public function getTechWeb(): ?bool
{
return $this->techWeb;
}
public function setTechWeb(?bool $techWeb): self
{
$this->techWeb = $techWeb;
return $this;
}
public function getTechAutre(): ?bool
{
return $this->techAutre;
}
public function setTechAutre(?bool $techAutre): self
{
$this->techAutre = $techAutre;
return $this;
}
public function getTechAutrePrecision(): ?string
{
return $this->techAutrePrecision;
}
public function setTechAutrePrecision(?string $techAutrePrecision): self
{
$this->techAutrePrecision = $techAutrePrecision;
return $this;
}
public function getLienDemo(): ?string
{
return $this->lienDemo;
}
public function setLienDemo(?string $lienDemo): self
{
$this->lienDemo = $lienDemo;
return $this;
}
public function getLienAutreProjet(): ?string
{
return $this->lienAutreProjet;
}
public function setLienAutreProjet(?string $lienAutreProjet): self
{
$this->lienAutreProjet = $lienAutreProjet;
return $this;
}
public function getProdCine(): ?string
{
return $this->prodCine;
}
public function setProdCine(?string $prodCine): self
{
$this->prodCine = $prodCine;
return $this;
}
public function getProdAudio(): ?string
{
return $this->prodAudio;
}
public function setProdAudio(?string $prodAudio): self
{
$this->prodAudio = $prodAudio;
return $this;
}
public function getLangueEtrangere(): ?bool
{
return $this->langueEtrangere;
}
public function setLangueEtrangere(?bool $langueEtrangere): self
{
$this->langueEtrangere = $langueEtrangere;
return $this;
}
public function getLangueEtrangerePrecision(): ?string
{
return $this->langueEtrangerePrecision;
}
public function setLangueEtrangerePrecision(?string $langueEtrangerePrecision): self
{
$this->langueEtrangerePrecision = $langueEtrangerePrecision;
return $this;
}
public function getRecompenseFestival(): ?string
{
return $this->recompenseFestival;
}
public function setRecompenseFestival(?string $recompenseFestival): self
{
$this->recompenseFestival = $recompenseFestival;
return $this;
}
public function getRecompenseFestivalPrecision(): ?string
{
return $this->recompenseFestivalPrecision;
}
public function setRecompenseFestivalPrecision(?string $recompenseFestivalPrecision): self
{
$this->recompenseFestivalPrecision = $recompenseFestivalPrecision;
return $this;
}
public function getSuggestionReseau(): ?string
{
return $this->suggestionReseau;
}
public function setSuggestionReseau(?string $suggestionReseau): self
{
$this->suggestionReseau = $suggestionReseau;
return $this;
}
public function getCreatedAt(): ?\DateTimeInterface
{
return $this->createdAt;
}
public function setCreatedAt(\DateTimeInterface $createdAt): self
{
$this->createdAt = $createdAt;
return $this;
}
public function getUser(): ?User
{
return $this->user;
}
public function setUser(?User $user): self
{
$this->user = $user;
return $this;
}
/**
* @return Collection|Travaux[]
*/
public function getTravaux(): Collection
{
return $this->travaux;
}
public function addTravaux(Travaux $travaux): self
{
if (!$this->travaux->contains($travaux)) {
$this->travaux[] = $travaux;
$travaux->setProductionCom($this);
}
return $this;
}
public function removeTravaux(Travaux $travaux): self
{
if ($this->travaux->contains($travaux)) {
$this->travaux->removeElement($travaux);
// set the owning side to null (unless already changed)
if ($travaux->getProductionCom() === $this) {
$travaux->setProductionCom(null);
}
}
return $this;
}
public function getModifiedAt(): ?\DateTimeInterface
{
return $this->modifiedAt;
}
public function setModifiedAt(\DateTimeInterface $modifiedAt = null): self
{
$this->modifiedAt = $modifiedAt;
return $this;
}
public function getStatut(): ?string
{
return $this->statut;
}
public function setStatut(string $statut): self
{
$this->statut = $statut;
return $this;
}
public function getStatutDate(): ?\DateTimeInterface
{
return $this->statutDate;
}
public function setStatutDate(\DateTimeInterface $statutDate): self
{
$this->statutDate = $statutDate;
return $this;
}
}