En règle générale, pour un système de commande, je m'attendrais à quelque chose comme
Product -< OrderLine >- Order
Dans votre cas, vous pouvez ajouter une relation "oreille de lapin" sur votre produit pour se référer à lui-même. Ainsi, votre outbound_shipment_contents
perd name
, type
au nouveau product
. Vous pouvez ensuite construire de manière récursive l'arborescence des éléments à sélectionner selon vos besoins.