src/Entity/Transporteur.php line 19

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\{UserCountry};
  4. use App\Repository\TransporteurRepository;
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\Common\Collections\Collection;
  7. use Doctrine\DBAL\Types\Types;
  8. use Doctrine\ORM\Mapping as ORM;
  9. use Symfony\Component\Validator\Constraints as Assert;
  10. use Symfony\Component\HttpFoundation\File\UploadedFile;
  11. use Symfony\Component\Security\Core\User\UserInterface;
  12. use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface;
  13. /**
  14.  * @ORM\Entity(repositoryClass=TransporteurRepository::class)
  15.  */
  16. class Transporteur 
  17. {
  18.     /**
  19.      * @ORM\Id
  20.      * @ORM\GeneratedValue
  21.      * @ORM\Column(type="integer")
  22.      */
  23.     private $id;
  24.     /**
  25.      * @ORM\OneToOne(targetEntity=User::class, inversedBy="transporteur", cascade={"remove"})
  26.      * @ORM\JoinColumn(nullable=true)
  27.      */
  28.     private $user;
  29.     /**
  30.      * @ORM\ManyToMany(targetEntity=Collaborateur::class, inversedBy="transporteurs")
  31.      */
  32.     private $collaborateurs;
  33.     /**
  34.      * @ORM\Column(type="text", nullable=true)
  35.      */
  36.     private $aboutUs;
  37.     /**
  38.      * @ORM\Column(type="string", length=14, nullable=true)
  39.      */
  40.     private $siret;
  41.     /**
  42.      * @ORM\Column(type="string", length=255, nullable=true)
  43.      */
  44.     private $socialDenomination;
  45.     /**
  46.      * @ORM\Column(type="string", length=255, nullable=true)
  47.      */
  48.     private $tva;
  49.     /**
  50.      * @ORM\Column(type="string", length=255, nullable=true)
  51.      */
  52.     private $typePersonne;
  53.     /**
  54.      * @ORM\Column(type="string", length=255, nullable=true)
  55.      */
  56.     private $otherFunction;
  57.     /**
  58.      * @ORM\Column(type="datetime", nullable=true)
  59.      */
  60.     private $birthday;
  61.     /**
  62.      * @ORM\Column(type="string", length=255, nullable=true)
  63.      */
  64.     private $birthplace;
  65.     /**
  66.      * @ORM\Column(type="string", length=20, nullable=true)
  67.      */
  68.     private $mobilePhone;
  69.     /**
  70.      * @ORM\Column(type="string", length=20, nullable=true)
  71.      */
  72.     private $landlinePhone;
  73.     /**
  74.      * @ORM\Column(type="string", length=255, nullable=true)
  75.      */
  76.     private $address;
  77.     /**
  78.      * @ORM\Column(type="string", length=255, nullable=true)
  79.      */
  80.     private $address1;
  81.     /**
  82.      * @ORM\Column(type="string", length=255, nullable=true)
  83.      */
  84.     private $postalCode;
  85.     /**
  86.      * @ORM\Column(type="string", length=255, nullable=true)
  87.      */
  88.     private $city;
  89.     /**
  90.      * @ORM\ManyToOne(targetEntity=Country::class, inversedBy="transporteurs")
  91.      * @ORM\JoinColumn(nullable=true)
  92.      */
  93.     private $country;
  94.     /**
  95.      * @ORM\Column(type="string", length=255, nullable=true)
  96.      */
  97.     private $longitude;
  98.     /**
  99.      * @ORM\Column(type="string", length=255, nullable=true)
  100.      */
  101.     private $latitude;
  102.     /**
  103.      * @ORM\Column(type="string", length=255, nullable=true)
  104.      */
  105.     private $cover;
  106.     /**
  107.      * @Assert\Image(maxSize="2M")
  108.      */
  109.     private $fileCover;
  110.     /**
  111.      * @ORM\OneToOne(targetEntity=PieceJustificative::class, inversedBy="transporteur", cascade={"persist", "remove"})
  112.      * @ORM\JoinColumn(nullable=true)
  113.      */
  114.     private $pieceJustificative;
  115.     /**
  116.      * @ORM\Column(type="string", length=20, nullable=true)
  117.      */
  118.     private $confirmationToken;
  119.     /**
  120.      * @ORM\Column(type="datetime", nullable=true)
  121.      */
  122.     private $confirmationTokenCreatedAt;
  123.     /**
  124.      * @ORM\Column(type="string", length=255, nullable=true)
  125.      */
  126.     private $expirationToken;
  127.     /**
  128.      * @ORM\Column(type="boolean", nullable=true)
  129.      */
  130.     private $agreeTerms;
  131.     /**
  132.      * @ORM\OneToMany(targetEntity=Park::class, mappedBy="transporteur", cascade={"remove"})
  133.      */
  134.     private $parks;
  135.     
  136.     /**
  137.      * @ORM\OneToMany(targetEntity=Brand::class, mappedBy="transporteur", cascade={"remove"})
  138.      */
  139.     private $brands;
  140.     /**
  141.      * @ORM\OneToMany(targetEntity=VehicleType::class, mappedBy="transporteur", cascade={"remove"})
  142.      */
  143.     private $vehicleTypes;
  144.     /**
  145.      * @ORM\OneToMany(targetEntity=VehicleGroup::class, mappedBy="transporteur", cascade={"remove"})
  146.      */
  147.     private $vehicleGroups;
  148.     /**
  149.      * @ORM\OneToMany(targetEntity=Vehicle::class, mappedBy="transporteur", cascade={"remove"})
  150.      */
  151.     private $vehicles;
  152.     /**
  153.      * @ORM\OneToMany(targetEntity=Acquisition::class, mappedBy="transporteur", cascade={"remove"})
  154.      */
  155.     private $acquisitions;
  156.     /**
  157.      * @ORM\OneToMany(targetEntity=Assurance::class, mappedBy="transporteur", cascade={"remove"})
  158.      */
  159.     private $assurances;
  160.     /**
  161.      * @ORM\OneToMany(targetEntity=ControleTechnique::class, mappedBy="transporteur", cascade={"remove"})
  162.      */
  163.     private $controleTechniques;
  164.     /**
  165.      * @ORM\OneToMany(targetEntity=ControleTachygraphe::class, mappedBy="transporteur", cascade={"remove"})
  166.      */
  167.     private $controleTachygraphes;
  168.     /**
  169.      * @ORM\OneToMany(targetEntity=ControleLimiteurVitesse::class, mappedBy="transporteur", cascade={"remove"})
  170.      */
  171.     private $controleLimiteurVitesses;
  172.     /**
  173.      * @ORM\OneToMany(targetEntity=DocumentDriver::class, mappedBy="transporteur", cascade={"remove"})
  174.      */
  175.     private $documentDrivers;
  176.     /**
  177.      * @ORM\OneToMany(targetEntity=Carburant::class, mappedBy="transporteur", cascade={"remove"})
  178.      */
  179.     private $carburants;
  180.     /**
  181.      * @ORM\ManyToOne(targetEntity=Department::class, inversedBy="transporteurs")
  182.      */
  183.     private $department;
  184.     /**
  185.      * @ORM\ManyToMany(targetEntity="ProfessionalType", inversedBy="transporteurs")
  186.      * @ORM\JoinTable(name="transporteur_professional_type")
  187.      */
  188.     private $professionalType;
  189.     
  190.     public function __construct()
  191.     {
  192.         $this->confirmationToken $this->strToken(20);
  193.         $this->collaborateurs = new ArrayCollection();
  194.         $this->parks = new ArrayCollection();
  195.         $this->brands = new ArrayCollection();
  196.         $this->vehicleTypes = new ArrayCollection();
  197.         $this->vehicleGroups = new ArrayCollection();
  198.         $this->vehicles = new ArrayCollection();
  199.         $this->acquisitions = new ArrayCollection();
  200.         $this->assurances = new ArrayCollection();
  201.         $this->controleTechniques = new ArrayCollection();
  202.         $this->controleTachygraphes = new ArrayCollection();
  203.         $this->controleLimiteurVitesses = new ArrayCollection();
  204.         $this->documentDrivers = new ArrayCollection();
  205.         $this->carburants = new ArrayCollection();
  206.         $this->professionalType = new ArrayCollection();
  207.     }
  208.     public function StrToken($length)
  209.     {
  210.       $alpha "0123456789azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN-_";
  211.       return substr(str_shuffle(str_repeat($alpha$length)), 0$length);
  212.     }
  213.     public function getId(): ?int
  214.     {
  215.         return $this->id;
  216.     }
  217.     public function getUser(): ?User
  218.     {
  219.         return $this->user;
  220.     }
  221.     public function setUser(?User $user): self
  222.     {
  223.         $this->user $user;
  224.         return $this;
  225.     }
  226.     /**
  227.      * @return Collection<int, Collaborateur>
  228.      */
  229.     public function getCollaborateurs(): Collection
  230.     {
  231.         return $this->collaborateurs;
  232.     }
  233.     public function addCollaborateur(Collaborateur $collaborateur): self
  234.     {
  235.         if (!$this->collaborateurs->contains($collaborateur)) {
  236.             $this->collaborateurs[] = $collaborateur;
  237.         }
  238.         return $this;
  239.     }
  240.     public function removeCollaborateur(Collaborateur $collaborateur): self
  241.     {
  242.         $this->collaborateurs->removeElement($collaborateur);
  243.         return $this;
  244.     }
  245.         
  246.     public function getAboutUs(): ?string
  247.     {
  248.         return $this->aboutUs;
  249.     }
  250.     public function setAboutUs(?string $aboutUs): self
  251.     {
  252.         $this->aboutUs $aboutUs;
  253.         return $this;
  254.     }
  255.     public function getSiret(): ?string
  256.     {
  257.         return $this->siret;
  258.     }
  259.     public function setSiret(string $siret): self
  260.     {
  261.         $this->siret $siret;
  262.         return $this;
  263.     }
  264.     public function getSocialDenomination(): ?string
  265.     {
  266.         return $this->socialDenomination;
  267.     }
  268.     public function setSocialDenomination(string $socialDenomination): self
  269.     {
  270.         $this->socialDenomination $socialDenomination;
  271.         return $this;
  272.     }
  273.     public function getTva(): ?string
  274.     {
  275.         return $this->tva;
  276.     }
  277.     public function setTva(?string $tva): self
  278.     {
  279.         $this->tva $tva;
  280.         return $this;
  281.     }
  282.     public function getTypePersonne(): ?string
  283.     {
  284.         return $this->typePersonne;
  285.     }
  286.     public function setTypePersonne(string $typePersonne): self
  287.     {
  288.         $this->typePersonne $typePersonne;
  289.         return $this;
  290.     }
  291.     public function getOtherFunction(): ?string
  292.     {
  293.         return $this->otherFunction;
  294.     }
  295.     public function setOtherFunction(?string $otherFunction): self
  296.     {
  297.         $this->otherFunction $otherFunction;
  298.         return $this;
  299.     }
  300.     public function getBirthday(): ?\DateTimeInterface
  301.     {
  302.         return $this->birthday;
  303.     }
  304.     public function setBirthday(\DateTimeInterface $birthday): self
  305.     {
  306.         $this->birthday $birthday;
  307.         return $this;
  308.     }
  309.     public function getBirthplace(): ?string
  310.     {
  311.         return $this->birthplace;
  312.     }
  313.     public function setBirthplace(?string $birthplace): self
  314.     {
  315.         $this->birthplace $birthplace;
  316.         return $this;
  317.     }
  318.     public function getMobilePhone(): ?string
  319.     {
  320.         return $this->mobilePhone;
  321.     }
  322.     public function setMobilePhone(?string $mobilePhone): self
  323.     {
  324.         $this->mobilePhone $mobilePhone;
  325.         return $this;
  326.     }
  327.     public function getLandlinePhone(): ?string
  328.     {
  329.         return $this->landlinePhone;
  330.     }
  331.     public function setLandlinePhone(?string $landlinePhone): self
  332.     {
  333.         $this->landlinePhone $landlinePhone;
  334.         return $this;
  335.     }
  336.     public function getAddress(): ?string
  337.     {
  338.         return $this->address;
  339.     }
  340.     public function setAddress(string $address): self
  341.     {
  342.         $this->address $address;
  343.         return $this;
  344.     }
  345.     public function getAddress1(): ?string
  346.     {
  347.         return $this->address1;
  348.     }
  349.     public function setAddress1(?string $address1): self
  350.     {
  351.         $this->address1 $address1;
  352.         return $this;
  353.     }
  354.     public function getPostalCode(): ?string
  355.     {
  356.         return $this->postalCode;
  357.     }
  358.     public function setPostalCode(?string $postalCode): self
  359.     {
  360.         $this->postalCode $postalCode;
  361.         return $this;
  362.     }
  363.     public function getCity(): ?string
  364.     {
  365.         return $this->city;
  366.     }
  367.     public function setCity(?string $city): self
  368.     {
  369.         $this->city $city;
  370.         return $this;
  371.     }
  372.     public function getCountry(): ?Country
  373.     {
  374.         return $this->country;
  375.     }
  376.     public function setCountry(?Country $country): self
  377.     {
  378.         $this->country $country;
  379.         return $this;
  380.     }
  381.     public function getLongitude(): ?string
  382.     {
  383.         return $this->longitude;
  384.     }
  385.     public function setLongitude(?string $longitude): self
  386.     {
  387.         $this->longitude $longitude;
  388.         return $this;
  389.     }
  390.     public function getLatitude(): ?string
  391.     {
  392.         return $this->latitude;
  393.     }
  394.     public function setLatitude(?string $latitude): self
  395.     {
  396.         $this->latitude $latitude;
  397.         return $this;
  398.     }
  399.     public function getCover(): ?string
  400.     {
  401.         return $this->cover;
  402.     }
  403.     public function setCover(?string $cover): self
  404.     {
  405.         $this->cover $cover;
  406.         return $this;
  407.     }
  408.     public function getFileCover()
  409.     {
  410.         return $this->fileCover;
  411.     }
  412.     public function setFileCover($fileCover)
  413.     {
  414.         $this->fileCover $fileCover;
  415.         return $this;
  416.     }
  417.     public function getPieceJustificative(): ?PieceJustificative
  418.     {
  419.         return $this->pieceJustificative;
  420.     }
  421.     public function setPieceJustificative(?PieceJustificative $pieceJustificative): self
  422.     {
  423.         $this->pieceJustificative $pieceJustificative;
  424.         return $this;
  425.     }
  426.     public function getConfirmationToken(): ?string
  427.     {
  428.         return $this->confirmationToken;
  429.     }
  430.     public function setConfirmationToken(?string $confirmationToken): self
  431.     {
  432.         $this->confirmationToken $confirmationToken;
  433.         return $this;
  434.     }
  435.     public function getConfirmationTokenCreatedAt(): ?\DateTimeInterface
  436.     {
  437.         return $this->confirmationTokenCreatedAt;
  438.     }
  439.     public function setConfirmationTokenCreatedAt(?\DateTimeInterface $confirmationTokenCreatedAt): self
  440.     {
  441.         $this->confirmationTokenCreatedAt $confirmationTokenCreatedAt;
  442.         return $this;
  443.     }
  444.     public function getExpirationToken(): ?string
  445.     {
  446.         return $this->expirationToken;
  447.     }
  448.     public function setExpirationToken(?string $expirationToken): self
  449.     {
  450.         $this->expirationToken $expirationToken;
  451.         return $this;
  452.     }
  453.     public function isAgreeTerms(): ?bool
  454.     {
  455.         return $this->agreeTerms;
  456.     }
  457.     public function setAgreeTerms(bool $agreeTerms): self
  458.     {
  459.         $this->agreeTerms $agreeTerms;
  460.         return $this;
  461.     }
  462.     /**
  463.      * @return Collection<int, Park>
  464.      */
  465.     public function getParks(): Collection
  466.     {
  467.         return $this->parks;
  468.     }
  469.     public function addPark(Park $park): self
  470.     {
  471.         if (!$this->parks->contains($park)) {
  472.             $this->parks[] = $park;
  473.             $park->setTransporteur($this);
  474.         }
  475.         return $this;
  476.     }
  477.     public function removePark(Park $park): self
  478.     {
  479.         if ($this->parks->removeElement($park)) {
  480.             // set the owning side to null (unless already changed)
  481.             if ($park->getTransporteur() === $this) {
  482.                 $park->setTransporteur(null);
  483.             }
  484.         }
  485.         return $this;
  486.     }
  487.     /**
  488.      * @return Collection<int, Brand>
  489.      */
  490.     public function getBrands(): Collection
  491.     {
  492.         return $this->brands;
  493.     }
  494.     public function addBrand(Brand $brand): self
  495.     {
  496.         if (!$this->brands->contains($brand)) {
  497.             $this->brands[] = $brand;
  498.             $brand->setTransporteur($this);
  499.         }
  500.         return $this;
  501.     }
  502.     public function removeBrand(Brand $brand): self
  503.     {
  504.         if ($this->brands->removeElement($brand)) {
  505.             // set the owning side to null (unless already changed)
  506.             if ($brand->getTransporteur() === $this) {
  507.                 $brand->setTransporteur(null);
  508.             }
  509.         }
  510.         return $this;
  511.     }
  512.     /**
  513.      * @return Collection<int, VehicleType>
  514.      */
  515.     public function getVehicleTypes(): Collection
  516.     {
  517.         return $this->vehicleTypes;
  518.     }
  519.     public function addVehicleType(VehicleType $vehicleType): self
  520.     {
  521.         if (!$this->vehicleTypes->contains($vehicleType)) {
  522.             $this->vehicleTypes[] = $vehicleType;
  523.             $vehicleType->setTransporteur($this);
  524.         }
  525.         return $this;
  526.     }
  527.     public function removeVehicleType(VehicleType $vehicleType): self
  528.     {
  529.         if ($this->vehicleTypes->removeElement($vehicleType)) {
  530.             // set the owning side to null (unless already changed)
  531.             if ($vehicleType->getTransporteur() === $this) {
  532.                 $vehicleType->setTransporteur(null);
  533.             }
  534.         }
  535.         return $this;
  536.     }
  537.     /**
  538.      * @return Collection<int, VehicleGroup>
  539.      */
  540.     public function getVehicleGroups(): Collection
  541.     {
  542.         return $this->vehicleGroups;
  543.     }
  544.     public function addVehicleGroup(VehicleGroup $vehicleGroup): self
  545.     {
  546.         if (!$this->vehicleGroups->contains($vehicleGroup)) {
  547.             $this->vehicleGroups[] = $vehicleGroup;
  548.             $vehicleGroup->setTransporteur($this);
  549.         }
  550.         return $this;
  551.     }
  552.     public function removeVehicleGroup(VehicleGroup $vehicleGroup): self
  553.     {
  554.         if ($this->vehicleGroups->removeElement($vehicleGroup)) {
  555.             // set the owning side to null (unless already changed)
  556.             if ($vehicleGroup->getTransporteur() === $this) {
  557.                 $vehicleGroup->setTransporteur(null);
  558.             }
  559.         }
  560.         return $this;
  561.     }
  562.     /**
  563.      * @return Collection<int, Vehicle>
  564.      */
  565.     public function getVehicles(): Collection
  566.     {
  567.         return $this->vehicles;
  568.     }
  569.     public function addVehicle(Vehicle $vehicle): self
  570.     {
  571.         if (!$this->vehicles->contains($vehicle)) {
  572.             $this->vehicles[] = $vehicle;
  573.             $vehicle->setTransporteur($this);
  574.         }
  575.         return $this;
  576.     }
  577.     public function removeVehicle(Vehicle $vehicle): self
  578.     {
  579.         if ($this->vehicles->removeElement($vehicle)) {
  580.             // set the owning side to null (unless already changed)
  581.             if ($vehicle->getTransporteur() === $this) {
  582.                 $vehicle->setTransporteur(null);
  583.             }
  584.         }
  585.         return $this;
  586.     }
  587.     /**
  588.      * @return Collection<int, Acquisition>
  589.      */
  590.     public function getAcquisitions(): Collection
  591.     {
  592.         return $this->acquisitions;
  593.     }
  594.     public function addAcquisition(Acquisition $acquisition): self
  595.     {
  596.         if (!$this->acquisitions->contains($acquisition)) {
  597.             $this->acquisitions[] = $acquisition;
  598.             $acquisition->setTransporteur($this);
  599.         }
  600.         return $this;
  601.     }
  602.     public function removeAcquisition(Acquisition $acquisition): self
  603.     {
  604.         if ($this->acquisitions->removeElement($acquisition)) {
  605.             // set the owning side to null (unless already changed)
  606.             if ($acquisition->getTransporteur() === $this) {
  607.                 $acquisition->setTransporteur(null);
  608.             }
  609.         }
  610.         return $this;
  611.     }
  612.     /**
  613.      * @return Collection<int, Assurance>
  614.      */
  615.     public function getAssurances(): Collection
  616.     {
  617.         return $this->assurances;
  618.     }
  619.     public function addAssurance(Assurance $assurance): self
  620.     {
  621.         if (!$this->assurances->contains($assurance)) {
  622.             $this->assurances[] = $assurance;
  623.             $assurance->setTransporteur($this);
  624.         }
  625.         return $this;
  626.     }
  627.     public function removeAssurance(Assurance $assurance): self
  628.     {
  629.         if ($this->assurances->removeElement($assurance)) {
  630.             // set the owning side to null (unless already changed)
  631.             if ($assurance->getTransporteur() === $this) {
  632.                 $assurance->setTransporteur(null);
  633.             }
  634.         }
  635.         return $this;
  636.     }
  637.     /**
  638.      * @return Collection|Vehicles[]
  639.      */
  640.     public function getNonArchivedVehicles()
  641.     {
  642.         return $this->vehicles->filter(function ($vehicle) {
  643.             return $vehicle->isArchive() === false;
  644.         });
  645.     }
  646.     /**
  647.      * @return Collection|Vehicles[]
  648.      */
  649.     public function getArchivedVehicles()
  650.     {
  651.         return $this->vehicles->filter(function ($vehicle) {
  652.             return $vehicle->isArchive() === true;
  653.         });
  654.     }
  655.     /**
  656.      * @return Collection<int, ControleTechnique>
  657.      */
  658.     public function getControleTechniques(): Collection
  659.     {
  660.         return $this->controleTechniques;
  661.     }
  662.     public function addControleTechnique(ControleTechnique $controleTechnique): self
  663.     {
  664.         if (!$this->controleTechniques->contains($controleTechnique)) {
  665.             $this->controleTechniques[] = $controleTechnique;
  666.             $controleTechnique->setTransporteur($this);
  667.         }
  668.         return $this;
  669.     }
  670.     public function removeControleTechnique(ControleTechnique $controleTechnique): self
  671.     {
  672.         if ($this->controleTechniques->removeElement($controleTechnique)) {
  673.             // set the owning side to null (unless already changed)
  674.             if ($controleTechnique->getTransporteur() === $this) {
  675.                 $controleTechnique->setTransporteur(null);
  676.             }
  677.         }
  678.         return $this;
  679.     }
  680.     /**
  681.      * @return Collection<int, ControleTachygraphe>
  682.      */
  683.     public function getControleTachygraphes(): Collection
  684.     {
  685.         return $this->controleTachygraphes;
  686.     }
  687.     public function addControleTachygraphe(ControleTachygraphe $controleTachygraphe): self
  688.     {
  689.         if (!$this->controleTachygraphes->contains($controleTachygraphe)) {
  690.             $this->controleTachygraphes[] = $controleTachygraphe;
  691.             $controleTachygraphe->setTransporteur($this);
  692.         }
  693.         return $this;
  694.     }
  695.     public function removeControleTachygraphe(ControleTachygraphe $controleTachygraphe): self
  696.     {
  697.         if ($this->controleTachygraphes->removeElement($controleTachygraphe)) {
  698.             // set the owning side to null (unless already changed)
  699.             if ($controleTachygraphe->getTransporteur() === $this) {
  700.                 $controleTachygraphe->setTransporteur(null);
  701.             }
  702.         }
  703.         return $this;
  704.     }
  705.     /**
  706.      * @return Collection<int, ControleLimiteurVitesse>
  707.      */
  708.     public function getControleLimiteurVitesses(): Collection
  709.     {
  710.         return $this->controleLimiteurVitesses;
  711.     }
  712.     public function addControleLimiteurVitess(ControleLimiteurVitesse $controleLimiteurVitess): self
  713.     {
  714.         if (!$this->controleLimiteurVitesses->contains($controleLimiteurVitess)) {
  715.             $this->controleLimiteurVitesses[] = $controleLimiteurVitess;
  716.             $controleLimiteurVitess->setTransporteur($this);
  717.         }
  718.         return $this;
  719.     }
  720.     public function removeControleLimiteurVitess(ControleLimiteurVitesse $controleLimiteurVitess): self
  721.     {
  722.         if ($this->controleLimiteurVitesses->removeElement($controleLimiteurVitess)) {
  723.             // set the owning side to null (unless already changed)
  724.             if ($controleLimiteurVitess->getTransporteur() === $this) {
  725.                 $controleLimiteurVitess->setTransporteur(null);
  726.             }
  727.         }
  728.         return $this;
  729.     }
  730.     /**
  731.      * @return Collection<int, DocumentDriver>
  732.      */
  733.     public function getDocumentDrivers(): Collection
  734.     {
  735.         return $this->documentDrivers;
  736.     }
  737.     public function addDocumentDriver(DocumentDriver $documentDriver): self
  738.     {
  739.         if (!$this->documentDrivers->contains($documentDriver)) {
  740.             $this->documentDrivers[] = $documentDriver;
  741.             $documentDriver->setTransporteur($this);
  742.         }
  743.         return $this;
  744.     }
  745.     public function removeDocumentDriver(DocumentDriver $documentDriver): self
  746.     {
  747.         if ($this->documentDrivers->removeElement($documentDriver)) {
  748.             // set the owning side to null (unless already changed)
  749.             if ($documentDriver->getTransporteur() === $this) {
  750.                 $documentDriver->setTransporteur(null);
  751.             }
  752.         }
  753.         return $this;
  754.     }
  755.     /**
  756.      * @return Collection<int, Carburant>
  757.      */
  758.     public function getCarburants(): Collection
  759.     {
  760.         return $this->carburants;
  761.     }
  762.     public function addCarburant(Carburant $carburant): self
  763.     {
  764.         if (!$this->carburants->contains($carburant)) {
  765.             $this->carburants[] = $carburant;
  766.             $carburant->setTransporteur($this);
  767.         }
  768.         return $this;
  769.     }
  770.     public function removeCarburant(Carburant $carburant): self
  771.     {
  772.         if ($this->carburants->removeElement($carburant)) {
  773.             // set the owning side to null (unless already changed)
  774.             if ($carburant->getTransporteur() === $this) {
  775.                 $carburant->setTransporteur(null);
  776.             }
  777.         }
  778.         return $this;
  779.     }
  780.     public function getDepartment(): ?Department
  781.     {
  782.         return $this->department;
  783.     }
  784.     public function setDepartment(?Department $department): self
  785.     {
  786.         $this->department $department;
  787.         return $this;
  788.     }
  789.     /**
  790.      * @return Collection<int, ProfessionalType>
  791.      */
  792.     public function getProfessionalType(): Collection
  793.     {
  794.         return $this->professionalType;
  795.     }
  796.     public function addProfessionalType(ProfessionalType $professionalType): self
  797.     {
  798.         if (!$this->professionalType->contains($professionalType)) {
  799.             $this->professionalType[] = $professionalType;
  800.         }
  801.         return $this;
  802.     }
  803.     public function removeProfessionalType(ProfessionalType $professionalType): self
  804.     {
  805.         $this->professionalType->removeElement($professionalType);
  806.         return $this;
  807.     }
  808. }