Compare commits
No commits in common. "c4d5712b831f590f3a741067740ce7630a7e5838" and "1a7fa2e49c9e4a70c81c6be861c5828126bb8243" have entirely different histories.
c4d5712b83
...
1a7fa2e49c
|
@ -0,0 +1,8 @@
|
|||
DELIMITER $$
|
||||
CREATE OR REPLACE DEFINER=`root`@`localhost` EVENT `vn`.`sale_checkWithoutComponents`
|
||||
ON SCHEDULE EVERY 10 MINUTE
|
||||
STARTS '2020-05-04 11:56:23.000'
|
||||
ON COMPLETION PRESERVE
|
||||
ENABLE
|
||||
DO call sale_checkNoComponents(DATE_ADD(util.VN_NOW(), INTERVAL -10 MINUTE),DATE_ADD(util.VN_NOW(), INTERVAL -1 MINUTE))$$
|
||||
DELIMITER ;
|
|
@ -0,0 +1,70 @@
|
|||
DELIMITER $$
|
||||
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`sale_checkNoComponents`(vCreatedFrom DATETIME, vCreatedTo DATETIME)
|
||||
BEGIN
|
||||
/**
|
||||
* Comprueba que las ventas creadas entre un rango de fechas tienen componentes
|
||||
*
|
||||
* @param vCreatedFrom inicio del rango
|
||||
* @param vCreatedTo fin del rango
|
||||
*/
|
||||
DECLARE v_done BOOL DEFAULT FALSE;
|
||||
DECLARE vSaleFk INTEGER;
|
||||
DECLARE vTicketFk INTEGER;
|
||||
DECLARE vConcept VARCHAR(50);
|
||||
DECLARE vCur CURSOR FOR
|
||||
SELECT s.id
|
||||
FROM sale s
|
||||
JOIN ticket t ON t.id = s.ticketFk
|
||||
JOIN item i ON i.id = s.itemFk
|
||||
JOIN itemType tp ON tp.id = i.typeFk
|
||||
JOIN itemCategory ic ON ic.id = tp.categoryFk
|
||||
LEFT JOIN tmp.coste c ON c.id = s.id
|
||||
WHERE s.created >= vCreatedFrom AND s.created <= vCreatedTo
|
||||
AND c.id IS NULL
|
||||
AND t.agencyModeFk IS NOT NULL
|
||||
AND t.isDeleted IS FALSE
|
||||
AND t.warehouseFk = 60
|
||||
AND ic.merchandise != FALSE
|
||||
GROUP BY s.id;
|
||||
|
||||
DECLARE CONTINUE HANDLER FOR NOT FOUND
|
||||
SET v_done = TRUE;
|
||||
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp.coste;
|
||||
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp.coste;
|
||||
CREATE TEMPORARY TABLE tmp.coste
|
||||
(PRIMARY KEY (id)) ENGINE = MEMORY
|
||||
SELECT s.id
|
||||
FROM sale s
|
||||
JOIN item i ON i.id = s.itemFk
|
||||
JOIN itemType tp ON tp.id = i.typeFk
|
||||
JOIN itemCategory ic ON ic.id = tp.categoryFk
|
||||
JOIN saleComponent sc ON sc.saleFk = s.id
|
||||
JOIN component c ON c.id = sc.componentFk
|
||||
JOIN componentType ct ON ct.id = c.typeFk AND ct.id = 6
|
||||
WHERE s.created >= vCreatedFrom
|
||||
AND ic.merchandise != FALSE;
|
||||
|
||||
OPEN vCur;
|
||||
|
||||
l: LOOP
|
||||
SET v_done = FALSE;
|
||||
FETCH vCur INTO vSaleFk;
|
||||
|
||||
IF v_done THEN
|
||||
LEAVE l;
|
||||
END IF;
|
||||
|
||||
SELECT ticketFk, concept
|
||||
INTO vTicketFk, vConcept
|
||||
FROM sale
|
||||
WHERE id = vSaleFk;
|
||||
|
||||
CALL sale_calculateComponent(vSaleFk, 'renewPrices');
|
||||
END LOOP;
|
||||
|
||||
CLOSE vCur;
|
||||
DROP TEMPORARY TABLE tmp.coste;
|
||||
END$$
|
||||
DELIMITER ;
|
Loading…
Reference in New Issue