src/Entity/Dons.php line 12

  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\DonsRepository;
  4. use App\Traits\UpdateInfoTrait;
  5. use Doctrine\DBAL\Types\Types;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\Security\Core\User\UserInterface;
  8. #[ORM\Entity(repositoryClassDonsRepository::class)]
  9. class Dons
  10. {
  11.     public const STATUT_EN_COURS            100;
  12.     public const STATUT_EN_ATTENTE_PAIEMENT 200;
  13.     public const STATUT_PAYE                300;
  14.     public const STATUT_ANNULE              400;
  15.     // Attention: Ne pas supprimer
  16.     use UpdateInfoTrait;
  17.     #[ORM\ManyToOne(targetEntityUser::class, inversedBy'liste_dons')]
  18.     #[ORM\JoinColumn(nullabletrue)]
  19.     private ?User $user;
  20.     #[ORM\OneToOne(inversedBy'don'targetEntityReservation::class, cascade: ['persist''remove'])]
  21.     #[ORM\JoinColumn(nullabletrue)]
  22.     private ?Reservation $reservation;
  23.     #[ORM\Column]
  24.     private float $donation_amount;
  25.     #[ORM\Column]
  26.     private int $status;
  27.     #[ORM\Column(typeTypes::DATETIME_MUTABLEnullabletrue)]
  28.     private ?\DateTimeInterface $payement_date;
  29.     public function __construct(?User $user, ?Reservation $reservationfloat $donation_amount)
  30.     {
  31.         $this->user             $user;
  32.         $this->reservation      $reservation;
  33.         $this->donation_amount  $donation_amount;
  34.         $this->status           self::STATUT_EN_COURS;
  35.         $this->payement_date    null;
  36.     }
  37.     public function getUser(): ?User
  38.     {
  39.         return $this->user;
  40.     }
  41.     public function setUser(?User $user): Dons
  42.     {
  43.         $this->user $user;
  44.         return $this;
  45.     }
  46.     public function getReservation(): ?Reservation
  47.     {
  48.         return $this->reservation;
  49.     }
  50.     public function setReservation(?Reservation $reservation): Dons
  51.     {
  52.         $this->reservation $reservation;
  53.         return $this;
  54.     }
  55.     public function getDonationAmount(): ?float
  56.     {
  57.         return $this->donation_amount;
  58.     }
  59.     public function setDonationAmount(float $donation_amount): self
  60.     {
  61.         $this->donation_amount $donation_amount;
  62.         return $this;
  63.     }
  64.     public function getStatus(): int
  65.     {
  66.         return $this->status;
  67.     }
  68.     public function setStatus(int $status): Dons
  69.     {
  70.         $this->status $status;
  71.         return $this;
  72.     }
  73.     public function getPayementDate(): ?\DateTimeInterface
  74.     {
  75.         return $this->payement_date;
  76.     }
  77.     public function setPayementDate(?\DateTimeInterface $payement_date): Dons
  78.     {
  79.         $this->payement_date $payement_date;
  80.         return $this;
  81.     }
  82. }