30 lines
939 B
MySQL
30 lines
939 B
MySQL
|
DELIMITER $$
|
||
|
CREATE OR REPLACE DEFINER=`root`@`localhost` TRIGGER `vn`.`route_afterUpdate`
|
||
|
AFTER UPDATE ON `route`
|
||
|
FOR EACH ROW
|
||
|
BEGIN
|
||
|
IF IFNULL(NEW.gestdocFk,0) <> IFNULL(OLD.gestdocFk,0) AND NEW.gestdocFk > 0 THEN
|
||
|
-- JGF 09/09/14 cuando se añade un gestdoc a una ruta, se le asigna automagicamente a todos sus Tickets
|
||
|
|
||
|
-- Inserta el gestdoc en todos los tickets de la ruta
|
||
|
INSERT INTO ticketDms(ticketFk,dmsFk)
|
||
|
SELECT id, NEW.gestdocFk FROM ticket WHERE routeFk = NEW.id
|
||
|
ON DUPLICATE KEY UPDATE dmsFk = NEW.gestdocFk;
|
||
|
|
||
|
-- Update del firmado
|
||
|
UPDATE ticket t
|
||
|
JOIN ticketDms tg ON t.id = tg.ticketFk
|
||
|
SET isSigned = 1 WHERE t.routeFk = NEW.id;
|
||
|
END IF;
|
||
|
|
||
|
IF !(NEW.kmStart <=> OLD.kmStart)
|
||
|
OR !(NEW.kmEnd <=> OLD.kmEnd)
|
||
|
OR !(NEW.workerFk <=> OLD.workerFk)
|
||
|
OR !(NEW.m3 <=> OLD.m3)
|
||
|
OR !(NEW.agencyModeFk <=> OLD.agencyModeFk)THEN
|
||
|
CALL route_calcCommission(NEW.id);
|
||
|
END IF;
|
||
|
|
||
|
END$$
|
||
|
DELIMITER ;
|