<?php
namespace App\Entity\Vetoadom;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* Appel
*
* @ORM\Table(name="appel", indexes={@ORM\Index(name="FK_appel_appel_type", columns={"appel_type_id"}), @ORM\Index(name="FK_appel_client", columns={"client_id"}), @ORM\Index(name="FK_appel_secteur", columns={"secteur_id"}), @ORM\Index(name="FK_appel_referant", columns={"referant_id"}), @ORM\Index(name="FK_appel_langue", columns={"langue_id"}), @ORM\Index(name="FK_appel_ville", columns={"ville_id"}), @ORM\Index(name="FK_appel_secteur_zone", columns={"secteur_zone_id"})})
* @ORM\Entity(repositoryClass="App\Repository\Vetoadom\AppelRepository")
* @ORM\HasLifecycleCallbacks()
*/
class Appel
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var int
*
* @ORM\Column(name="regulateur_id", type="integer", nullable=false)
*/
private $regulateurId;
/**
* @var int
*
* @ORM\Column(name="superviseur_id", type="integer", nullable=false)
*/
private $superviseurId;
/**
* @var int|null
*
* @ORM\Column(name="astreinte_chirurgie_id", type="integer", nullable=true)
*/
private $astreinteChirurgieId;
/**
* @var int|null
*
* @ORM\Column(name="vetcoach_id", type="integer", nullable=true)
*/
private $vetcoachId;
/**
* @var int
*
* @ORM\Column(name="saisie_user_id", type="integer", nullable=false)
*/
private $saisieUserId;
/**
* @var string
*
* @ORM\Column(name="motif_appel", type="text", length=65535, nullable=false)
* @Assert\NotBlank(
* groups={"motifAppel"},
* message="common.blank"
* )
* @Assert\Length(
* groups={"motifAppel"},
* max=65535,
* maxMessage="common.too_long"
* )
*/
private $motifAppel;
/**
* @var string|null
*
* @ORM\Column(name="information_interne", type="text", length=65535, nullable=true)
* @Assert\Length(
* groups={"informationInterne"},
* max=65535,
* maxMessage="common.too_long"
* )
*/
private $informationInterne;
/**
* @var bool
*
* @ORM\Column(name="demande_de_nouvelle_faite", type="boolean", nullable=false, options={"default"="0"})
*/
private $demandeDeNouvelleFaite = false;
/**
* @var \DateTime
*
* @ORM\Column(name="date_creation", type="datetime", nullable=false)
*/
private $dateCreation;
/**
* @var \DateTime
*
* @ORM\Column(name="date_modification", type="datetime", nullable=false, options={"default"="CURRENT_TIMESTAMP"})
*/
private $dateModification;
/**
* @var \Langue
*
* @ORM\ManyToOne(targetEntity="Langue")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="langue_id", referencedColumnName="id")
* })
*/
private $langue;
/**
* @var \Secteur
*
* @ORM\ManyToOne(targetEntity="Secteur")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="secteur_id", referencedColumnName="id")
* })
*/
private $secteur;
/**
* @var \AppelType
*
* @ORM\ManyToOne(targetEntity="AppelType")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="appel_type_id", referencedColumnName="id")
* })
*/
private $appelType;
/**
* @var \Client
*
* @ORM\ManyToOne(targetEntity="Client")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="client_id", referencedColumnName="id")
* })
*/
private $client;
/**
* @var \Ville
*
* @ORM\ManyToOne(targetEntity="Ville")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="ville_id", referencedColumnName="id")
* })
*/
private $ville;
/**
* @var \SecteurZone
*
* @ORM\ManyToOne(targetEntity="SecteurZone")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="secteur_zone_id", referencedColumnName="id")
* })
*/
private $secteurZone;
/**
* @var \Referant
*
* @ORM\ManyToOne(targetEntity="Referant")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="referant_id", referencedColumnName="id")
* })
* @Assert\NotBlank(
* groups={"referant"},
* message="common.blank"
* )
*/
private $referant;
public function getId(): ?int
{
return $this->id;
}
public function getRegulateurId(): ?int
{
return $this->regulateurId;
}
public function setRegulateurId(int $regulateurId): self
{
$this->regulateurId = $regulateurId;
return $this;
}
public function getSuperviseurId(): ?int
{
return $this->superviseurId;
}
public function setSuperviseurId(int $superviseurId): self
{
$this->superviseurId = $superviseurId;
return $this;
}
public function getAstreinteChirurgieId(): ?int
{
return $this->astreinteChirurgieId;
}
public function setAstreinteChirurgieId(?int $astreinteChirurgieId): self
{
$this->astreinteChirurgieId = $astreinteChirurgieId;
return $this;
}
public function getVetcoachId(): ?int
{
return $this->vetcoachId;
}
public function setVetcoachId(?int $vetcoachId): self
{
$this->vetcoachId = $vetcoachId;
return $this;
}
public function getSaisieUserId(): ?int
{
return $this->saisieUserId;
}
public function setSaisieUserId(int $saisieUserId): self
{
$this->saisieUserId = $saisieUserId;
return $this;
}
public function getMotifAppel(): ?string
{
return $this->motifAppel;
}
public function setMotifAppel(string $motifAppel): self
{
$this->motifAppel = $motifAppel;
return $this;
}
public function getInformationInterne(): ?string
{
return $this->informationInterne;
}
public function setInformationInterne(?string $informationInterne): self
{
if ($informationInterne === '') $informationInterne = null;
$this->informationInterne = $informationInterne;
return $this;
}
public function getDemandeDeNouvelleFaite(): ?bool
{
return $this->demandeDeNouvelleFaite;
}
public function setDemandeDeNouvelleFaite(bool $demandeDeNouvelleFaite): self
{
$this->demandeDeNouvelleFaite = $demandeDeNouvelleFaite;
return $this;
}
public function getDateCreation(): ?\DateTimeInterface
{
return $this->dateCreation;
}
public function setDateCreation(\DateTimeInterface $dateCreation): self
{
$this->dateCreation = $dateCreation;
return $this;
}
public function getDateModification(): ?\DateTimeInterface
{
return $this->dateModification;
}
public function setDateModification(\DateTimeInterface $dateModification): self
{
$this->dateModification = $dateModification;
return $this;
}
public function getLangue(): ?Langue
{
return $this->langue;
}
public function setLangue(?Langue $langue): self
{
$this->langue = $langue;
return $this;
}
public function getSecteur(): ?Secteur
{
return $this->secteur;
}
public function setSecteur(?Secteur $secteur): self
{
$this->secteur = $secteur;
return $this;
}
public function getAppelType(): ?AppelType
{
return $this->appelType;
}
public function setAppelType(?AppelType $appelType): self
{
$this->appelType = $appelType;
return $this;
}
public function getClient(): ?Client
{
return $this->client;
}
public function setClient(?Client $client): self
{
$this->client = $client;
return $this;
}
public function getVille(): ?Ville
{
return $this->ville;
}
public function setVille(?Ville $ville): self
{
$this->ville = $ville;
return $this;
}
public function getSecteurZone(): ?SecteurZone
{
return $this->secteurZone;
}
public function setSecteurZone(?SecteurZone $secteurZone): self
{
$this->secteurZone = $secteurZone;
return $this;
}
public function getReferant(): ?Referant
{
return $this->referant;
}
public function setReferant(?Referant $referant): self
{
$this->referant = $referant;
return $this;
}
/**
* @ORM\PrePersist
*/
public function setCreatedAtValue()
{
$this->dateCreation = new \DateTimeImmutable();
}
}