|
|
|
@ -211,8 +211,6 @@ proc: BEGIN
|
|
|
|
|
salesInParkingCount INT DEFAULT 0)
|
|
|
|
|
ENGINE = MEMORY;
|
|
|
|
|
|
|
|
|
|
-- Insertamos todos los tickets que tienen productos parkineados
|
|
|
|
|
-- en sectores de previa, segun el sector
|
|
|
|
|
CREATE OR REPLACE TEMPORARY TABLE tItemShelvingStock
|
|
|
|
|
(PRIMARY KEY(itemFk, sectorFk))
|
|
|
|
|
ENGINE = MEMORY
|
|
|
|
@ -245,7 +243,6 @@ proc: BEGIN
|
|
|
|
|
AND s.quantity > 0
|
|
|
|
|
GROUP BY pb.ticketFk;
|
|
|
|
|
|
|
|
|
|
-- Se calcula la cantidad de productos que estan ya preparados porque su saleGroup está aparcado
|
|
|
|
|
UPDATE tmp.ticketWithPrevia twp
|
|
|
|
|
JOIN (
|
|
|
|
|
SELECT pb.ticketFk, COUNT(DISTINCT s.id) salesInParkingCount
|
|
|
|
@ -259,12 +256,28 @@ proc: BEGIN
|
|
|
|
|
) sub ON twp.ticketFk = sub.ticketFk
|
|
|
|
|
SET twp.salesInParkingCount = sub.salesInParkingCount;
|
|
|
|
|
|
|
|
|
|
-- Marcamos como pendientes aquellos que no coinciden las cantidades
|
|
|
|
|
UPDATE tmp.productionBuffer pb
|
|
|
|
|
JOIN tmp.ticketWithPrevia twp ON twp.ticketFk = pb.ticketFk
|
|
|
|
|
SET pb.previousWithoutParking = TRUE
|
|
|
|
|
WHERE twp.salesCount > twp.salesInParkingCount;
|
|
|
|
|
|
|
|
|
|
-- hasPlantTray
|
|
|
|
|
ALTER TABLE tmp.productionBuffer
|
|
|
|
|
ADD hasPlantTray BOOL DEFAULT FALSE;
|
|
|
|
|
|
|
|
|
|
UPDATE tmp.productionBuffer pb
|
|
|
|
|
JOIN sale s ON s.ticketFk = pb.ticketFk
|
|
|
|
|
JOIN item i ON i.id = s.itemFk
|
|
|
|
|
JOIN itemType it ON it.id = i.typeFk
|
|
|
|
|
JOIN itemCategory ic ON ic.id = it.categoryFk
|
|
|
|
|
JOIN cache.last_buy lb ON lb.warehouse_id = vWarehouseFk AND lb.item_id = s.itemFk
|
|
|
|
|
JOIN buy b ON b.id = lb.buy_id
|
|
|
|
|
JOIN packaging p ON p.id = b.packagingFk
|
|
|
|
|
JOIN productionConfig pc
|
|
|
|
|
SET hasPlantTray = TRUE
|
|
|
|
|
WHERE ic.code = 'plant'
|
|
|
|
|
AND p.`depth` >= pc.minPlantTrayLength;
|
|
|
|
|
|
|
|
|
|
DROP TEMPORARY TABLE
|
|
|
|
|
tmp.productionTicket,
|
|
|
|
|
tmp.ticket,
|
|
|
|
|