korvent Posted April 26, 2021 Share Posted April 26, 2021 (edited) Bonjour, Je tente d'utiliser le hook actionProductCancel pour gérer les retours produits. Cependant, je n'ai pas la quantité de produit retournée. public function hookActionProductCancel($params) { $db = Db::getInstance(); $order = $params['order']; $isReturn = $params['action'] === CancellationActionType::RETURN_PRODUCT; $isCancel = $params['action'] === CancellationActionType::CANCEL_PRODUCT || $params['action'] === CancellationActionType::STANDARD_REFUND; $isShipped = $order->hasBeenShipped() === 1; //We only process orders that have been shipped and with return product or haven't been shipped if (($isReturn && $isShipped) || ($isCancel && !$isShipped)) { $products = $params['productList'] ?? $order->getOrderDetailList(); try { $orderDetail = new OrderDetail($params['id_order_detail']); //-> $orderDetail['product_quantity_return'], $orderDetail['product_quantity_refunded'] et $orderDetail['product_quantity_reinjected'] sont tous à 0 $result = $db->insert('mymodule', [ 'id_order_detail' => $params['id_order_detail'], 'type_movement' => 'R', 'product_reference' => $orderDetail->product_reference, 'product_quantity' => $orderDetail->product_quantity_return, 'created_on' => date('Y-m-d H:i:s'), ]); if (!$result) { PrestaShopLogger::addLog('[MYMODULE] Return not added id_order_detail: ' . $params['id_order_detail']); } } catch (PrestaShopDatabaseException $e) { PrestaShopLogger::addLog('[MYMODULE] Database error: ' . $e->getMessage()); } } } Je n'ai la quantité retournée ni dans $params ni dans $orderDetail. Y-a-t-il un moyen que je ne vois pas ? Je pensais que c'était lié au fait que le retour n'était pas encore fait mais j'ai vu dans cette issue: https://github.com/PrestaShop/PrestaShop/issues/21046 que Prestashop faisait déjà son traitement. Auriez-vous une solution pour connaitre la quantité de produit retournés dans ce hook ? Merci d'avance Edited April 28, 2021 by korvent Statut résolu (see edit history) Link to comment Share on other sites More sharing options...
korvent Posted April 26, 2021 Author Share Posted April 26, 2021 (edited) Réponse trouvée ici: https://github.com/PrestaShop/PrestaShop/pull/22686 La donnée était en effet manquante et sera ajoutée dans la 1.7.8 Jusqu'à la sortie, il suffit de modifier les 4 lignes mentionnées ! Edited April 27, 2021 by korvent Traduction (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted April 26, 2021 Share Posted April 26, 2021 il y a une heure, korvent a dit : Found the answer here: https://github.com/PrestaShop/PrestaShop/pull/22686 This data was indeed missing and will be added in some next release ! Until then, there are just 4 lines that need to be edited ! Merci de poster en français dans le forum français. Link to comment Share on other sites More sharing options...
korvent Posted April 27, 2021 Author Share Posted April 27, 2021 Quel ton des plus sympathiques 😉 J'étais la tête dans l'anglais et ai donc répondu en anglais, toutes mes excuses cher monsieur, cette ignominie ne sera reproduira plus. Excellente journée à vous ! Link to comment Share on other sites More sharing options...
Mediacom87 Posted April 27, 2021 Share Posted April 27, 2021 à l’instant, korvent a dit : Quel ton des plus sympathiques 😉 J'étais la tête dans l'anglais et ai donc répondu en anglais, toutes mes excuses cher monsieur, cette ignominie ne sera reproduira plus. Excellente journée à vous ! Merci à vous de respecter les règles de ce forum. Link to comment Share on other sites More sharing options...
korvent Posted April 28, 2021 Author Share Posted April 28, 2021 19 hours ago, Mediacom87 said: Merci à vous de respecter les règles de ce forum. Encore une fois d'une grande sympathie ! Remettons les choses dans leur contexte. Je réponds à ma question pour permettre aux prochains de résoudre leur problème rapidement. En effet, ladite réponse, qui pourrait être comprise par un enfant en CM2 au vu du nombre de mots, était écrite en anglais. Ce à quoi vous répondez avec un ton méprisant au possible de répondre en français, raison pour laquelle j'ai traduit celle-ci. J'entends la règle de principe. Cependant, je peux vous citer des dizaines de sujet ayant reçus des interventions en français, qui sont restés on ne peut plus lisibles et qui n'ont nullement nécessité l'intervention d'un soldat de la langue française dont le seul objectif dans la vie était de naviguer sur les forums pour signaler à quiconque qui croisait son chemin que sur le forum français, on rédige dans la langue de Molière. Tout cela pour dire, cher monsieur, ou chère madame, qu'en plus d'être désagréable, votre réponse n'apporte absolument rien à ce sujet. J'espère au moins qu'elle vous a permis de relâcher un peu la pression que vous semblez subir et qui vous oblige à intervenir de la sorte. Comme quoi une grande connaissance technique ou une participation active ne veut pas dire de la sympathie ou de la bienveillance pour autant. Bonne continuation. Link to comment Share on other sites More sharing options...
Mediacom87 Posted April 28, 2021 Share Posted April 28, 2021 il y a 3 minutes, korvent a dit : Encore une fois d'une grande sympathie ! Remettons les choses dans leur contexte. Je réponds à ma question pour permettre aux prochains de résoudre leur problème rapidement. En effet, ladite réponse, qui pourrait être comprise par un enfant en CM2 au vu du nombre de mots, était écrite en anglais. Ce à quoi vous répondez avec un ton méprisant au possible de répondre en français, raison pour laquelle j'ai traduit celle-ci. J'entends la règle de principe. Cependant, je peux vous citer des dizaines de sujet ayant reçus des interventions en français, qui sont restés on ne peut plus lisibles et qui n'ont nullement nécessité l'intervention d'un soldat de la langue française dont le seul objectif dans la vie était de naviguer sur les forums pour signaler à quiconque qui croisait son chemin que sur le forum français, on rédige dans la langue de Molière. Tout cela pour dire, cher monsieur, ou chère madame, qu'en plus d'être désagréable, votre réponse n'apporte absolument rien à ce sujet. J'espère au moins qu'elle vous a permis de relâcher un peu la pression que vous semblez subir et qui vous oblige à intervenir de la sorte. Comme quoi une grande connaissance technique ou une participation active ne veut pas dire de la sympathie ou de la bienveillance pour autant. Bonne continuation. vous vous êtes trompé, dont acte, il suffisait de corriger et au mieux de vous excuser, au lieu de cela vous essayez de me faire passer pour un être démoniaque qui vous persécute avec des phrases atroce pour votre intégrité mentale. Non, demander poliment à une personne de respecter les règles n'est en aucune manière méprisante, mais votre attitude prouve bien que j'ai eu raison de le faire, au moins, vous serez plus attentif la prochaine fois. et oui, excusez moi de participer à ce projet open source et communautaire pour éviter que ce forum devienne n'importe quoi. Cela n'a aucun lien avec des compétences ou autre, vous pouvez aussi participer à votre niveau en permettant cela. 2 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now