feat: refs #4560 refactor
This commit is contained in:
parent
b4046de190
commit
5b482048a1
|
@ -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$$
|
||||
|
|
Loading…
Reference in New Issue