Todo lo que querrías saber antes de instalar.
Una mirada detallada a cómo funciona Módulo Ventas Producto PrestaShop 8 — df_productsales, por qué lo construimos así y la lógica detrás de las características anteriores.
Tres métricas de ventas directamente en tu lista de productos
Por defecto, la lista de productos de PrestaShop 8 muestra referencia, nombre, categoría, precio y cantidad en stock, pero ningún dato de ventas. Para saber qué productos se venden hay que ir a las estadísticas o cruzar los informes de pedidos. df_productsales corrige eso en una instalación: las columnas Ventas, Devoluciones y Ventas netas aparecen directamente en la tabla, en la misma fila que cada producto.
Cálculo preciso y fiable de ventas y devoluciones
Las Ventas se calculan sumando product_quantity en las líneas de order_detail cuyo pedido está en un estado válido (pagado, enviado, entregado vía PS_OS_PAYMENT, PS_OS_SHIPPING, PS_OS_DELIVERED). Los pedidos cancelados o pendientes se excluyen. Las Devoluciones suman product_quantity_refunded sin filtro de estado, ya que un reembolso puede registrarse independientemente del estado final del pedido, lo que evita subestimar las devoluciones en tiendas que usan un estado específico para pedidos reembolsados.
Orden y filtros min/max directamente en la tabla
Cada columna es ordenable haciendo clic en su encabezado, exactamente como las columnas nativas. El filtro min/max (NumberMinMaxFilterType de Symfony PrestaShop) permite filtrar los productos por rango de ventas: por ejemplo, mostrar solo los productos vendidos entre 5 y 20 veces para identificar artículos de rotación media, o filtrar los productos con más de 0 devoluciones para auditoría de calidad. El filtrado funciona mediante SQL HAVING para no romper el GROUP BY de la consulta principal.
Cero impacto en el rendimiento e instalación limpia
El módulo no crea ninguna tabla SQL al instalar. Los datos se calculan al vuelo mediante subconsultas añadidas a la consulta principal del grid a través del hook actionProductGridQueryBuilderModifier. El impacto en el rendimiento se limita a las cargas de la página de lista de productos en el back-office: ningún cálculo se realiza en el front-office. En un catálogo de unos pocos cientos de productos, las subconsultas tienen un coste despreciable gracias a los índices nativos de PrestaShop sobre id_product e id_order.
No hay valoraciones aún.