jhonnynho Posted September 19, 2014 Share Posted September 19, 2014 Hey que tal, tengo una duda. En la parte administrativa de prestashop, en el inicio, hay una tabla de estadisticas donde reflejan el total de ganancias por dia, mes, año, depende de como lo quiera ver la persona. El caso es que el total de ganancias ahi reflejados aparecen sin IVA, de hecho si se pone el cursor encima de ventas aparece un mensaje que dice "Sum of revenue (excl. tax)" Es decir suma de ventas, tasas excluidas... Mi pregunta es, como hacer para que se incluya el IVA en esa sumatoria! Cualquier cosa que sepa o si alguien lo hizo ayudenme. Gracias. Adjunto imagen si alguien se pierde donde esta esa tabla. Link to comment Share on other sites More sharing options...
Tamagochi Posted October 10, 2014 Share Posted October 10, 2014 Hola yo no consigo que muestre nada, como lo lograste tu? Salu2 Link to comment Share on other sites More sharing options...
xinito Posted December 9, 2014 Share Posted December 9, 2014 Buenas, para que aparezca el total de ventas con iva incluido, hay que modificar el archivo AdminStatsController.php en la carpeta controllers/admin/. El módulo dashgoals es el que hace que muestre las estadísticas en el inicio de la administración y toma los valores de este archivo. Sobre la línea 181 del AdminStatsController se define el total de ventas y debemos modificar las líneas en las que toma el valor SUM(total_paid_tax_excl / o.conversion_rate) as sales y cambiarlas por SUM(total_paid_real / o.conversion_rate) as sales: public static function getTotalSales($date_from, $date_to, $granularity = false) { if ($granularity == 'day') { $sales = array(); $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(' SELECT LEFT(`invoice_date`, 10) as date, SUM(total_paid_real / o.conversion_rate) as sales FROM `'._DB_PREFIX_.'orders` o LEFT JOIN `'._DB_PREFIX_.'order_state` os ON o.current_state = os.id_order_state WHERE `invoice_date` BETWEEN "'.pSQL($date_from).' 00:00:00" AND "'.pSQL($date_to).' 23:59:59" AND os.logable = 1 '.Shop::addSqlRestriction(false, 'o').' GROUP BY LEFT(`invoice_date`, 10)'); foreach ($result as $row) $sales[strtotime($row['date'])] = $row['sales']; return $sales; } elseif ($granularity == 'month') { $sales = array(); $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(' SELECT LEFT(`invoice_date`, 7) as date, SUM(total_paid_real / o.conversion_rate) as sales FROM `'._DB_PREFIX_.'orders` o LEFT JOIN `'._DB_PREFIX_.'order_state` os ON o.current_state = os.id_order_state WHERE `invoice_date` BETWEEN "'.pSQL($date_from).' 00:00:00" AND "'.pSQL($date_to).' 23:59:59" AND os.logable = 1 '.Shop::addSqlRestriction(false, 'o').' GROUP BY LEFT(`invoice_date`, 7)'); foreach ($result as $row) $sales[strtotime($row['date'].'-01')] = $row['sales']; return $sales; } else return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue(' SELECT SUM(total_paid_real / o.conversion_rate) FROM `'._DB_PREFIX_.'orders` o LEFT JOIN `'._DB_PREFIX_.'order_state` os ON o.current_state = os.id_order_state WHERE `invoice_date` BETWEEN "'.pSQL($date_from).' 00:00:00" AND "'.pSQL($date_to).' 23:59:59" AND os.logable = 1 '.Shop::addSqlRestriction(false, 'o')); } Espero que os sirva. Link to comment Share on other sites More sharing options...
Recommended Posts