kitesurfer76 Posted November 7, 2015 Share Posted November 7, 2015 Buenos días, He conseguido via el gestor de .sql exportar las próximas fechas de entrega de cada artículo: SELECT pso.date_delivery_expected, pso.supplier_name, pso.id_supply_order_state, pso.id_supply_order, psod.id_product FROM ps_supply_order pso LEFT JOIN ps_supply_order_detail psod ON (pso.id_supply_order = psod.id_supply_order) WHERE id_supply_order_state = '3' Ahora tengo para cada id de producto, su fecha de entrega (solo para los pedidos de compra en espera de entrega). Lo que me gsutaría es mostrar esa información directamente en la ficha del producto en el Front de forma automática. Me imagino que habría que modificar el fichero product.tpl, pero estoy un poco perdido. {/if} {if ($display_qties == 1 && !$PS_CATALOG_MODE && $PS_STOCK_MANAGEMENT && $product->available_for_order)} <!-- number of item in stock --> <p id="pQuantityAvailable"{if $product->quantity <= 0} style="display: none;"{/if}> <span id="quantityAvailable">{$product->quantity|intval}</span> <span {if $product->quantity > 1} style="display: none;"{/if} id="quantityAvailableTxt">{l s='Item'}</span> <span {if $product->quantity == 1} style="display: none;"{/if} id="quantityAvailableTxtMultiple">{l s='Items'}</span> </p> {/if} <!-- availability or doesntExist --> <p id="availability_statut"{if !$PS_STOCK_MANAGEMENT || ($product->quantity <= 0 && !$product->d && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}> {*<span id="availability_label">{l s='Availability:'}</span>*} <span id="availability_value" class="label{if $product->quantity <= 0 && !$allow_oosp} label-danger{elseif $product->quantity <= 0} label-warning{else} label-success{/if}">{if $product->quantity <= 0}{if $PS_STOCK_MANAGEMENT && $allow_oosp}{$product->available_later}{else}{l s='This product is no longer in stock'}{/if}{elseif $PS_STOCK_MANAGEMENT}{$product->available_now}{/if}</span> </p> {if $PS_STOCK_MANAGEMENT} {if !$product->is_virtual}{hook h="displayProductDeliveryTime" product=$product}{/if} <p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Warning: Last items in stock!'}</p> {/if} <p id="availability_date"{if ($product->quantity > 0) || !$product->available_for_order || $PS_CATALOG_MODE || !isset($product->available_date) || $product->available_date < $smarty.now|date_format:'%Y-%m-%d'} style="display: none;"{/if}> <span id="availability_date_label">{l s='Availability date:'}</span> <span id="availability_date_value">{if Validate::isDate($product->available_date)}{dateFormat date=$product->available_date full=false}{/if}</span> </p> Gracias. Gilles Link to comment Share on other sites More sharing options...
ventura Posted November 7, 2015 Share Posted November 7, 2015 Tienes que incluir (override) esa consulta en una funcion publica en el classes/ Product.php . Algo asi por ejemplo, que tendras que formatear con los prefijos y nombres de los campos. Lo fundamental es que asocies el id del producto con el campo equivalente de la tabla que quieres incluir public function getDateDeliveryExpected() { return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' 'SELECT `pso.date_delivery_expected`, `pso.supplier_name`, `pso.id_supply_order_state`, `pso.id_supply_order`, `psod.id_product` FROM `'._DB_PREFIX_.'supply_order pso` WHERE `psod.id_product` = '.(int)$this->id AND `psod.id_product`= 3 '); } Luego ya podras acceder al array desde el tpl con $product->getDateDeliveryExpected() Link to comment Share on other sites More sharing options...
kitesurfer76 Posted November 7, 2015 Author Share Posted November 7, 2015 Ok gracias, bueno ya veo que en Prestashop Cloud no tengo aceso a este fichero product.php ... así que me voy a tener que cambiar a la versión descargable. Link to comment Share on other sites More sharing options...
ventura Posted November 7, 2015 Share Posted November 7, 2015 Ok gracias, bueno ya veo que en Prestashop Cloud no tengo aceso a este fichero product.php ... así que me voy a tener que cambiar a la versión descargable. Si, si estas en Cloud no se puede. Puedes irlo preparando en local 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