src/Entity/AdresseLivraison.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\AdresseLivraisonRepository;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\Common\Collections\Collection;
  7. /**
  8.  * @ORM\Entity(repositoryClass=AdresseLivraisonRepository::class)
  9.  * @ORM\Table(name="`adresseLivraison`")
  10.  */
  11. class AdresseLivraison
  12. {
  13.     /**
  14.      * @ORM\Id
  15.      * @ORM\GeneratedValue
  16.      * @ORM\Column(type="integer")
  17.      */
  18.     private $id;
  19.     /**
  20.      * @ORM\Column(type="string", nullable=true)
  21.      */
  22.     private $adresse;
  23.     /**
  24.      * @ORM\OneToMany(targetEntity=OrderApi::class, mappedBy="adresseLiv")
  25.      */
  26.     private $orders;
  27.     public function __construct()
  28.     {
  29.         // Initialise la collection pour éviter les erreurs de manipulation.
  30.         $this->orders = new ArrayCollection();
  31.     }
  32.     // Getters et Setters
  33.     public function getId(): ?int
  34.     {
  35.         return $this->id;
  36.     }
  37.     public function getAdresse(): ?string
  38.     {
  39.         return $this->adresse;
  40.     }
  41.     public function setAdresse(?string $adresse): self
  42.     {
  43.         $this->adresse $adresse;
  44.         return $this;
  45.     }
  46.     public function getOrders(): Collection
  47.     {
  48.         return $this->orders;
  49.     }
  50.     public function addOrder(OrderApi $order): self
  51.     {
  52.         if (!$this->orders->contains($order)) {
  53.             $this->orders[] = $order;
  54.             $order->setAdresseLiv($this);  // On associe l'ordre à cette adresse
  55.         }
  56.         return $this;
  57.     }
  58.     public function removeOrder(OrderApi $order): self
  59.     {
  60.         if ($this->orders->removeElement($order)) {
  61.             // Si la relation est supprimée dans la commande, on désassocie l'adresse
  62.             if ($order->getAdresseLiv() === $this) {
  63.                 $order->setAdresseLiv(null);
  64.             }
  65.         }
  66.         return $this;
  67.     }
  68. }