38 lines
1.1 KiB
SQL
38 lines
1.1 KiB
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`root`@`localhost` TRIGGER `vn`.`client_afterUpdate`
|
|
AFTER UPDATE ON `client`
|
|
FOR EACH ROW
|
|
BEGIN
|
|
IF NOT (NEW.defaultAddressFk <=> OLD.defaultAddressFk) THEN
|
|
UPDATE `address` SET isDefaultAddress = FALSE
|
|
WHERE clientFk = NEW.id;
|
|
|
|
UPDATE `address` SET isDefaultAddress = TRUE
|
|
WHERE id = NEW.defaultAddressFk;
|
|
END IF;
|
|
|
|
IF NEW.id <> OLD.id
|
|
OR NOT (NEW.provinceFk <=> OLD.provinceFk)
|
|
OR NOT (NEW.socialName <=> OLD.socialName)
|
|
OR NOT (NEW.street <=> OLD.street)
|
|
OR NOT (NEW.accountingAccount <=> OLD.accountingAccount)
|
|
OR NOT (NEW.isVies <=> OLD.isVies)
|
|
OR NOT (NEW.fi <=> OLD.fi)
|
|
OR NOT (NEW.postcode <=> OLD.postcode)
|
|
OR NOT (NEW.city <=> OLD.city)
|
|
OR NOT (NEW.countryFk <=> OLD.countryFk)
|
|
OR NOT (NEW.taxTypeSageFk <=> OLD.taxTypeSageFk)
|
|
OR NOT (NEW.transactionTypeSageFk <=> OLD.transactionTypeSageFk)
|
|
OR NOT (NEW.email <=> OLD.email)
|
|
OR NOT (NEW.iban <=> OLD.iban)
|
|
OR NOT (NEW.phone <=> OLD.phone)
|
|
OR NOT (NEW.mobile <=> OLD.mobile) THEN
|
|
|
|
UPDATE sage.clientSupplier
|
|
SET isSync = FALSE
|
|
WHERE idClientSupplier IN (NEW.id, OLD.id)
|
|
AND `type` = 'C';
|
|
END IF;
|
|
END$$
|
|
DELIMITER ;
|