forked from nathalie/pedi2
Endpoint regenera vistas
This commit is contained in:
parent
72bbaac9a6
commit
8502fb72d9
|
@ -8,13 +8,31 @@ class PedidoController extends Controller
|
||||||
{
|
{
|
||||||
public function generarTablas()
|
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
|
//GENERAR TABLA GENERAL
|
||||||
DB::unprepared("DROP VIEW if exists productos_por_grupo_de_compra;
|
DB::unprepared("DROP VIEW if exists productos_por_grupo_de_compra;
|
||||||
SET @barrios = NULL;
|
SET @barrios = NULL;
|
||||||
SELECT
|
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
|
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;
|
FROM pedidos_aprobados;
|
||||||
SET @sql = CONCAT('CREATE VIEW productos_por_grupo_de_compra AS SELECT producto_nombre, ', @barrios, ' FROM pedidos GROUP BY producto_nombre');
|
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;
|
PREPARE stmt FROM @sql;
|
||||||
EXECUTE stmt;");
|
EXECUTE stmt;");
|
||||||
return "Tabla productos_por_grupo_de_compra generada. " . date('l jS \of F Y h:i:s A');
|
return "Tabla productos_por_grupo_de_compra generada. " . date('l jS \of F Y h:i:s A');
|
||||||
|
|
Loading…
Reference in New Issue