```
✨ feat(Product.php): Ajoute la relation avec ProductReserve. ✨ feat(DevisSubscriber.php): Crée un subscriber pour l'envoi de devis. ✨ feat(Devis.php): Ajoute la relation avec ProductReserve. ✨ feat: Crée le template de mail pour la notification de signature. ✨ feat(DevisSend.php): Crée l'événement DevisSend. ✨ feat(Customer.php): Ajoute la relation avec ProductReserve. 🐛 fix(SignatureController.php): Corrige la gestion de la signature complétée. ✨ feat(DevisController.php): Ajoute la relance de signature et pagination. ✨ feat: Crée le template de mail pour l'envoi du devis à signer. ✨ feat: Crée le template de mail pour la confirmation de signature. ✨ feat(Client.php): Gère la création et le suivi de la signature DocuSeal. ✨ feat(DevisPdfService.php): Intègre les champs Docuseal. ✨ feat(list.twig): Affiche la liste des devis avec actions et statuts. ✨ feat: Crée la page de succès de signature. ✨ feat(StripeExtension.php): Ajoute le filtre totalQuoto pour calculer le total HT. ```
This commit is contained in:
@@ -61,9 +61,16 @@ class Product
|
||||
#[ORM\OneToMany(targetEntity: DevisLine::class, mappedBy: 'product')]
|
||||
private Collection $devisLines;
|
||||
|
||||
/**
|
||||
* @var Collection<int, ProductReserve>
|
||||
*/
|
||||
#[ORM\OneToMany(targetEntity: ProductReserve::class, mappedBy: 'product')]
|
||||
private Collection $productReserves;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->devisLines = new ArrayCollection();
|
||||
$this->productReserves = new ArrayCollection();
|
||||
}
|
||||
|
||||
public function getId(): ?int
|
||||
@@ -232,4 +239,34 @@ class Product
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Collection<int, ProductReserve>
|
||||
*/
|
||||
public function getProductReserves(): Collection
|
||||
{
|
||||
return $this->productReserves;
|
||||
}
|
||||
|
||||
public function addProductReserf(ProductReserve $productReserf): static
|
||||
{
|
||||
if (!$this->productReserves->contains($productReserf)) {
|
||||
$this->productReserves->add($productReserf);
|
||||
$productReserf->setProduct($this);
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function removeProductReserf(ProductReserve $productReserf): static
|
||||
{
|
||||
if ($this->productReserves->removeElement($productReserf)) {
|
||||
// set the owning side to null (unless already changed)
|
||||
if ($productReserf->getProduct() === $this) {
|
||||
$productReserf->setProduct(null);
|
||||
}
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user