src/Entity/Vehicle.php line 38

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Traits\Owner;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use App\Entity\Traits\Timestampable;
  6. use App\Repository\VehicleRepository;
  7. use Doctrine\Common\Collections\Collection;
  8. use ApiPlatform\Core\Annotation\ApiResource;
  9. use Doctrine\Common\Collections\ArrayCollection;
  10. use Symfony\Component\Serializer\Annotation\Groups;
  11. use ApiPlatform\Core\Annotation\ApiFilter;
  12. use ApiPlatform\Core\Bridge\Doctrine\Orm\Filter\SearchFilter;
  13. use ApiPlatform\Core\Annotation\ApiProperty;
  14. /**
  15.  * @Vich\Uploadable
  16.  */
  17. #[ORM\Entity(repositoryClass: VehicleRepository::class)]
  18. #[ORM\HasLifecycleCallbacks]
  19. #[ApiFilter(SearchFilter::class, properties: ['id' => 'exact', 'company' => 'exact', 'users' => 'exact'])]
  20. /**
  21. *
  22. * @ApiResource(
  23. *     collectionOperations={"get"={"normalization_context"={"groups"={"Vehicle:list"}}},
  24. *                           "post"={"normalization_context"={"groups"={"Vehicle:list"}}}},
  25. *     itemOperations={"get"={"normalization_context"={"groups"={"Vehicle:item","timestampable"}}},
  26.                       "put"={"normalization_context"={"groups"={"Vehicle:item","timestampable"}}},
  27.                       "delete"={"normalization_context"={"groups"={"Vehicle:item","timestampable"}}}},
  28. *     order={"name"="ASC"},
  29. *     paginationEnabled=false
  30. * ) 
  31. */
  32. class Vehicle
  33. {
  34.     use Timestampable;
  35.     use Owner;
  36.     #[ORM\Id]
  37.     #[ORM\GeneratedValue]
  38.     #[ORM\Column(type: 'integer')]
  39.     #[Groups(['Vehicle:list', 'Vehicle:item','User:item'])]
  40.     private $id;
  41.     #[ORM\Column(type: 'string', length: 255)]
  42.     #[Groups(['Vehicle:list', 'Vehicle:item','User:item'])]
  43.     private $name;
  44.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  45.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  46.     private $make;
  47.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  48.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  49.     private $model;
  50.     #[ORM\Column(type: 'string', length: 10, nullable: true)]
  51.     #[Groups(['Vehicle:list', 'Vehicle:item','User:item'])]
  52.     private $registrationNumber;
  53.     #[ORM\Column(type: 'string', length: 50, nullable: true)]
  54.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  55.     private $vin;
  56.     #[ORM\Column(type: 'date', nullable: true)]
  57.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  58.     private $reviewDate;
  59.     #[ORM\Column(type: 'date', nullable: true)]
  60.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  61.     private $insuranceDate;
  62.     #[ORM\Column(type: 'string', length: 50, nullable: true)]
  63.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  64.     private $engine;
  65.     #[ORM\Column(type: 'integer', nullable: true)]
  66.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  67.     private $mileage;
  68.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  69.     #[Groups(['Vehicle:item'])]
  70.     private $fuelCardId;
  71.     #[ORM\Column(type: 'integer', nullable: true)]
  72.     #[Groups(['Vehicle:item'])]
  73.     private $fuelCardPin;
  74.     #[ORM\ManyToOne(targetEntity: Company::class, inversedBy: 'vehicles')]
  75.     #[ORM\JoinColumn(nullable: false)]
  76.     #[Groups(['Vehicle:list', 'Vehicle:item', 'Company:id'])]
  77.     private $company;
  78.     #[ORM\ManyToOne(targetEntity: VehicleKind::class, inversedBy: 'vehicles')]
  79.     #[ORM\JoinColumn(nullable: false)]
  80.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  81.     private $vehicleKind;
  82.     #[ORM\ManyToOne(targetEntity: UseType::class, inversedBy: 'vehicles')]
  83.     #[ORM\JoinColumn(nullable: false)]
  84.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  85.     private $useType;
  86.    
  87.     #[ORM\ManyToMany(targetEntity: FuelType::class, inversedBy: 'vehicles')]
  88.     #[Groups(['Vehicle:item', 'Vehicle:list'])]
  89.     private $fuelType;
  90.     #[ORM\OneToMany(mappedBy: 'vehicle', targetEntity: Event::class, orphanRemoval: true)]
  91.     #[Groups(['Vehicle:item'])]
  92.     private $events;
  93.     #[ORM\ManyToMany(targetEntity: User::class, inversedBy: 'vehicles')]
  94.     #[Groups(['Vehicle:item'])]
  95.     private $users;
  96.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  97.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  98.     private $lessee;
  99.     #[ORM\ManyToOne(targetEntity: VehicleStatus::class)]
  100.     #[ORM\JoinColumn(nullable: true)]
  101.     #[Groups(['Vehicle:list', 'Vehicle:item'])]
  102.     private $status;
  103.     #[ORM\ManyToOne(targetEntity: Tyres::class)]
  104.     #[Groups(['Vehicle:list','Vehicle:item'])]
  105.     private $tirePlType;
  106.     #[ORM\ManyToOne(targetEntity: Tyres::class)]
  107.     #[Groups(['Vehicle:list','Vehicle:item'])]
  108.     private $tirePpType;
  109.     #[ORM\ManyToOne(targetEntity: Tyres::class)]
  110.     #[Groups(['Vehicle:list','Vehicle:item'])]
  111.     private $tireLlType;
  112.     #[ORM\ManyToOne(targetEntity: Tyres::class)]
  113.     #[Groups(['Vehicle:list','Vehicle:item'])]
  114.     private $tireLpType;
  115.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  116.     #[Groups(['Vehicle:item'])]
  117.     private $tirePlName;
  118.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  119.     #[Groups(['Vehicle:item'])]
  120.     private $tirePpName;
  121.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  122.     #[Groups(['Vehicle:item'])]
  123.     private $tireLlName;
  124.     #[ORM\Column(type: 'string', length: 255, nullable: true)]
  125.     #[Groups(['Vehicle:item'])]
  126.     private $tireLpName;
  127.     #[ORM\Column(type: 'integer', nullable: true)]
  128.     #[Groups(['Vehicle:item'])]
  129.     private $tirePlProduction;
  130.     #[ORM\Column(type: 'integer', nullable: true)]
  131.     #[Groups(['Vehicle:item'])]
  132.     private $tirePpProduction;
  133.     #[ORM\Column(type: 'integer', nullable: true)]
  134.     #[Groups(['Vehicle:item'])]
  135.     private $tireLlProduction;
  136.     #[ORM\Column(type: 'integer', nullable: true)]
  137.     #[Groups(['Vehicle:item'])]
  138.     private $tireLpProduction;
  139.     #[ORM\Column(type: 'integer', nullable: true)]
  140.     #[Groups(['Vehicle:item'])]
  141.     private $tirePlWidth;
  142.     #[ORM\Column(type: 'integer', nullable: true)]
  143.     #[Groups(['Vehicle:item'])]
  144.     private $tirePlRatio;
  145.     #[ORM\Column(type: 'integer', nullable: true)]
  146.     #[Groups(['Vehicle:item'])]
  147.     private $tirePlRim;
  148.     #[ORM\Column(type: 'integer', nullable: true)]
  149.     #[Groups(['Vehicle:item'])]
  150.     private $tirePpWidth;
  151.     #[ORM\Column(type: 'integer', nullable: true)]
  152.     #[Groups(['Vehicle:item'])]
  153.     private $tirePpRatio;
  154.     #[ORM\Column(type: 'integer', nullable: true)]
  155.     #[Groups(['Vehicle:item'])]
  156.     private $tirePpRim;
  157.     #[ORM\Column(type: 'integer', nullable: true)]
  158.     #[Groups(['Vehicle:item'])]
  159.     private $tireLlWidth;
  160.     #[ORM\Column(type: 'integer', nullable: true)]
  161.     #[Groups(['Vehicle:item'])]
  162.     private $tireLlRatio;
  163.     #[ORM\Column(type: 'integer', nullable: true)]
  164.     #[Groups(['Vehicle:item'])]
  165.     private $tireLlRim;
  166.     #[ORM\Column(type: 'integer', nullable: true)]
  167.     #[Groups(['Vehicle:item'])]
  168.     private $tireLpWidth;
  169.     #[ORM\Column(type: 'integer', nullable: true)]
  170.     #[Groups(['Vehicle:item'])]
  171.     private $tireLpRatio;
  172.     #[ORM\Column(type: 'integer', nullable: true)]
  173.     #[Groups(['Vehicle:item'])]
  174.     private $tireLpRim;
  175.     #[ORM\Column(type: 'date', nullable: true)]
  176.     #[Groups(['Vehicle:item'])]
  177.     private $tirePlInstallation;
  178.     #[ORM\Column(type: 'date', nullable: true)]
  179.     #[Groups(['Vehicle:item'])]
  180.     private $tirePpInstallation;
  181.     #[ORM\Column(type: 'date', nullable: true)]
  182.     #[Groups(['Vehicle:item'])]
  183.     private $tireLlInstallation;
  184.     #[ORM\Column(type: 'date', nullable: true)]
  185.     #[Groups(['Vehicle:item'])]
  186.     private $tireLpInstallation;
  187.     #[ORM\OneToMany(mappedBy: 'vehicle', targetEntity: Notification::class, orphanRemoval: true)]
  188.     #[Groups(['Vehicle:item'])]
  189.     private $notifications;
  190.     #[ORM\Column(type: 'date', nullable: true)]
  191.     #[Groups(['Vehicle:item'])]
  192.     private $gasExpiryDate;
  193.     public function __construct()
  194.     {
  195.         $this->fuelType = new ArrayCollection();
  196.         $this->events = new ArrayCollection();
  197.         $this->users = new ArrayCollection();
  198.         $this->notifications = new ArrayCollection();
  199.     }
  200.     public function getId(): ?int
  201.     {
  202.         return $this->id;
  203.     }
  204.     public function getName(): ?string
  205.     {
  206.         return $this->name;
  207.     }
  208.     public function setName(string $name): self
  209.     {
  210.         $this->name = $name;
  211.         return $this;
  212.     }
  213.     public function getMake(): ?string
  214.     {
  215.         return $this->make;
  216.     }
  217.     public function setMake(?string $make): self
  218.     {
  219.         $this->make = $make;
  220.         return $this;
  221.     }
  222.     public function getModel(): ?string
  223.     {
  224.         return $this->model;
  225.     }
  226.     public function setModel(?string $model): self
  227.     {
  228.         $this->model = $model;
  229.         return $this;
  230.     }
  231.     public function getRegistrationNumber(): ?string
  232.     {
  233.         return $this->registrationNumber;
  234.     }
  235.     public function setRegistrationNumber(?string $registrationNumber): self
  236.     {
  237.         $this->registrationNumber = $registrationNumber;
  238.         return $this;
  239.     }
  240.     public function getVin(): ?string
  241.     {
  242.         return $this->vin;
  243.     }
  244.     public function setVin(?string $vin): self
  245.     {
  246.         $this->vin = $vin;
  247.         return $this;
  248.     }
  249.     public function getReviewDate(): ?\DateTimeInterface
  250.     {
  251.         return $this->reviewDate;
  252.     }
  253.     public function setReviewDate(?\DateTimeInterface $reviewDate): self
  254.     {
  255.         $this->reviewDate = $reviewDate;
  256.         return $this;
  257.     }
  258.     public function getInsuranceDate(): ?\DateTimeInterface
  259.     {
  260.         return $this->insuranceDate;
  261.     }
  262.     public function setInsuranceDate(?\DateTimeInterface $insuranceDate): self
  263.     {
  264.         $this->insuranceDate = $insuranceDate;
  265.         return $this;
  266.     }
  267.     public function getEngine(): ?string
  268.     {
  269.         return $this->engine;
  270.     }
  271.     public function setEngine(?string $engine): self
  272.     {
  273.         $this->engine = $engine;
  274.         return $this;
  275.     }
  276.     public function getMileage(): ?int
  277.     {
  278.         return $this->mileage;
  279.     }
  280.     public function setMileage(?int $mileage): self
  281.     {
  282.         $this->mileage = $mileage;
  283.         return $this;
  284.     }
  285.     public function getFuelCardId(): ?string
  286.     {
  287.         return $this->fuelCardId;
  288.     }
  289.     public function setFuelCardId(?string $fuelCardId): self
  290.     {
  291.         $this->fuelCardId = $fuelCardId;
  292.         return $this;
  293.     }
  294.     public function getFuelCardPin(): ?int
  295.     {
  296.         return $this->fuelCardPin;
  297.     }
  298.     public function setFuelCardPin(?int $fuelCardPin): self
  299.     {
  300.         $this->fuelCardPin = $fuelCardPin;
  301.         return $this;
  302.     }
  303.     public function getCompany(): ?Company
  304.     {
  305.         return $this->company;
  306.     }
  307.     public function setCompany(?Company $company): self
  308.     {
  309.         $this->company = $company;
  310.         return $this;
  311.     }
  312.     public function getVehicleKind(): ?VehicleKind
  313.     {
  314.         return $this->vehicleKind;
  315.     }
  316.     public function setVehicleKind(?VehicleKind $vehicleKind): self
  317.     {
  318.         $this->vehicleKind = $vehicleKind;
  319.         return $this;
  320.     }
  321.     public function getUseType(): ?UseType
  322.     {
  323.         return $this->useType;
  324.     }
  325.     public function setUseType(?UseType $useType): self
  326.     {
  327.         $this->useType = $useType;
  328.         return $this;
  329.     }
  330.    
  331.     /**
  332.      * @return Collection|FuelType[]
  333.      */
  334.     public function getFuelType(): Collection
  335.     {
  336.         return $this->fuelType;
  337.     }
  338.     public function addFuelType(FuelType $fuelType): self
  339.     {
  340.         if (!$this->fuelType->contains($fuelType)) {
  341.             $this->fuelType[] = $fuelType;
  342.         }
  343.         return $this;
  344.     }
  345.     public function removeFuelType(FuelType $fuelType): self
  346.     {
  347.         $this->fuelType->removeElement($fuelType);
  348.         return $this;
  349.     }
  350.     /**
  351.      * @return Collection|Event[]
  352.      */
  353.     public function getEvents(): Collection
  354.     {
  355.         return $this->events;
  356.     }
  357.     public function addEvent(Event $event): self
  358.     {
  359.         if (!$this->events->contains($event)) {
  360.             $this->events[] = $event;
  361.             $event->setVehicle($this);
  362.         }
  363.         return $this;
  364.     }
  365.     public function removeEvent(Event $event): self
  366.     {
  367.         if ($this->events->removeElement($event)) {
  368.             // set the owning side to null (unless already changed)
  369.             if ($event->getVehicle() === $this) {
  370.                 $event->setVehicle(null);
  371.             }
  372.         }
  373.         return $this;
  374.     }
  375.     public function __toString(): string
  376.     {
  377.         return $this->name;
  378.     }
  379.     /**
  380.      * @return Collection|User[]
  381.      */
  382.     public function getUsers(): Collection
  383.     {
  384.         return $this->users;
  385.     }
  386.     public function addUser(User $user): self
  387.     {
  388.         if (!$this->users->contains($user)) {
  389.             $this->users[] = $user;
  390.         }
  391.         return $this;
  392.     }
  393.     public function removeUser(User $user): self
  394.     {
  395.         $this->users->removeElement($user);
  396.         return $this;
  397.     }
  398.     public function getLessee(): ?string
  399.     {
  400.         return $this->lessee;
  401.     }
  402.     public function setLessee(?string $lessee): self
  403.     {
  404.         $this->lessee = $lessee;
  405.         return $this;
  406.     }
  407.     public function getStatus(): ?VehicleStatus
  408.     {
  409.         return $this->status;
  410.     }
  411.     public function setStatus(?VehicleStatus $status): self
  412.     {
  413.         $this->status = $status;
  414.         return $this;
  415.     }
  416.     public function getTyrePlType(): ?Tyres
  417.     {
  418.         return $this->tyrePlType;
  419.     }
  420.     public function setTyrePlType(?Tyres $tyrePlType): self
  421.     {
  422.         $this->tyrePlType = $tyrePlType;
  423.         return $this;
  424.     }
  425.     public function getTyrePpType(): ?Tyres
  426.     {
  427.         return $this->tyrePpType;
  428.     }
  429.     public function setTyrePpType(?Tyres $tyrePpType): self
  430.     {
  431.         $this->tyrePpType = $tyrePpType;
  432.         return $this;
  433.     }
  434.     public function getTyreLlType(): ?Tyres
  435.     {
  436.         return $this->tyreLlType;
  437.     }
  438.     public function setTyreLlType(?Tyres $tyreLlType): self
  439.     {
  440.         $this->tyreLlType = $tyreLlType;
  441.         return $this;
  442.     }
  443.     public function getTyreLpType(): ?Tyres
  444.     {
  445.         return $this->tyreLpType;
  446.     }
  447.     public function setTyreLpType(?Tyres $tyreLpType): self
  448.     {
  449.         $this->tyreLpType = $tyreLpType;
  450.         return $this;
  451.     }
  452.     public function getTirePlName(): ?string
  453.     {
  454.         return $this->tirePlName;
  455.     }
  456.     public function setTirePlName(?string $tirePlName): self
  457.     {
  458.         $this->tirePlName = $tirePlName;
  459.         return $this;
  460.     }
  461.     public function getTirePpName(): ?string
  462.     {
  463.         return $this->tirePpName;
  464.     }
  465.     public function setTirePpName(?string $tirePpName): self
  466.     {
  467.         $this->tirePpName = $tirePpName;
  468.         return $this;
  469.     }
  470.     public function getTireLlName(): ?string
  471.     {
  472.         return $this->tireLlName;
  473.     }
  474.     public function setTireLlName(?string $tireLlName): self
  475.     {
  476.         $this->tireLlName = $tireLlName;
  477.         return $this;
  478.     }
  479.     public function getTireLpName(): ?string
  480.     {
  481.         return $this->tireLpName;
  482.     }
  483.     public function setTireLpName(?string $tireLpName): self
  484.     {
  485.         $this->tireLpName = $tireLpName;
  486.         return $this;
  487.     }
  488.     public function getTirePlProduction()
  489.     {
  490.         return $this->tirePlProduction;
  491.     }
  492.     public function setTirePlProduction( $tirePlProduction): self
  493.     {
  494.         $this->tirePlProduction = $tirePlProduction;
  495.         return $this;
  496.     }
  497.     /**
  498.      * Get the value of tirePpProduction
  499.      */
  500.     public function getTirePpProduction()
  501.     {
  502.         return $this->tirePpProduction;
  503.     }
  504.     /**
  505.      * Set the value of tirePpProduction
  506.      */
  507.     public function setTirePpProduction($tirePpProduction): self
  508.     {
  509.         $this->tirePpProduction = $tirePpProduction;
  510.         return $this;
  511.     }
  512.     /**
  513.      * Get the value of tireLlProduction
  514.      */
  515.     public function getTireLlProduction()
  516.     {
  517.         return $this->tireLlProduction;
  518.     }
  519.     /**
  520.      * Set the value of tireLlProduction
  521.      */
  522.     public function setTireLlProduction($tireLlProduction): self
  523.     {
  524.         $this->tireLlProduction = $tireLlProduction;
  525.         return $this;
  526.     }
  527.     /**
  528.      * Get the value of tireLpProduction
  529.      */ 
  530.     public function getTireLpProduction()
  531.     {
  532.         return $this->tireLpProduction;
  533.     }
  534.     /**
  535.      * Set the value of tireLpProduction
  536.      *
  537.      * @return  self
  538.      */ 
  539.     public function setTireLpProduction($tireLpProduction)
  540.     {
  541.         $this->tireLpProduction = $tireLpProduction;
  542.         return $this;
  543.     }
  544.     public function getTirePlWidth(): ?int
  545.     {
  546.         return $this->tirePlWidth;
  547.     }
  548.     public function setTirePlWidth(?int $tirePlWidth): self
  549.     {
  550.         $this->tirePlWidth = $tirePlWidth;
  551.         return $this;
  552.     }
  553.     public function getTirePlRatio(): ?int
  554.     {
  555.         return $this->tirePlRatio;
  556.     }
  557.     public function setTirePlRatio(?int $tirePlRatio): self
  558.     {
  559.         $this->tirePlRatio = $tirePlRatio;
  560.         return $this;
  561.     }
  562.     public function getTirePlRim(): ?int
  563.     {
  564.         return $this->tirePlRim;
  565.     }
  566.     public function setTirePlRim(?int $tirePlRim): self
  567.     {
  568.         $this->tirePlRim = $tirePlRim;
  569.         return $this;
  570.     }
  571.     /**
  572.      * Get the value of tirePpWidth
  573.      */ 
  574.     public function getTirePpWidth()
  575.     {
  576.         return $this->tirePpWidth;
  577.     }
  578.     /**
  579.      * Set the value of tirePpWidth
  580.      *
  581.      * @return  self
  582.      */ 
  583.     public function setTirePpWidth($tirePpWidth)
  584.     {
  585.         $this->tirePpWidth = $tirePpWidth;
  586.         return $this;
  587.     }
  588.     /**
  589.      * Get the value of tirePpRatio
  590.      */
  591.     public function getTirePpRatio()
  592.     {
  593.         return $this->tirePpRatio;
  594.     }
  595.     /**
  596.      * Set the value of tirePpRatio
  597.      */
  598.     public function setTirePpRatio($tirePpRatio): self
  599.     {
  600.         $this->tirePpRatio = $tirePpRatio;
  601.         return $this;
  602.     }
  603.     /**
  604.      * Get the value of tirePpRim
  605.      */ 
  606.     public function getTirePpRim()
  607.     {
  608.         return $this->tirePpRim;
  609.     }
  610.     /**
  611.      * Set the value of tirePpRim
  612.      *
  613.      * @return  self
  614.      */ 
  615.     public function setTirePpRim($tirePpRim)
  616.     {
  617.         $this->tirePpRim = $tirePpRim;
  618.         return $this;
  619.     }
  620.     /**
  621.      * Get the value of tireLlWidth
  622.      */
  623.     public function getTireLlWidth()
  624.     {
  625.         return $this->tireLlWidth;
  626.     }
  627.     /**
  628.      * Set the value of tireLlWidth
  629.      */
  630.     public function setTireLlWidth($tireLlWidth): self
  631.     {
  632.         $this->tireLlWidth = $tireLlWidth;
  633.         return $this;
  634.     }
  635.     /**
  636.      * Get the value of tireLlRatio
  637.      */ 
  638.     public function getTireLlRatio()
  639.     {
  640.         return $this->tireLlRatio;
  641.     }
  642.     /**
  643.      * Set the value of tireLlRatio
  644.      *
  645.      * @return  self
  646.      */ 
  647.     public function setTireLlRatio($tireLlRatio)
  648.     {
  649.         $this->tireLlRatio = $tireLlRatio;
  650.         return $this;
  651.     }
  652.     /**
  653.      * Get the value of tireLlRim
  654.      */
  655.     public function getTireLlRim()
  656.     {
  657.         return $this->tireLlRim;
  658.     }
  659.     /**
  660.      * Set the value of tireLlRim
  661.      */
  662.     public function setTireLlRim($tireLlRim): self
  663.     {
  664.         $this->tireLlRim = $tireLlRim;
  665.         return $this;
  666.     }
  667.     /**
  668.      * Get the value of tireLpWidth
  669.      */ 
  670.     public function getTireLpWidth()
  671.     {
  672.         return $this->tireLpWidth;
  673.     }
  674.     /**
  675.      * Set the value of tireLpWidth
  676.      *
  677.      * @return  self
  678.      */ 
  679.     public function setTireLpWidth($tireLpWidth)
  680.     {
  681.         $this->tireLpWidth = $tireLpWidth;
  682.         return $this;
  683.     }
  684.     /**
  685.      * Get the value of tireLpRatio
  686.      */
  687.     public function getTireLpRatio()
  688.     {
  689.         return $this->tireLpRatio;
  690.     }
  691.     /**
  692.      * Set the value of tireLpRatio
  693.      */
  694.     public function setTireLpRatio($tireLpRatio): self
  695.     {
  696.         $this->tireLpRatio = $tireLpRatio;
  697.         return $this;
  698.     }
  699.     /**
  700.      * Get the value of tireLpRim
  701.      */
  702.     public function getTireLpRim()
  703.     {
  704.         return $this->tireLpRim;
  705.     }
  706.     /**
  707.      * Set the value of tireLpRim
  708.      */
  709.     public function setTireLpRim($tireLpRim): self
  710.     {
  711.         $this->tireLpRim = $tireLpRim;
  712.         return $this;
  713.     }
  714.     /**
  715.      * Get the value of tireLpInstallation
  716.      */
  717.     public function getTireLpInstallation()
  718.     {
  719.         return $this->tireLpInstallation;
  720.     }
  721.     /**
  722.      * Set the value of tireLpInstallation
  723.      */
  724.     public function setTireLpInstallation($tireLpInstallation): self
  725.     {
  726.         $this->tireLpInstallation = $tireLpInstallation;
  727.         return $this;
  728.     }
  729.     /**
  730.      * Get the value of tireLlInstallation
  731.      */
  732.     public function getTireLlInstallation()
  733.     {
  734.         return $this->tireLlInstallation;
  735.     }
  736.     /**
  737.      * Set the value of tireLlInstallation
  738.      */
  739.     public function setTireLlInstallation($tireLlInstallation): self
  740.     {
  741.         $this->tireLlInstallation = $tireLlInstallation;
  742.         return $this;
  743.     }
  744.     /**
  745.      * Get the value of tirePpInstallation
  746.      */
  747.     public function getTirePpInstallation()
  748.     {
  749.         return $this->tirePpInstallation;
  750.     }
  751.     /**
  752.      * Set the value of tirePpInstallation
  753.      */
  754.     public function setTirePpInstallation($tirePpInstallation): self
  755.     {
  756.         $this->tirePpInstallation = $tirePpInstallation;
  757.         return $this;
  758.     }
  759.     /**
  760.      * Get the value of tirePlInstallation
  761.      */
  762.     public function getTirePlInstallation()
  763.     {
  764.         return $this->tirePlInstallation;
  765.     }
  766.     /**
  767.      * Set the value of tirePlInstallation
  768.      */
  769.     public function setTirePlInstallation($tirePlInstallation): self
  770.     {
  771.         $this->tirePlInstallation = $tirePlInstallation;
  772.         return $this;
  773.     }
  774.     /**
  775.      * Get the value of tirePlType
  776.      */
  777.     public function getTirePlType()
  778.     {
  779.         return $this->tirePlType;
  780.     }
  781.     /**
  782.      * Set the value of tirePlType
  783.      */
  784.     public function setTirePlType($tirePlType): self
  785.     {
  786.         $this->tirePlType = $tirePlType;
  787.         return $this;
  788.     }
  789.     /**
  790.      * Get the value of tirePpType
  791.      */
  792.     public function getTirePpType()
  793.     {
  794.         return $this->tirePpType;
  795.     }
  796.     /**
  797.      * Set the value of tirePpType
  798.      */
  799.     public function setTirePpType($tirePpType): self
  800.     {
  801.         $this->tirePpType = $tirePpType;
  802.         return $this;
  803.     }
  804.     /**
  805.      * Get the value of tireLpType
  806.      */
  807.     public function getTireLpType()
  808.     {
  809.         return $this->tireLpType;
  810.     }
  811.     /**
  812.      * Set the value of tireLpType
  813.      */
  814.     public function setTireLpType($tireLpType): self
  815.     {
  816.         $this->tireLpType = $tireLpType;
  817.         return $this;
  818.     }
  819.   
  820.     /**
  821.      * Get the value of tireLlType
  822.      */
  823.     public function getTireLlType()
  824.     {
  825.         return $this->tireLlType;
  826.     }
  827.     /**
  828.      * Set the value of tireLlType
  829.      */
  830.     public function setTireLlType($tireLlType): self
  831.     {
  832.         $this->tireLlType = $tireLlType;
  833.         return $this;
  834.     }
  835.     /**
  836.      * @return Collection|Notification[]
  837.      */
  838.     public function getNotifications(): Collection
  839.     {
  840.         return $this->notifications;
  841.     }
  842.     public function addNotification(Notification $notification): self
  843.     {
  844.         if (!$this->notifications->contains($notification)) {
  845.             $this->notifications[] = $notification;
  846.             $notification->setVehicle($this);
  847.         }
  848.         return $this;
  849.     }
  850.     public function removeNotification(Notification $notification): self
  851.     {
  852.         if ($this->notifications->removeElement($notification)) {
  853.             // set the owning side to null (unless already changed)
  854.             if ($notification->getVehicle() === $this) {
  855.                 $notification->setVehicle(null);
  856.             }
  857.         }
  858.         return $this;
  859.     }
  860.     public function getGasExpiryDate(): ?\DateTimeInterface
  861.     {
  862.         return $this->gasExpiryDate;
  863.     }
  864.     public function setGasExpiryDate(?\DateTimeInterface $gasExpiryDate): self
  865.     {
  866.         $this->gasExpiryDate = $gasExpiryDate;
  867.         return $this;
  868.     }
  869.     
  870. }