fix(travel): new trigger for travel and new version to update it

stockRefresh and entryIn also updated

Refs: #8048
This commit is contained in:
Pako Natek 2025-03-03 13:29:20 +01:00
parent 99bc9b4698
commit 8cc88453c4
6 changed files with 20 additions and 8 deletions

View File

@ -1,8 +1,9 @@
DELIMITER $$ DELIMITER $$
$$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `cache`.`stock_refresh`(v_refresh BOOL) CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `cache`.`stock_refresh`(v_refresh BOOL)
proc: BEGIN proc: BEGIN
/** /**
* Crea o actualiza la cache con el disponible hasta el ­a de * Crea o actualiza la cache con el disponible hasta el a de
* ayer. Esta cache es usada como base para otros procedimientos * ayer. Esta cache es usada como base para otros procedimientos
* como el cálculo del visible o del ATP. * como el cálculo del visible o del ATP.
* *
@ -36,15 +37,19 @@ proc: BEGIN
( (
SELECT itemFk AS item_id, warehouseFk AS warehouse_id, quantity AS amount SELECT itemFk AS item_id, warehouseFk AS warehouse_id, quantity AS amount
FROM vn.itemTicketOut FROM vn.itemTicketOut
WHERE shipped >= v_date_inv AND shipped < vCURDATE WHERE shipped >= v_date_inv
AND shipped < vCURDATE
UNION ALL UNION ALL
SELECT itemFk ASitem_id, warehouseInFk AS warehouse_id, quantity AS amount SELECT itemFk ASitem_id, warehouseInFk AS warehouse_id, quantity AS amount
FROM vn.itemEntryIn FROM vn.itemEntryIn
WHERE landed >= v_date_inv AND landed < vCURDATE AND isVirtualStock is FALSE WHERE availabled >= v_date_inv
AND availabled < vCURDATE
AND isVirtualStock is FALSE
UNION ALL UNION ALL
SELECT itemFk AS item_id ,warehouseOutFk AS warehouse_id, quantity AS amount SELECT itemFk AS item_id ,warehouseOutFk AS warehouse_id, quantity AS amount
FROM vn.itemEntryOut FROM vn.itemEntryOut
WHERE shipped >= v_date_inv AND shipped < vCURDATE WHERE shipped >= v_date_inv
AND shipped < vCURDATE
) t ) t
GROUP BY item_id, warehouse_id HAVING amount != 0; GROUP BY item_id, warehouse_id HAVING amount != 0;

View File

@ -18,7 +18,7 @@ BEGIN
END IF; END IF;
IF NEW.availabled < NEW.landed THEN IF NEW.availabled < NEW.landed THEN
CALL util.throw('The travel availabled cannot be earlier than landed'); SET NEW.availabled = NEW.landed;
END IF; END IF;
END$$ END$$
DELIMITER ; DELIMITER ;

View File

@ -40,9 +40,10 @@ BEGIN
IF (NOT(NEW.awbFk <=> OLD.awbFk)) AND NEW.awbFk IS NOT NULL THEN IF (NOT(NEW.awbFk <=> OLD.awbFk)) AND NEW.awbFk IS NOT NULL THEN
CALL travel_throwAwb(NEW.id); CALL travel_throwAwb(NEW.id);
END IF; END IF;
IF NEW.availabled < NEW.landed THEN IF NEW.availabled < NEW.landed THEN
CALL util.throw('The travel availabled cannot be earlier than landed'); SET NEW.availabled = NEW.landed;
END IF; END IF;
END$$ END$$
DELIMITER ; DELIMITER ;

View File

@ -8,7 +8,7 @@ AS SELECT `t`.`warehouseInFk` AS `warehouseInFk`,
`t`.`isReceived` AS `isReceived`, `t`.`isReceived` AS `isReceived`,
`t`.`isRaid` AS `isVirtualStock`, `t`.`isRaid` AS `isVirtualStock`,
`e`.`id` AS `entryFk`, `e`.`id` AS `entryFk`,
`t`.`availabled` `t`.`availabled` AS `availabled`
FROM ( FROM (
( (
`vn`.`buy` `b` `vn`.`buy` `b`

View File

@ -0,0 +1,4 @@
-- Place your SQL code here
UPDATE vn.travel
SET availabled = landed
WHERE availabled IS NULL;

View File

@ -0,0 +1,2 @@
ALTER TABLE vn.travel MODIFY COLUMN availabled datetime NOT NULL
COMMENT 'Indicates the moment in time when the goods become available for picking';