<?phpnamespace App\Entity;use App\Repository\InvoiceRepository;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;#[ORM\Entity(repositoryClass: InvoiceRepository::class)]class Invoice{ #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column(type: 'integer')] private $id; #[ORM\Column(type: 'string', length: 255)] private $number; #[ORM\Column(type: 'float')] private $amount; #[ORM\Column(type: 'date')] private $createdAt; #[ORM\Column(type: 'string', length: 255)] private $stripeInvoiceId; #[ORM\ManyToOne(targetEntity: User::class, inversedBy: 'invoices')] private $pro; #[ORM\Column(type: 'string', length: 255)] private $status; #[ORM\Column(type: 'string', length: 255, nullable: true)] private $period; #[ORM\ManyToOne(targetEntity: Offer::class, inversedBy: 'invoices')] private $offer; #[ORM\ManyToOne(inversedBy: 'invoices')] private ?Subscription $subscription = null; #[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $start = null; #[ORM\Column(type: Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $end = null; #[ORM\Column(nullable: true)] private ?float $tva = null; public function getId(): ?int { return $this->id; } public function getNumber(): ?string { return $this->number; } public function setNumber(string $number): self { $this->number = $number; return $this; } public function getAmount(): ?float { return $this->amount; } public function setAmount(float $amount): self { $this->amount = $amount; return $this; } public function getCreatedAt(): ?\DateTimeInterface { return $this->createdAt; } public function setCreatedAt(\DateTimeInterface $createdAt): self { $this->createdAt = $createdAt; return $this; } public function getStripeInvoiceId(): ?string { return $this->stripeInvoiceId; } public function setStripeInvoiceId(string $stripeInvoiceId): self { $this->stripeInvoiceId = $stripeInvoiceId; return $this; } public function getPro(): ?User { return $this->pro; } public function setPro(?User $pro): self { $this->pro = $pro; return $this; } public function getStatus(): ?string { return $this->status; } public function setStatus(string $status): self { $this->status = $status; return $this; } public function getPeriod(): ?string { return $this->period; } public function setPeriod(?string $period): self { $this->period = $period; return $this; } public function getOffer(): ?Offer { return $this->offer; } public function setOffer(?Offer $offer): self { $this->offer = $offer; return $this; } public function getSubscription(): ?Subscription { return $this->subscription; } public function setSubscription(?Subscription $subscription): static { $this->subscription = $subscription; return $this; } public function getStart(): ?\DateTimeInterface { return $this->start; } public function setStart(?\DateTimeInterface $start): static { $this->start = $start; return $this; } public function getEnd(): ?\DateTimeInterface { return $this->end; } public function setEnd(?\DateTimeInterface $end): static { $this->end = $end; return $this; } public function getTva(): ?float { return $this->tva; } public function setTva(?float $tva): static { $this->tva = $tva; return $this; }}