2024-01-15 11:31:03 +00:00
|
|
|
DELIMITER $$
|
2024-08-20 08:06:10 +00:00
|
|
|
CREATE OR REPLACE DEFINER=`vn`@`localhost` TRIGGER `vn`.`sharingCart_beforeUpdate`
|
2024-01-15 11:31:03 +00:00
|
|
|
BEFORE UPDATE ON `sharingCart`
|
|
|
|
FOR EACH ROW
|
|
|
|
BEGIN
|
|
|
|
IF NEW.workerFk = NEW.workerSubstitute THEN
|
|
|
|
CALL util.throw ('worker and workerSubstitute must be different');
|
|
|
|
ELSE
|
|
|
|
DELETE sc FROM sharingCartDaily sc
|
|
|
|
WHERE sc.dated BETWEEN OLD.started AND OLD.ended AND
|
|
|
|
sc.ownerFk = OLD.workerFk AND
|
|
|
|
sc.substituteFk = OLD.workerSubstitute;
|
|
|
|
|
|
|
|
INSERT IGNORE INTO sharingCartDaily (ownerFk, substituteFk, dated)
|
|
|
|
SELECT NEW.workerFk, NEW.workerSubstitute, dated
|
|
|
|
FROM time
|
|
|
|
WHERE dated BETWEEN NEW.started AND NEW.ended;
|
|
|
|
|
|
|
|
END IF;
|
|
|
|
END$$
|
|
|
|
DELIMITER ;
|