<?phpnamespace App\Entity;use ApiPlatform\Metadata\ApiResource;use App\Repository\LivraisonsRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;#[ORM\Entity(repositoryClass: LivraisonsRepository::class)]#[ApiResource]class Livraisons{ #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column] #[ORM\OrderBy(["id" => "DESC"])] private ?int $id = null; #[ORM\Column(length: 255)] private ?float $distance = 0.0; #[ORM\Column(length: 255)] private ?string $latitude = null; #[ORM\Column(length: 255)] private ?string $longitude = null; #[ORM\Column(length: 255)] private ?string $pays = null; #[ORM\Column(length: 255)] private ?string $adresse_depart = null; #[ORM\Column(length: 255)] private ?string $adresse_arrivee = null; #[ORM\Column] private ?int $creditslivraisons = 3; #[ORM\Column(length: 355, nullable: true)] private ?string $description = null; #[Assert\Positive(message: "La valeur doit être un nombre positif.")] #[ORM\Column] private ?int $poids = null; #[ORM\ManyToOne(targetEntity: Livreurs::class, inversedBy: 'livraisons')] #[ORM\JoinColumn(nullable: true, onDelete: 'SET NULL')] private ?Livreurs $id_livreurs = null; #[ORM\ManyToOne(inversedBy: 'livraisons')] private ?TypeLivraison $type_livraison = null; #[ORM\ManyToOne(inversedBy: 'livraisons')] private ?StatutLivraison $statut_livraison = null; #[ORM\Column(length: 255)] private ?string $userprofile = null; #[ORM\ManyToOne(inversedBy: 'livraisons')] private ?ZoneLivraison $zonelivraison = null; #[ORM\ManyToOne(inversedBy: 'livraisonsarrivee')] private ?ZoneLivraison $zonearrivee = null; #[ORM\Column(type: Types::DATETIME_MUTABLE)] private ?\DateTimeInterface $depart = null; #[ORM\Column(type: Types::DATETIME_MUTABLE)] private ?\DateTimeInterface $arrivee = null; #[ORM\ManyToOne(inversedBy: 'livraisons')] #[ORM\JoinColumn(nullable: true)] // Permet à la relation d’être NULL private ?PaymentMethod $paymentMethod = null; #[ORM\ManyToOne(inversedBy: 'livraisons')] #[ORM\JoinColumn(nullable: false, onDelete: 'CASCADE')] private ?User $users = null; #[ORM\Column(length: 255, nullable: true)] private ?string $photo = null; #[ORM\Column(nullable: true)] private ?float $montant = null; #[ORM\Column(nullable: true)] private ?int $nombredocuments = null; public function getIdLivreurs(): ?Livreurs { return $this->id_livreurs; } public function setIdLivreurs(?Livreurs $id_livreurs) { $this->id_livreurs = $id_livreurs; return $this; } public function getId(): ?int { return $this->id; } public function getPays(): ?string { return $this->pays; } public function setPays(string $pays) { $this->pays = $pays; return $this; } public function getAdresseDepart(): ?string { return $this->adresse_depart; } public function setAdresseDepart(string $adresse_depart) { $this->adresse_depart = $adresse_depart; return $this; } public function getAdresseArrivee(): ?string { return $this->adresse_arrivee; } public function setAdresseArrivee(string $adresse_arrivee) { $this->adresse_arrivee = $adresse_arrivee; return $this; } public function getPoids(): ?int { return $this->poids; } public function setPoids(int $poids) { $this->poids = $poids; return $this; } public function getTypeLivraison(): ?TypeLivraison { return $this->type_livraison; } public function setTypeLivraison(?TypeLivraison $type_livraison): static { $this->type_livraison = $type_livraison; return $this; } public function getLatitude(): ?string { return $this->latitude; } public function setLatitude(?string $latitude): static { $this->latitude = $latitude; return $this; } public function getLongitude(): ?string { return $this->longitude; } public function setLongitude(?string $longitude): static { $this->longitude = $longitude; return $this; } public function getDistance(): ?float { return $this->distance; } public function setDistance(float $distance): static { $this->distance = $distance; return $this; } public function getStatutLivraison(): ?StatutLivraison { return $this->statut_livraison; } public function setStatutLivraison(?StatutLivraison $statut_livraison): self { $this->statut_livraison = $statut_livraison; return $this; } public function getCreditslivraisons(): ?int { return $this->creditslivraisons; } public function setCreditslivraisons(int $creditslivraisons): self { $this->creditslivraisons = $creditslivraisons; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(string $description): static { $this->description = $description; return $this; } public function getUserprofile(): ?string { return $this->userprofile; } public function setUserprofile(string $userprofile): static { $this->userprofile = $userprofile; return $this; } public function getZonelivraison(): ?ZoneLivraison { return $this->zonelivraison; } public function setZonelivraison(?ZoneLivraison $zonelivraison): static { $this->zonelivraison = $zonelivraison; return $this; } public function getZonearrivee(): ?ZoneLivraison { return $this->zonearrivee; } public function setZonearrivee(?ZoneLivraison $zonearrivee): static { $this->zonearrivee = $zonearrivee; return $this; } public function getDepart(): ?\DateTimeInterface { return $this->depart; } public function setDepart(\DateTimeInterface $depart): static { $this->depart = $depart; return $this; } public function getArrivee(): ?\DateTimeInterface { return $this->arrivee; } public function setArrivee(\DateTimeInterface $arrivee): static { $this->arrivee = $arrivee; return $this; } public function getPaymentMethod(): ?PaymentMethod { return $this->paymentMethod; } public function setPaymentMethod(?PaymentMethod $paymentMethod): static { $this->paymentMethod = $paymentMethod; return $this; } public function getUsers(): ?User { return $this->users; } public function setUsers(?User $users): static { $this->users = $users; return $this; } public function getPhoto(): ?string { return $this->photo; } public function setPhoto(?string $photo): static { $this->photo = $photo; return $this; } public function getMontant(): ?float { return $this->montant; } public function setMontant(?float $montant): static { $this->montant = $montant; return $this; } public function getNombredocuments(): ?int { return $this->nombredocuments; } public function setNombredocuments(?int $nombredocuments): static { $this->nombredocuments = $nombredocuments; return $this; }}