8524-devToTest #3415

Merged
alexm merged 343 commits from 8524-devToTest into test 2025-02-04 13:42:16 +00:00
2 changed files with 34 additions and 7 deletions
Showing only changes of commit c518352bf7 - Show all commits

View File

@ -1,14 +1,14 @@
DELIMITER $$ DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`entry_clone`( CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`entry_clone`(
vSelf INT, vSelf INT,
OUT newEntryFk INT OUT vOutputEntryFk INT
) )
BEGIN BEGIN
/** /**
* clones an entry. * clones an entry.
* *
* @param vSelf The entry id * @param vSelf The entry id
* @param newEntryFk Output parameter of the new created input * @param vOutputEntryFk The new entry id
*/ */
DECLARE vNewEntryFk INT; DECLARE vNewEntryFk INT;
@ -24,7 +24,7 @@ BEGIN
CALL entry_copyBuys(vSelf, vNewEntryFk); CALL entry_copyBuys(vSelf, vNewEntryFk);
COMMIT; COMMIT;
SET newEntryFk = vNewEntryFk; SET vOutputEntryFk = vNewEntryFk;
END$$ END$$
DELIMITER ; DELIMITER ;

View File

@ -13,6 +13,12 @@ BEGIN
DECLARE vNewEntryFk INT; DECLARE vNewEntryFk INT;
DECLARE vTravelFk INT; DECLARE vTravelFk INT;
DECLARE vWarehouseFk INT; DECLARE vWarehouseFk INT;
DECLARE vWarehouseInFk INT;
DECLARE vWarehouseOutFk INT;
DECLARE vRef INT;
DECLARE vIsReceived INT;
DECLARE vAgencyModeFk INT;
DECLARE vNewTravelFk INT;
DECLARE EXIT HANDLER FOR SQLEXCEPTION DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN BEGIN
@ -26,7 +32,25 @@ BEGIN
START TRANSACTION; START TRANSACTION;
-- Hay que crear un nuevo travel, con salida hoy y llegada mañana y asignar la entrada nueva al nuevo travel. -- Hay que crear un nuevo travel, con salida hoy y llegada mañana y asignar la entrada nueva al nuevo travel.
INSERT INTO travel( SELECT warehouseInFk,warehouseOutFk,`ref`,isReceived ,agencyModeFk
INTO vWarehouseInFk,vWarehouseOutFk, vRef,vIsReceived, vAgencyModeFk
FROM travel t
JOIN entry e ON e.travelFk = t.id
WHERE e.id = 1;
SELECT t.di INTO vNewTravelFk
FROM travel t
JOIN entry e ON e.travelFk = t.id
WHERE t.shipped = util.VN_CURDATE()
AND t.landed = util.VN_CURDATE() + INTERVAL 1 DAY
AND warehouseInFk = vWarehouseInFk
AND warehouseOutFk = vWarehouseOutFk
AND `ref` = vRef
AND isReceived =vIsReceived
AND agencyModeFk = vAgencyModeFk;
IF NOT vNewTravelFk THEN
INSERT INTO travel(
shipped, shipped,
landed, landed,
warehouseInFk, warehouseInFk,
@ -45,7 +69,10 @@ BEGIN
JOIN entry e ON e.travelFk = t.id JOIN entry e ON e.travelFk = t.id
WHERE e.id = vOriginalEntry; WHERE e.id = vOriginalEntry;
SET vTravelFk = LAST_INSERT_ID(); SET vTravelFk = LAST_INSERT_ID();
ELSE
SET vTravelFk = vNewTravelFk;
END IF;
UPDATE entry UPDATE entry
SET travelFk = vTravelFk SET travelFk = vTravelFk
@ -82,7 +109,7 @@ BEGIN
itemShelvings AS ( itemShelvings AS (
SELECT ish.itemFk, SUM(visible) visible SELECT ish.itemFk, SUM(visible) visible
FROM vn.itemShelving ish FROM vn.itemShelving ish
JOIN vn.shelving sh ON sh.code = ish.shelvingFk JOIN vn.shelving sh ON sh.id = ish.shelvingFk
JOIN vn.parking p ON p.id = sh.parkingFk JOIN vn.parking p ON p.id = sh.parkingFk
JOIN vn.sector s ON s.id = p.sectorFk JOIN vn.sector s ON s.id = p.sectorFk
WHERE s.warehouseFk = vWarehouseFk WHERE s.warehouseFk = vWarehouseFk
@ -95,7 +122,7 @@ BEGIN
JOIN vn.sale s ON s.ticketFk = t.id JOIN vn.sale s ON s.ticketFk = t.id
JOIN vn.itemShelvingSale iss ON iss.saleFk = s.id JOIN vn.itemShelvingSale iss ON iss.saleFk = s.id
JOIN vn.itemShelving is2 ON is2.id = iss.itemShelvingFk JOIN vn.itemShelving is2 ON is2.id = iss.itemShelvingFk
JOIN vn.shelving s2 ON s2.code = is2.shelvingFk JOIN vn.shelving s2 ON s2.id = is2.shelvingFk
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 s2.parked = util.VN_CURDATE() AND s2.parked = util.VN_CURDATE()
GROUP BY s.itemFk GROUP BY s.itemFk