brutal_trigger.sql

  1. CREATE TRIGGER `partsonorder_after_upd_tr` AFTER UPDATE ON `partsonorder`
  2. `job_audits`
  3. `job_audits`.`job_no` = NEW.`JOB_NO`,
  4. `job_audits`.`system` = @system_name,
  5. `job_audits`.`created_at` = NOW(),
  6. `job_audits`.`code` = 6,
  7. `job_audits`.`notes` = CONCAT_WS(
  8. ', ',
  9. CONCAT('Edited part on order ', NEW.`id`),
  10. IF(NEW.`ORDERDATE` <=> OLD.`ORDERDATE`, NULL, CONCAT('Ordered: ', QUOTE(OLD.`ORDERDATE`), ' => ', QUOTE(NEW.`ORDERDATE`))),
  11. IF(NEW.`ORDERNO` <=> OLD.`ORDERNO`, NULL, CONCAT('Order No: ', QUOTE(OLD.`ORDERNO`), ' => ', QUOTE(NEW.`ORDERNO`))),
  12. IF(NEW.`supplier_id` <=> OLD.`supplier_id`, NULL, CONCAT('Supplier: ', QUOTE(OLD.`supplier_id`), ' => ', QUOTE(NEW.`supplier_id`))),
  13. IF(NEW.`supplier_id` <=> OLD.`supplier_id`, NULL, CONCAT('Supplier name: ', (SELECT `name` FROM `suppliers` s WHERE s.`id` = NEW.`supplier_id`))),
  14. IF(NEW.`supplier_ref` <=> OLD.`supplier_ref`, NULL, CONCAT('Supplier Ref: ', QUOTE(OLD.`supplier_ref`), ' => ', QUOTE(NEW.`supplier_ref`))),
  15. IF(NEW.`PART_CODE` <=> OLD.`PART_CODE`, NULL, CONCAT('Part Code: ', QUOTE(OLD.`PART_CODE`), ' => ', QUOTE(NEW.`PART_CODE`))),
  16. IF(NEW.`DESCRIPTION` <=> OLD.`DESCRIPTION`, NULL, CONCAT('Desc: ', QUOTE(OLD.`DESCRIPTION`), ' => ', QUOTE(NEW.`DESCRIPTION`))),
  17. IF(NEW.`QUANTITY` <=> OLD.`QUANTITY`, NULL, CONCAT('Quantity: ', QUOTE(OLD.`QUANTITY`), ' => ', QUOTE(NEW.`QUANTITY`))),
  18. IF(NEW.`COST` <=> OLD.`COST`, NULL, CONCAT('Cost: ', QUOTE(OLD.`COST`), ' => ', QUOTE(NEW.`COST`))),
  19. IF(NEW.`STATUS_ID` <=> OLD.`STATUS_ID`, NULL, CONCAT('Status: ', QUOTE(OLD.`STATUS_ID`), ' => ', QUOTE(NEW.`STATUS_ID`))),
  20. IF(NEW.`STATUS_ID` <=> OLD.`STATUS_ID`, NULL, CONCAT('Status Text: ', (SELECT ps.`description` FROM `partstatuses` ps WHERE ps.`id` = NEW.`STATUS_ID`))),
  21. IF(NEW.`ETADATE` <=> OLD.`ETADATE`, NULL, CONCAT('ETA: ', QUOTE(OLD.`ETADATE`), ' => ', QUOTE(NEW.`ETADATE`))),
  22. IF(NEW.`AVAILABLEDATE` <=> OLD.`AVAILABLEDATE`, NULL, CONCAT('Available: ', QUOTE(OLD.`AVAILABLEDATE`), ' => ', QUOTE(NEW.`AVAILABLEDATE`))),
  23. IF(NEW.`ENG_NUM` <=> OLD.`ENG_NUM`, NULL, CONCAT('Eng: ', QUOTE(OLD.`ENG_NUM`), ' => ', QUOTE(NEW.`ENG_NUM`))),
  24. IF(NEW.`ENG_NUM` <=> OLD.`ENG_NUM`, NULL, CONCAT('Eng Name: ', (SELECT e.`NAME` FROM `engnames` e WHERE e.`ENG_NUM` = NEW.`ENG_NUM`))),
  25. IF(NEW.`creditnote` <=> OLD.`creditnote`, NULL, CONCAT('Credit Note: ', QUOTE(OLD.`creditnote`), ' => ', QUOTE(NEW.`creditnote`))),
  26. CONCAT('(', @user_name, ')')
  27. );
  28.