Joseph90 Posted April 11, 2016 Share Posted April 11, 2016 (edited) Bonjour à tous, avec un volume croissant de commandes sur ma boutique, je souhaitais installer un module capable de m'éditer la liste produits à expédier. Rien ne correspondait exactement à mes besoins, j'ai donc créé une requête SQL facilement avec le gestionnaire SQL des paramètres avancés de Prestashop 1.5. SELECT o.id_order AS Cmd, o.reference AS Ref, c.firstname AS Prenom, c.lastname AS Nom, od.product_quantity AS Qte, od.product_name AS Produits_commandes, cm.message AS Message_cmd FROM ps_order_detail od LEFT JOIN ps_orders o ON (od.id_order = o.id_order) LEFT JOIN ps_customer c ON (o.id_customer = c.id_customer) LEFT JOIN ps_customer_thread ct ON (od.id_order = ct.id_order) LEFT JOIN ps_customer_message cm ON (ct.id_customer_thread = cm.id_customer_thread) WHERE o.current_state = 2 OR o.current_state = 3 ORDER BY o.id_order Cette requête affiche simplement les commandes, le nom du client associé, la quantité de chaque produit et les éventuels messages de la part du client (pratique si un client vous rappelle de lui expédier un produit en bleu comme vous lui avez promis au téléphone). Les commandes affichées sont à l'état "paiement accepté" (2 chez moi) ou "préparation en cours" (3 chez moi). Libre à vous de l'adapter ! Pour les plus exigeants, j'ai amélioré ma requête avec la gestion des images produits SELECT o.id_order AS Cmd, o.reference AS Ref, c.firstname AS Prenom, c.lastname AS Nom, od.product_quantity AS Qte, od.product_name AS Produits_commandes, CONCAT('<img src="/', p.id_product, '-', il.id_image,'-small_retina/', pl.link_rewrite, '.jpg" width="64" height="64"/> ') AS Image, cm.message AS Message_cmd FROM ps_order_detail od LEFT JOIN ps_orders o ON (od.id_order = o.id_order) LEFT JOIN ps_product p ON (od.product_id = p.id_product) LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product) LEFT JOIN ps_image i ON (od.product_id = i.id_product) LEFT JOIN ps_image_lang il ON (i.id_image = il.id_image) LEFT JOIN ps_customer c ON (o.id_customer = c.id_customer) LEFT JOIN ps_customer_thread ct ON (od.id_order = ct.id_order) LEFT JOIN ps_customer_message cm ON (ct.id_customer_thread = cm.id_customer_thread) WHERE il.id_lang = 2 AND pl.id_lang = 2 AND i.cover = 1 AND (o.current_state = 2 OR o.current_state = 3) ORDER BY o.id_order DESC Seules quelques images ne s'affiche pas chez moi sans que je n'ai trouvé pourquoi... Il m'a également fallu inscrire cette seconde requête directement dans la BDD car prestashop supprime le contenu de la fonction CONCAT() sans raison. Voila, parfois les modules ne sont pas nécessaires et Prestashop offre déjà des outils adaptables. Testé sur Prestashop 1.5.6.2 Edited March 3, 2018 by Joseph90 (see edit history) 1 Link to comment Share on other sites More sharing options...
Patrick POLBOS Orchi Posted April 11, 2016 Share Posted April 11, 2016 (edited) fonctionne parfaitement, merci juste les images mais je n'ai pâs de type d'image -small_retina, c'est peut être cela toutefois je ne parvins pas à trouver la bonne modif (J'ai modifier le préfix PS par le miens mais pour la suite je bloque) Edited April 11, 2016 by Patrick POLBOS Orchi (see edit history) Link to comment Share on other sites More sharing options...
Joseph90 Posted April 11, 2016 Author Share Posted April 11, 2016 Small_retina est un format d'image perso en effet. Il vous suffit de changer "small_retina" par le nom d'une taille d'image que vous trouverez dans "Préférences > Images" dans le back office. Cela devrait marcher. Link to comment Share on other sites More sharing options...
Patrick POLBOS Orchi Posted April 12, 2016 Share Posted April 12, 2016 merci, j'ai du fairte quelques autres modif et au final ça fonctionne avec ça : SELECT o.id_order AS Cmd, o.reference AS Ref, c.firstname AS Prenom, c.lastname AS Nom, od.product_quantity AS Qte, od.product_name AS Produits_commandes,CONCAT('<img src="/boutique/', il.id_image,'-medium/', pl.link_rewrite, '.jpg" width="90" height="75"/> ') AS Image, cm.message AS Message_cmdFROM shop_order_detail odLEFT JOIN shop_orders o ON (od.id_order = o.id_order)LEFT JOIN shop_product p ON (od.product_id = p.id_product)LEFT JOIN shop_product_lang pl ON (p.id_product = pl.id_product)LEFT JOIN shop_image i ON (od.product_id = i.id_product)LEFT JOIN shop_image_lang il ON (i.id_image = il.id_image)LEFT JOIN shop_customer c ON (o.id_customer = c.id_customer)LEFT JOIN shop_customer_thread ct ON (od.id_order = ct.id_order)LEFT JOIN shop_customer_message cm ON (ct.id_customer_thread = cm.id_customer_thread)WHERE il.id_lang = 2AND pl.id_lang = 2AND i.cover = 1AND (o.current_state = 2 OR o.current_state = 3)ORDER BY o.id_order DESC bonne journée Link to comment Share on other sites More sharing options...
Jokeriders Posted April 17, 2016 Share Posted April 17, 2016 bonjour, une version 1.6 bientot ? 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