Jump to content

[TWEAK] Filtrage des commandes par nom ou référence produit


Recommended Posts

Voici un tweak qui m'a été demandé par un client et semble relativement utile.

Cette modification permet d'ajouter un champ de filtrage des commandes par référence/nom produit en utilisant un champ autocomplete ajax, code déja présent dans l'admin de prestashop.

Vous devez modifier le fichier /adminxxx/tabs/AdminOrders.php

Fichier 1.3.7 joint ci-dessous , merci à jrm et captain pour leur retour... les infos de code du post d'origine avaient été 'épurées' ... et faute de retour je n'ai pas suivi mon post , pour le coup bien inutile.

Voilà ! Vous voici doté d'un outil fort puissant et rapide à peu de frais, qui ne réutilise finalement que ce qui existe déja dans notre cher prestashop.

Pour ce qui se demandent à quoi cela peut bien servir , je répondrais que s'ils ne le savent pas c'est qu'ils n'en ont pas besoin ;)

AdminOrders.php

Share this post


Link to post
Share on other sites

  • 3 weeks later...

Super ce TWEAK, ça fait un moment que je cherchais ça, seul pb, ça ne fonctionne pas, il y a un soucis sur la deuxième partir du code, je ne connais pas grand choses dans le développement, mais notepad++ est bien utile avec ses couleurs d'affichage.

Quand je colle le code en bas de la page sous global $cookie; tout le reste du bas de la page passe en gris...

Merci d'avance pour tes éclaircissements, je me suis peut être planté.

Share this post


Link to post
Share on other sites

possible également que je me sois planté d'une accolade...
Tu peux mettre ton fichier d'origine 1.3.7 en PJ dans ton post , ainsi je le modifie , tu testes , et je le rajoute dans le post initial pour faciliter les choses à tout le monde ;) ?

Share this post


Link to post
Share on other sites

Oui bien sur, voila le code d'origine (que la fin du fichier, le fichier complet ne rentre pas) :

   public function display()
   {
       global $cookie;

       if (isset($_GET['view'.$this->table]))
           $this->viewDetails();
       else
       {
           $this->getList(intval($cookie->id_lang), !Tools::getValue($this->table.'Orderby') ? 'date_add' : NULL, !Tools::getValue($this->table.'Orderway') ? 'DESC' : NULL);
           $currency = new Currency(intval(Configuration::get('PS_CURRENCY_DEFAULT')));
           $this->displayList();
           echo ''.$this->l('Total:').' '.Tools::displayPrice($this->getTotal(), $currency).'';
       }
   }

   private function getTotal()
   {
       global $cookie;

       $total = 0;
       foreach($this->_list AS $item)
           if ($item['id_currency'] == Configuration::get('PS_CURRENCY_DEFAULT'))
               $total += floatval($item['total_paid']);
           else
           {
               $currency = new Currency(intval($item['id_currency']));
               $total += Tools::ps_round(floatval($item['total_paid']) / floatval($currency->conversion_rate), 2);
           }
       return $total;
   }
}

?>

Share this post


Link to post
Share on other sites

Super !

Faudra que je teste ça quand j'aurai un moment ...

et puis, ça serait bien si tu leur disais aux gars, par quoi il faut remplacer les [removed] dans le 3ème bloc code du 1er post ;)

Hé oui, le forum nettoie certaines choses automatiquement ...

Share this post


Link to post
Share on other sites

Super !

Faudra que je teste ça quand j'aurai un moment ...

et puis, ça serait bien si tu leur disais aux gars, par quoi il faut remplacer les [removed] dans le 3ème bloc code du 1er post ;)

Hé oui, le forum nettoie certaines choses automatiquement ...


Lol bien vu captain ! Je n'avais pas remarqué ce qui avait sauté... ça ne risquait pas de fonctionner...

J'implémente ça dans le php d'origine et j'ajuste mon premier post en conséquence .

Share this post


Link to post
Share on other sites

Effectivement c'est tres pratique, on ma demandé dernierement de sortir les commandes concernant un article et je me demandais bien comment faire. Avec ce "tweak" c'est possible. Adopté :-)

Share this post


Link to post
Share on other sites

Ca marche chez moi, c'est super.
Par contre, si y avait moyen de chercher par réf fournisseur se serait encore mieux.
En fait quand je reçois de la marchandise de mes fournisseur, vu que tous mes produits sont re référencés, je dois ouvrir les commandes une par une pour trouver à quelle commande client tel produit est affecté.

Merci encore pour ce dév qui va déjà super bien :-)

Share this post


Link to post
Share on other sites

Bonjour,

je suis ce tweak avec grand intérêt mais après comparaison du fichier avec la version 1.4 de Presta, je trouve beaucoup de différences sur la totalité du fichier.

Le fichier donné est-il à jour par rapport à la version 1.4 ou faut-il l'adapter ?

De plus, ne devrions nous pas surcharger la classe plutôt que de modifier un fichier susceptible d'être modifié dans les prochaines mises à jour de Presta ?

merci de votre retour,

Share this post


Link to post
Share on other sites

Bonjour,

je suis ce tweak avec grand intérêt mais après comparaison du fichier avec la version 1.4 de Presta, je trouve beaucoup de différences sur la totalité du fichier.

Le fichier donné est-il à jour par rapport à la version 1.4 ou faut-il l'adapter ?

De plus, ne devrions nous pas surcharger la classe plutôt que de modifier un fichier susceptible d'être modifié dans les prochaines mises à jour de Presta ?

merci de votre retour,


En effet le fichier, et c'est précisé dans le post , est une version 1.3.7
Je vais tester l'implémentation sur la 1.4 et mettre la version correspondante en plus de l'autre , si toutefois aucune mauvaise surprise ne m'oblige à revoir tout ma copie.
Merci de votre intérêt.

Share this post


Link to post
Share on other sites

en effet, j'étais déjà en train de lire tes propres écrits sur la création d'une surcharge
merci de ta prévenance.
Si je comprends bien, pas d'autre solution que de modifier le core ? même en passant par un module la surcharge d'adminTabs est impossible ?

c'est quand même bien dommage ça, l'équipe de dèv. de Presta n'a pas prévu d'ajouter cette possibilité dans un avenir très proche ? :-S

Share this post


Link to post
Share on other sites

un module qui installe son propre tab en lieu et place de l'autre , si bien sûr , c'est possible et guère compliqué.
Cela dit je crains que la finalité reste la même, parce qu'on automatise un truc qui revient à peu près au même : dans ce cas le module devra posséder et être en mesure de restaurer chaque version de presta.
Il faut que le module suive les versions.

Mon post original posait problème car du code avait été épuré par le forum , mais c'est en tout cas justement pour cela que j'appelle ça un tweak , car en deux copier/coller on a mis en place le truc...

Pour info mes tests sur la 1.4 me font tourner en bourrique ... pour une raison saugrenue , pas de résultats ajax ... je loggue les appels mais la requete n'est mêem pas éxécutée...

Classes jquery chargées etc ... bizarre je vois pas ou je pêche.

Share this post


Link to post
Share on other sites

Vraiment bien, mais ne permet que la recherche par référence ou nom du produit.
Le top aurait été une recherche aussi sur la référence fournisseur.

Merci encore pour ce tweak, ça me facilite déjà bien la vie.

PS : Je cherche aussi à faire des livraisons partielles, j'ai pas mal cherché sur le fofo, mais rien de bien concluant.

Share this post


Link to post
Share on other sites

  • 11 months later...

Bonjour à tous,

J'ai fini par migrer sur la version 1.4.6.2 et là c'est le drame, je n'ai plus ce tweak...

 

Je ne trouve rien de comparable dans les modules, bref, c'est la loose.

Y aurait il un dévelopeur qui aurait travaillé sur ce sujet?

Merci d'avance.

Share this post


Link to post
Share on other sites

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
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More