joanagr90 Posted October 26, 2018 Share Posted October 26, 2018 Buenas, tengo un problema y espero que puedan ayudarme. Actualmente estoy trabajando con Prestashop 1.6 y necesito saber como puedo poner que la referencia id sea igual al pedido id. El caso es que con el siguiente código se pone igual, pero el problema es que cuando elimino el pedido la referencia se pierde. Necesito que cuando se haga un nuevo pedido la referencia siga siendo la misma que el id pedido. Ese es el código que hace que la referencia sea igual al pedido: $last_id = Db::getInstance()->getValue(' SELECT MAX(id_order) FROM '._DB_PREFIX_.'orders'); return str_pad((int)$last_id + 1, 9, '000000000', STR_PAD_LEFT); Ahora necesito saber lo siguiente. Adjunto pantallazos para que vean. Espero que puedan ayudarme. Gracias Link to comment Share on other sites More sharing options...
gusman126 Posted October 26, 2018 Share Posted October 26, 2018 (edited) Necesitas esto? http://nemops.com/prestashop-replace-order-references-with-ids/ los otros pantallazos no se ven Edited October 26, 2018 by gusman126 (see edit history) Link to comment Share on other sites More sharing options...
nadie Posted October 26, 2018 Share Posted October 26, 2018 (edited) Hace unos años (2013), comente uno de los módulos gratuitos que tenias por el foro (que te simulaban la función), en mi blog => https://victor-rodenas.com/2013/02/07/guia-usar-el-id-del-pedido-y-no-el-numero-de-referencia-en-prestashop-1-5/ Con el tiempo, han salido módulos nuevos, etc. Por ejemplo, este módulo gratuito => https://www.prestashop.com/forums/topic/548800-free-module-custom-order-reference/ Edited October 26, 2018 by nadie (see edit history) Link to comment Share on other sites More sharing options...
joanagr90 Posted October 28, 2018 Author Share Posted October 28, 2018 Eso no me sirve, lo que necesito exactamente es que cuando haga un pedido nuevo, la referencia sea igual al id del pedido y que cuando elimine un pedido y haga otro nuevo la referencia sea igual. Por ejemplo, cuando hago un pedido tiene el id 49, pues necesito que la referencia sea 49. Si yo borro el pedido con el id 49, y hago uno nuevo, este será id 50 pues necesito que la referencia sea 50. Adjunto un pantallazo para que puedan verlo. He añadido en public_html/override/classes/order/Order.php el siguiente código: public static function generateReference() { $last_id = Db::getInstance()->getValue(' SELECT MAX(id_order) FROM '._DB_PREFIX_.'orders'); return str_pad((int)$last_id + 1, 9, '000000000', STR_PAD_LEFT); } Muchas gracias Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted October 28, 2018 Share Posted October 28, 2018 13 minutes ago, joanagr90 said: Eso no me sirve, lo que necesito exactamente es que cuando haga un pedido nuevo, la referencia sea igual al id del pedido y que cuando elimine un pedido y haga otro nuevo la referencia sea igual. Por ejemplo, cuando hago un pedido tiene el id 49, pues necesito que la referencia sea 49. Si yo borro el pedido con el id 49, y hago uno nuevo, este será id 50 pues necesito que la referencia sea 50. Adjunto un pantallazo para que puedan verlo. He añadido en public_html/override/classes/order/Order.php el siguiente código: public static function generateReference() { $last_id = Db::getInstance()->getValue(' SELECT MAX(id_order) FROM '._DB_PREFIX_.'orders'); return str_pad((int)$last_id + 1, 9, '000000000', STR_PAD_LEFT); } Muchas gracias Me cuelo por este tema. Uno de los módulos que te ha comentado @nadie, hace algo parecido o similar a lo que comentas. De todos modos, un consejo, no editas directamente la clase, haz un override de la clase. Suerte Link to comment Share on other sites More sharing options...
Eusebio100 Posted October 28, 2018 Share Posted October 28, 2018 (edited) Yo también me cuelo. Como han comentado hay módulos que hacen lo que pides, yo utilizo el "Order reference change mod" que va perfecto en ps 1.6 y lo puedes configurar para que utilice el id del pedido como referencia de pedido, entre otras opciones que lleva. Edited October 28, 2018 by Eusebio100 (see edit history) 1 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