From 5b482048a113a8747d6fe459a6446274b743e021 Mon Sep 17 00:00:00 2001 From: jgallego Date: Tue, 11 Jun 2024 07:41:33 +0200 Subject: [PATCH] feat: refs #4560 refactor --- .../vn/procedures/expeditionPallet_build.sql | 58 +++++++++---------- 1 file changed, 27 insertions(+), 31 deletions(-) diff --git a/db/routines/vn/procedures/expeditionPallet_build.sql b/db/routines/vn/procedures/expeditionPallet_build.sql index bea56eae6..ba0ba3240 100644 --- a/db/routines/vn/procedures/expeditionPallet_build.sql +++ b/db/routines/vn/procedures/expeditionPallet_build.sql @@ -7,9 +7,9 @@ BEGIN * en cuyo caso actualiza ese pallet. * * @param vExpeditions JSON_ARRAY con esta estructura [exp1, exp2, exp3, ...] - * @param vArcId INT Identificador de vn.arcRead - * @param vWorkerFk INT Identificador de vn.worker - * @param out vPalletFk Identificador de vn.expeditionPallet + * @param vArcId INT Identificador de arcRead + * @param vWorkerFk INT Identificador de worker + * @param out vPalletFk Identificador de expeditionPallet */ DECLARE vCounter INT; DECLARE vExpeditionFk INT; @@ -23,9 +23,9 @@ BEGIN r.id routeFk, ep.id palletFk FROM - vn.expedition e, - vn.route r, - vn.expeditionPallet ep + expedition e, + route r, + expeditionPallet ep LIMIT 0; ALTER TABLE tExpedition ADD PRIMARY KEY (expeditionFk); @@ -39,53 +39,49 @@ BEGIN INSERT IGNORE INTO tExpedition(expeditionFk, routeFk, palletFk) SELECT vExpeditionFk, t.routeFk, es.palletFk - FROM vn.expedition e - LEFT JOIN vn.ticket t ON t.id = e.ticketFk - LEFT JOIN vn.expeditionScan es ON es.expeditionFk = e.id + FROM expedition e + LEFT JOIN ticket t ON t.id = e.ticketFk + LEFT JOIN expeditionScan es ON es.expeditionFk = e.id WHERE e.id = vExpeditionFk; END WHILE; - SELECT palletFk INTO vPalletFk - FROM ( - SELECT palletFk, count(*) n - FROM tExpedition - WHERE palletFk > 0 - GROUP BY palletFk - ORDER BY n DESC - LIMIT 100 ) sub + SELECT palletFk + INTO vPalletFk + FROM tExpedition + WHERE palletFk > 0 + GROUP BY palletFk + ORDER BY COUNT(*) DESC LIMIT 1; IF vPalletFk IS NULL THEN - SELECT roadmapStopFk - INTO vTruckFk - FROM ( - SELECT rm.roadmapStopFk, count(*) n - FROM vn.routesMonitor rm - JOIN tExpedition e ON e.routeFk = rm.routeFk - GROUP BY roadmapStopFk - ORDER BY n DESC - LIMIT 1) sub; + SELECT rm.roadmapStopFk + INTO vTruckFk + FROM routesMonitor rm + JOIN tExpedition e ON e.routeFk = rm.routeFk + GROUP BY rm.roadmapStopFk + ORDER BY COUNT(*) DESC + LIMIT 1; IF vTruckFk IS NULL THEN CALL util.throw ('TRUCK_NOT_AVAILABLE'); END IF; - INSERT INTO vn.expeditionPallet(truckFk) + INSERT INTO expeditionPallet(truckFk) VALUES(vTruckFk); SET vPalletFk = LAST_INSERT_ID(); END IF; - INSERT INTO vn.expeditionScan(expeditionFk, palletFk, workerFk) + INSERT INTO expeditionScan(expeditionFk, palletFk, workerFk) SELECT expeditionFk, vPalletFk, vWorkerFk FROM tExpedition ON DUPLICATE KEY UPDATE palletFk = vPalletFk, workerFk = vWorkerFk; SELECT printerFk INTO vPrinterFk - FROM vn.arcRead + FROM arcRead WHERE id = vArcId; - CALL vn.report_print( + CALL report_print( 'LabelPalletExpedition', vPrinterFk, account.myUser_getId(), @@ -93,7 +89,7 @@ BEGIN 'high' ); - UPDATE vn.expeditionPallet SET isPrint = TRUE WHERE id = vPalletFk; + UPDATE expeditionPallet SET isPrint = TRUE WHERE id = vPalletFk; DROP TEMPORARY TABLE tExpedition; END$$