Jump to content

Récupérer toutes les commandes d'un certain statut


Kearz

Recommended Posts

Bonjour,

 

 

J'ai un petit problème, je cherche a faire un module (prestashop v1.3.3.0) mais pour cela j'ai besoin de récupérer toutes les commandes d'un statut spécifique.

 

J'ai tenté une requête SQL:

SELECT * FROM(
  SELECT `id_order`, `date_add`, `id_order_state`
   FROM `ps_order_history`
   GROUP BY `id_order`
   ORDER BY `date_add` DESC) as tmp
WHERE tmp.`id_order_state`=14

 

La sous requête me permet de récupérer (normalement) le dernier statut d'une commande. Le problème est que sur certaines commandes il y a un changement de statut dans la même seconde..

 

Je me retrouve donc avec un choix au "hasard" de MySQL et je récupère pas toutes les commandes que je souhaite.

 

Une idée? :)

Merci d'avance

Link to comment
Share on other sites

Jeckyl,

 

En 1.3.3.0, cette méthode n'existe pas.

 

Par contre, si ça peut aider Kearz, en voici le code:

public static function getOrderIdsByStatus($id_order_state)
{
 $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS('
 SELECT id_order
 FROM '._DB_PREFIX_.'orders o
 WHERE '.(int)$id_order_state.' = (
  SELECT id_order_state
  FROM '._DB_PREFIX_.'order_history oh
  WHERE oh.id_order = o .id_order
  ORDER BY date_add DESC, id_order_history DESC
  LIMIT 1
 )
 ORDER BY invoice_date ASC');
 $orders = array();
 foreach ($result AS $order)
  $orders[] = (int)($order['id_order']);
 return $orders;
}

Edited by J. Danse (see edit history)
  • Like 1
Link to comment
Share on other sites

@Jeckyl:

 

J'utilise prestashop depuis 3 mois et je code des modules que depuis deux semaines. (Alors que j'avais jamais fait de PHP5, juste du 4) Je connais quasiment aucune classe.. (Mais j'ai cherché, elle y est pas dans ma version)

Y aurait pas une documentation style javadoc? :P (J'ai trouver des documentations mais c'est de l'ordre de quelques pages, c'est light)

 

@J Danse:

c'est parfait! Merci ;)

 

EDIT: Merci, ça peut être pratique

Edited by Kearz (see edit history)
Link to comment
Share on other sites

Je pense qu'il existe une doc, non officielle et réalisé par quelqu'un de la communauté., mais le lien n'a jamais été vraiment publique (surement pour en mesurer l'audience).

 

En attendant, j'ai ceci: http://www.prestaedit.com/ressources/libs/PrestaShop_1.5.2.0.lib

 

Cela permet de voir l'ensemble des classes & méthodes disponibles sur cette version.

  • Like 1
Link to comment
Share on other sites

  • 4 months later...
  • 1 year later...

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...