53 lines
2.0 KiB
SQL
53 lines
2.0 KiB
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`conveyorExpedition_Add`(vStarted DATETIME, vEnded DATETIME)
|
|
BEGIN
|
|
|
|
|
|
DECLARE startingMinute INT;
|
|
|
|
TRUNCATE vn.conveyorExpedition;
|
|
|
|
INSERT INTO vn.conveyorExpedition( expeditionFk,
|
|
created,
|
|
length,
|
|
width,
|
|
height,
|
|
routeFk,
|
|
productionMinute,
|
|
truck,
|
|
criterion,
|
|
conveyorBuildingClassFk)
|
|
SELECT e.id,
|
|
e.created,
|
|
10 * p.depth as depth,
|
|
10 * p.width as width,
|
|
10 * p.height as height,
|
|
IFNULL(t.routeFk,am.agencyFk) routeFk,
|
|
hour(e.created) * 60 + minute(e.created),
|
|
IFNULL(et.description , a.name),
|
|
IFNULL(t.routeFk,am.agencyFk) criterion,
|
|
IFNULL(p.conveyorBuildingClassFk , pc.defaultConveyorBuildingClass)
|
|
FROM vn.expedition e
|
|
JOIN vn.ticket t ON t.id = e.ticketFk
|
|
JOIN vn.packaging p ON p.id = e.packagingFk
|
|
LEFT JOIN vn.zone z ON z.id = t.zoneFk
|
|
LEFT JOIN vn.agencyMode am ON am.id = z.agencyModeFk
|
|
LEFT JOIN vn.agency a ON a.id = am.agencyFk
|
|
LEFT JOIN vn.routesMonitor rm ON rm.routeFk = t.routeFk
|
|
LEFT JOIN vn.expeditionTruck et ON et.id = rm.expeditionTruckFk
|
|
JOIN vn.packagingConfig pc
|
|
WHERE t.warehouseFk IN (60,1,44)
|
|
AND e.created BETWEEN vStarted AND vEnded
|
|
AND p.height < 140
|
|
AND p.width < 60
|
|
AND p.depth < 125;
|
|
|
|
SELECT MIN(productionMinute) INTO startingMinute
|
|
FROM vn.conveyorExpedition ce ;
|
|
|
|
UPDATE vn.conveyorExpedition
|
|
SET productionMinute = productionMinute - startingMinute;
|
|
|
|
END$$
|
|
DELIMITER ;
|