Bonjour,
Je suis en train de réaliser une application avec Symfony et je me demandais si un Bundle ne répondrait pas à mon besoin histoire de ne pas ré-inventer la roue.
Concrètement c'est une application de prise de commandes, j'ai donc pour simplifier les entités Commande, Detail et Produit.
Une Commande contient un ou plusieurs Detail, Detail contenant et un un seul Produit.
Le problème est qu'un produit peut être modifié dans le temps, donc si j'enregistre une commande avec un soda à 1.50€ aujourd'hui, si je consulte cette même commande dans 2 ans je dois toujours retrouver cette même information, le problème c'est que le soda peut voir son prix modifier voir même être réutilisé pour devenir un café…
Ma première idée était donc de créer une entité intermédiaire (ProduitHisto par exemple) et plutôt que de créer un lien entre Detail et Produit je ferai un lien entre Detail et ProduitHisto, de cette manière même si l'entité Produit originale est modifiée dans le future si je consulte la commande je retrouve toujours toutes les mêmes informations.
Cependant je me dit que je ne doit pas être le premier à avoir ce genre de besoin et je me demandais s'il n'existait pas des Bundle qui répondrait à cette problèmatique sans que j'ai a écrire deux fois la même entité et gérer l'historisation moi-même.
J'ai fais une rapide recherche sur Google et j'ai trouvé EntityAudit mais je n'ai pas l'impression que cela correspond à mon besoin.
Ce que je souhaite faire c'est de dire qu'il y a un lien entre ManyToOne entre Detail et Produit et que ce lien me garantisse que l'entité Produit liée soie toujours celle qui a été utilisée à l'origine même si une modification dans Produit a eu lieu.
Merci d'avance pour votre aide.
Cordialement, La source.