diff --git a/app/Http/Controllers/Api/PedidoController.php b/app/Http/Controllers/Api/PedidoController.php index b61b3e2..d527065 100644 --- a/app/Http/Controllers/Api/PedidoController.php +++ b/app/Http/Controllers/Api/PedidoController.php @@ -8,13 +8,31 @@ class PedidoController extends Controller { public function generarTablas() { + //GENERAR TABLA DE PEDIDOS APROBADOS + DB::unprepared("DROP VIEW if exists pedidos_aprobados; + CREATE VIEW pedidos_aprobados AS + SELECT + g.id as grupo_de_compra_id, + g.nombre as grupo_de_compra_nombre, + g.region as grupo_de_compra_region, + pr.id AS producto_id, + pr.nombre as producto_nombre, + pr.precio as producto_precio, + SUM(ps.cantidad) as cantidad_pedida, + pr.precio*SUM(ps.cantidad) as total_por_producto + FROM grupos_de_compra g + JOIN subpedidos s ON (s.grupo_de_compra_id = g.id AND s.aprobado=1) + JOIN producto_subpedido ps ON (ps.subpedido_id = s.id) + JOIN productos pr ON (pr.id = ps.producto_id) + GROUP BY g.id, g.nombre, pr.id, pr.nombre;"); + //GENERAR TABLA GENERAL DB::unprepared("DROP VIEW if exists productos_por_grupo_de_compra; SET @barrios = NULL; SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(`grupo_de_compra_nombre` = \"', `grupo_de_compra_nombre`,'\", `cantidad_pedida`,NULL)) AS \"',`grupo_de_compra_nombre`,'\"')) INTO @barrios - FROM pedidos; - SET @sql = CONCAT('CREATE VIEW productos_por_grupo_de_compra AS SELECT producto_nombre, ', @barrios, ' FROM pedidos GROUP BY producto_nombre'); + FROM pedidos_aprobados; + SET @sql = CONCAT('CREATE VIEW productos_por_grupo_de_compra AS SELECT producto_nombre, ', @barrios, ' FROM pedidos_aprobados GROUP BY producto_nombre'); PREPARE stmt FROM @sql; EXECUTE stmt;"); return "Tabla productos_por_grupo_de_compra generada. " . date('l jS \of F Y h:i:s A');