✨ feat(env): Met à jour les URLs ngrok pour l'environnement.
✨ feat(Prestaire): Ajoute contrainte d'unicité email et relations Contrats/OrderSession.
✨ feat(OrderSession): Ajoute une relation ManyToOne vers Prestaire.
✨ feat(Contrats): Ajoute une relation ManyToOne vers Prestaire.
🐛 fix(SignatureController): Corrige la création de contrat à partir du devis signé.
✨ feat(FlowController): Ajoute un sélecteur de prestataire à la session.
✨ feat(devis/list.twig): Ajoute une légende des actions dans la liste des devis.
✨ feat(ContratsController): Ajoute le prestataire au contrat lors de la génération.
✨ feat(SearchController): Ajoute la recherche de prestataires.
🐛 fix(SignatureClient): Corrige le stockage de l'ID de signature du devis.
✨ feat(base.twig): Ajoute un lien vers la liste des prestataires dans le menu.
✨ feat(PrestataireRepository): Ajoute une méthode de recherche par nom et email.
```
✨ feat(Product.php): Ajoute la liaison ManyToMany avec l'entité Options
✨ feat(Devis.php): Ajoute la propriété isNotAddCaution pour masquer la caution
♻️ refactor(.env): Met à jour les URLs de SIGN, STRIPE et CONTRAT
✨ feat(workflow.twig): Adapte le workflow et supprime l'étape de caution
✨ feat(NewDevisType.php): Ajoute un champ pour gérer
✨ feat(templates): Améliore la lisibilité et l'esthétique de l'interface
Ce commit met à jour les couleurs et les styles de texte dans plusieurs
templates pour améliorer la lisibilité et l'esthétique globale de
l'interface utilisateur. Les couleurs de texte secondaires sont
ajustées pour un meilleur contraste.
```
✨ feat(facture): Ajoute la gestion des factures et paiements (CRUD, export).
Cette commit ajoute la fonctionnalité de gestion des factures et des paiements,
incluant l'affichage, la recherche, l'export Excel et la pagination.
```
✨ feat(DevisController): Améliore la gestion et l'édition des devis
Corrige des bugs et améliore la création/édition des devis, incluant options et lignes, et la gestion des signatures.
```
✨ feat(devis): Améliore la sélection des produits et options avec modales de recherche
Supprime la relation Product->DevisLine, ajoute des composants de recherche modale pour produits/options dans les devis.
```
✨ feat(contrats/add.twig): Ajoute le détail des options au formulaire
✨ feat(SearchProduct.js): Implémente la recherche et la sélection d'options
🐛 fix(DevisController.php): Corrige la création/édition de devis et supprime un devis
✨ feat(admin.js): Enregistre les custom elements SearchOptions
✨ feat(templates/dashboard/devis): Permet l'édition et la suppression d'un devis
```
✨ feat(Devis): Ajoute options, dates début/fin et améliore affichage PDF
Ajoute les champs date de début et fin au devis. Permet l'ajout d'options au devis. Améliore l'affichage du PDF.
```
✨ 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.
```
✨ feat(.env): Met à jour les URLs de signature et Stripe pour Ngrok
✨ feat(SignatureController): Ajoute le contrôleur de signature
✨ feat(DevisController): Intègre DocuSeal et la gestion des adresses client
🐛 fix(DevisManager.js): Corrige la sélection et la synchronisation des adresses
✨ feat(vich_uploader.yaml): Configure le stockage des fichiers PDF
✨ feat(initTomSelect.js): Améliore la gestion des prix des produits
✨ feat(DevisPdfService): Intègre la signature DocuSeal et améliore le pied de page
✨ feat(Client.php): Crée une soumission Docuseal pour les devis
✨ feat(Product.php): Ajoute relation DevisLine et méthodes associées en français.
✨ feat(DevisLine.php): Ajoute propriétés et relations pour ligne de devis en français.
✨ feat(DevisController.php): Intègre génération PDF et ajout de lignes de devis en français.
🎨 style: Améliore la mise en page et l'esthétique de l'interface admin en français.
✨ feat: Initialise TomSelect et gère les adresses client dans DevisManager en français.
🐛 fix: Corrige l'initialisation de TomSelect et la gestion des lignes répétées en français.
✅ test: Ajoute génération du bon pour accord et signature en français.
```
✨ feat(Devis.php): Ajoute adresses de facturation et de livraison au devis.
🔒️ fix(IntranetLocked.php): Autorise l'accès à la route st_control en mode debug.
✨ feat(CustomerAddress.php): Gère les adresses de facturation et livraison.
✨ feat: Ajoute la console superadmin pour le contrôle système.
✨ feat(DevisController.php): Supprime la génération PDF temporaire.
✨ feat(st_control.js): Ajoute la logique de contrôle système via JS.
✨ feat: Crée les templates CGV, Cookies, Hébergement et RGPD.
🎨 style(app.scss): Ajoute un style de fond pour la console.
✨ feat: Ajoute le template pour les informations d'hébergement.
✨ feat: Crée un template de mail d'alerte pour les accès root.
✨ feat: Crée le template RGPD (données personnelles).
🐛 fix(ErrorListener.php): Gère les erreurs 404 en prod (JSON/HTML).
✨ feat: Ajoute les mentions légales.
✨ feat(DevisPdfService.php): Améliore la génération PDF du devis.
✨ feat(admin.js): Charge dynamiquement les produits dans le select.
✨ feat(add.twig): Ajoute un sélecteur de produit et d'autres champs.
✅ chore(config): Ajoute INTRANET_LOCK à l'env.
```
✨ feat(Devis): Ajoute l'entité DevisLine et le formulaire de création de devis non terminer
Ajoute l'entité DevisLine, le formulaire NewDevisType et la route pour la création de devis.
```
✨ feat(Product): Remplace les annotations Vich par des attributs.
♻️ refactor(Customer): Ajoute la relation OneToMany avec l'entité Devis.
✨ feat(DevisController): Affiche la liste des devis paginée.
✨ feat(devis/list.twig): Crée la vue de liste des devis avec pagination.
⚙️ chore(vich_uploader): Configure les mappings pour les fichiers de devis.
```