Innla Posted December 22, 2021 Share Posted December 22, 2021 (edited) Hola, en nuestro Prestashop tenemos quitado el campo 'lastname' y solo utilizamos el 'firstname' en el que introducimos el nombre completo: nombre + apellido. Uno de los problemas que esto nos causa es que en el listado de pedidos la columna cliente, por defecto, muestra la primera letra del campo 'firstname' y el 'lastname' completo. Como no tenemos campo 'lastname', solo nos muestra la inicial del nombre, lo que es muy poco útil. Para solucionarlo, estoy utilizando el hook 'hookActionOrderGridQueryBuilderModifier' con el cual he conseguido mostrar el campo 'firstname' completo correctamente. Pero aun me dan problemas las búsquedas por nombre: Si escribo solo el nombre --> busca correctamente si escribo nombre + espacio + apellido --> no encuentra resultados Si escribo nombre y además utilizo otros filtros, por ejemplo, estado de pedido = enviado -> solo filtra por nombre, no filtra por estado de pedido A continuación muestro el código que tengo hasta ahora: public function hookActionOrderGridQueryBuilderModifier(array $params){ $searchQueryBuilder = $params['search_query_builder']; $searchCriteria = $params['search_criteria']; $countQueryBuilder = $params['count_query_builder']; $searchQueryBuilder->addSelect('cu.`firstname` AS `customer`'); // for search action foreach ($searchCriteria->getFilters() as $filterName => $filterValue) { if ('customer' === $filterName) { $searchQueryBuilder->where('cu.`firstname` like :' . $filterName); $filterValue = substr_replace($filterValue, '%', 0, 0); $filterValue = substr_replace($filterValue, '%', strlen($filterName), 0); $searchQueryBuilder->setParameter($filterName, $filterValue); continue; } } } Edited December 22, 2021 by Innla (see edit history) 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