refactor: refs #7686 update alert level conditions to only check for 'FREE'
gitea/salix/pipeline/pr-dev This commit looks good Details

This commit is contained in:
Javi Gallego 2025-02-03 09:07:08 +01:00
parent 3965441f7f
commit adba4765ed
10 changed files with 19 additions and 19 deletions

View File

@ -9,7 +9,7 @@ BEGIN
DECLARE vCalc INT; DECLARE vCalc INT;
DECLARE vWarehouseFk INT; DECLARE vWarehouseFk INT;
DECLARE cWarehouses CURSOR FOR DECLARE cWarehouses CURSOR FOR
SELECT id SELECT id
FROM vn.warehouse FROM vn.warehouse
WHERE isInventory; WHERE isInventory;
@ -22,13 +22,13 @@ BEGIN
read_loop: LOOP read_loop: LOOP
SET vDone = FALSE; SET vDone = FALSE;
FETCH cWarehouses INTO vWarehouseFk; FETCH cWarehouses INTO vWarehouseFk;
IF vDone THEN IF vDone THEN
LEAVE read_loop; LEAVE read_loop;
END IF; END IF;
CALL cache.visible_refresh(vCalc, FALSE, vWarehouseFk); CALL cache.visible_refresh(vCalc, FALSE, vWarehouseFk);
CREATE OR REPLACE TEMPORARY TABLE tVisible CREATE OR REPLACE TEMPORARY TABLE tVisible
SELECT itemFk, SUM(visible) totalVisible SELECT itemFk, SUM(visible) totalVisible
FROM vn.itemShelving ish FROM vn.itemShelving ish
@ -37,7 +37,7 @@ BEGIN
JOIN vn.sector sc ON sc.id = p.sectorFk JOIN vn.sector sc ON sc.id = p.sectorFk
WHERE sc.warehouseFk = vWarehouseFk WHERE sc.warehouseFk = vWarehouseFk
GROUP BY itemFk; GROUP BY itemFk;
INSERT INTO inventoryDiscrepancyDetail( INSERT INTO inventoryDiscrepancyDetail(
warehouseFk, warehouseFk,
itemFk, itemFk,
@ -66,7 +66,7 @@ BEGIN
JOIN vn.alertLevel al ON al.id = ts.alertLevel JOIN vn.alertLevel al ON al.id = ts.alertLevel
WHERE t.shipped BETWEEN util.VN_CURDATE() AND util.dayend(util.VN_CURDATE()) WHERE t.shipped BETWEEN util.VN_CURDATE() AND util.dayend(util.VN_CURDATE())
AND NOT s.isPicked AND NOT s.isPicked
AND al.code IN ('FREE', 'APPROVED') AND al.code = 'FREE'
AND t.warehouseFk = vWarehouseFk AND t.warehouseFk = vWarehouseFk
GROUP BY s.itemFk GROUP BY s.itemFk
HAVING notPicked HAVING notPicked

View File

@ -147,7 +147,7 @@ BEGIN
) )
SELECT t.id INTO vTicketFk SELECT t.id INTO vTicketFk
FROM vn.ticket t FROM vn.ticket t
JOIN vn.alertLevel al ON al.code IN ('FREE', 'APPROVED') JOIN vn.alertLevel al ON al.code = 'FREE'
LEFT JOIN tPrevia tp ON tp.ticketFk = t.id LEFT JOIN tPrevia tp ON tp.ticketFk = t.id
LEFT JOIN vn.ticketState tls ON tls.ticketFk = t.id LEFT JOIN vn.ticketState tls ON tls.ticketFk = t.id
JOIN hedera.`order` o ON o.address_id = t.addressFk JOIN hedera.`order` o ON o.address_id = t.addressFk

View File

@ -80,7 +80,7 @@ proc: BEGIN
rm.bufferFk rm.bufferFk
FROM tmp.productionTicket tt FROM tmp.productionTicket tt
JOIN ticket t ON tt.ticketFk = t.id JOIN ticket t ON tt.ticketFk = t.id
JOIN alertLevel al ON al.code = 'APPROVED' JOIN alertLevel al ON al.code = 'FREE'
LEFT JOIN ticketStateToday tst ON tst.ticketFk = t.id LEFT JOIN ticketStateToday tst ON tst.ticketFk = t.id
LEFT JOIN `state` st ON st.id = tst.state LEFT JOIN `state` st ON st.id = tst.state
LEFT JOIN client c ON c.id = t.clientFk LEFT JOIN client c ON c.id = t.clientFk
@ -266,14 +266,14 @@ proc: BEGIN
UPDATE tmp.productionBuffer pb UPDATE tmp.productionBuffer pb
JOIN sale s ON s.ticketFk = pb.ticketFk JOIN sale s ON s.ticketFk = pb.ticketFk
JOIN item i ON i.id = s.itemFk JOIN item i ON i.id = s.itemFk
JOIN cache.last_buy lb ON lb.warehouse_id = vWarehouseFk JOIN cache.last_buy lb ON lb.warehouse_id = vWarehouseFk
AND lb.item_id = s.itemFk AND lb.item_id = s.itemFk
JOIN buy b ON b.id = lb.buy_id JOIN buy b ON b.id = lb.buy_id
JOIN packaging p ON p.id = b.packagingFk JOIN packaging p ON p.id = b.packagingFk
SET pb.hasPlantTray = TRUE SET pb.hasPlantTray = TRUE
WHERE p.isPlantTray WHERE p.isPlantTray
AND s.quantity >= b.packing AND s.quantity >= b.packing
AND pb.isOwn; AND pb.isOwn;
DROP TEMPORARY TABLE DROP TEMPORARY TABLE
tmp.productionTicket, tmp.productionTicket,

View File

@ -13,7 +13,7 @@ BEGIN
JOIN vn.parking p ON p.id = sh.parkingFk JOIN vn.parking p ON p.id = sh.parkingFk
WHERE p.sectorFk = vSectorFk WHERE p.sectorFk = vSectorFk
) sub ON sub.id = td.ticketFk ) sub ON sub.id = td.ticketFk
JOIN vn.ticketDown_SelectionType tdst ON tdst.description IN ('FREE', 'APPROVED') JOIN vn.ticketDown_SelectionType tdst ON tdst.description = 'FREE'
JOIN vn.ticketDown_SelectionType tdst2 ON tdst2.description = 'SELECTED' JOIN vn.ticketDown_SelectionType tdst2 ON tdst2.description = 'SELECTED'
SET td.selected = tdst2.id SET td.selected = tdst2.id
WHERE td.selected = tdst.id; WHERE td.selected = tdst.id;

View File

@ -12,7 +12,7 @@ BEGIN
SELECT t.warehouseFk, t.shipped, ts.alertLevel, al.id SELECT t.warehouseFk, t.shipped, ts.alertLevel, al.id
INTO vWarehouse, vShipped, vAlertLevel, vAlertLevelFree INTO vWarehouse, vShipped, vAlertLevel, vAlertLevelFree
FROM ticket t FROM ticket t
JOIN alertLevel al ON al.code IN ('FREE', 'APPROVED') JOIN alertLevel al ON al.code = 'FREE'
LEFT JOIN ticketState ts ON ts.ticketFk = vTicket LEFT JOIN ticketState ts ON ts.ticketFk = vTicket
WHERE t.id = vTicket; WHERE t.id = vTicket;

View File

@ -3,7 +3,7 @@ CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`ticket_canMerge`(vDat
BEGIN BEGIN
/** /**
* Devuelve un listado de tickets susceptibles de fusionarse con otros tickets en el futuro * Devuelve un listado de tickets susceptibles de fusionarse con otros tickets en el futuro
* *
* @param vDated Fecha en cuestión * @param vDated Fecha en cuestión
* @param vScopeDays Dias en el futuro a sondear * @param vScopeDays Dias en el futuro a sondear
* @param vLitersMax Volumen máximo de los tickets a catapultar * @param vLitersMax Volumen máximo de los tickets a catapultar
@ -48,14 +48,14 @@ BEGIN
WHERE t.shipped BETWEEN TIMESTAMPADD(DAY, vScopeDays,vDated) WHERE t.shipped BETWEEN TIMESTAMPADD(DAY, vScopeDays,vDated)
AND util.dayend(TIMESTAMPADD(DAY, vScopeDays,vDated)) AND util.dayend(TIMESTAMPADD(DAY, vScopeDays,vDated))
AND t.warehouseFk = vWarehouseFk AND t.warehouseFk = vWarehouseFk
AND al.code IN ('FREE', 'APPROVED') AND al.code = 'FREE'
GROUP BY t.id GROUP BY t.id
) sub ) sub
GROUP BY sub.addressFk GROUP BY sub.addressFk
) sub2 ON sub2.addressFk = t.addressFk AND t.id != sub2.id ) sub2 ON sub2.addressFk = t.addressFk AND t.id != sub2.id
WHERE t.shipped BETWEEN vDated AND util.dayend(vDated) WHERE t.shipped BETWEEN vDated AND util.dayend(vDated)
AND t.warehouseFk = vWarehouseFk AND t.warehouseFk = vWarehouseFk
AND al.code IN ('FREE', 'APPROVED') AND al.code = 'FREE'
AND tp.ticketFk IS NULL AND tp.ticketFk IS NULL
GROUP BY sv.ticketFk GROUP BY sv.ticketFk
HAVING liters <= vLitersMax HAVING liters <= vLitersMax

View File

@ -69,7 +69,7 @@ BEGIN
) sub2 ON sub2.addressFk = t.addressFk AND t.id != sub2.id ) sub2 ON sub2.addressFk = t.addressFk AND t.id != sub2.id
WHERE t.shipped BETWEEN vOriginDated AND util.dayend(vOriginDated) WHERE t.shipped BETWEEN vOriginDated AND util.dayend(vOriginDated)
AND t.warehouseFk = vWarehouseFk AND t.warehouseFk = vWarehouseFk
AND al.code IN ('FREE', 'APPROVED') AND al.code = 'FREE'
AND tp.ticketFk IS NULL AND tp.ticketFk IS NULL
GROUP BY sv.ticketFk GROUP BY sv.ticketFk
HAVING futureId; HAVING futureId;

View File

@ -264,7 +264,7 @@ module.exports = Self => {
SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped
FROM tmp.filter f FROM tmp.filter f
LEFT JOIN alertLevel al ON al.id = f.alertLevel LEFT JOIN alertLevel al ON al.id = f.alertLevel
WHERE (al.code IN ('FREE', 'APPROVED') OR f.alertLevel IS NULL) WHERE (al.code = 'FREE' OR f.alertLevel IS NULL)
AND f.shipped >= ?`, [date]); AND f.shipped >= ?`, [date]);
stmts.push(stmt); stmts.push(stmt);

View File

@ -294,7 +294,7 @@ module.exports = Self => {
SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped
FROM tmp.filter f FROM tmp.filter f
LEFT JOIN alertLevel al ON al.id = f.alertLevel LEFT JOIN alertLevel al ON al.id = f.alertLevel
WHERE (al.code IN ('FREE', 'APPROVED') OR f.alertLevel IS NULL) WHERE (al.code = 'FREE' OR f.alertLevel IS NULL)
AND f.shipped >= ? AND f.shipped >= ?
`, [date]); `, [date]);

View File

@ -152,7 +152,7 @@ module.exports = Self => {
SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped, f.lines, f.liters SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped, f.lines, f.liters
FROM tmp.filter f FROM tmp.filter f
LEFT JOIN alertLevel al ON al.id = f.alertLevel LEFT JOIN alertLevel al ON al.id = f.alertLevel
WHERE (al.code IN ('FREE', 'APPROVED') OR f.alertLevel IS NULL) WHERE (al.code = 'FREE' OR f.alertLevel IS NULL)
`); `);
stmts.push(stmt); stmts.push(stmt);