From: Ben Shum Date: Fri, 10 Apr 2015 01:58:07 +0000 (-0400) Subject: LP#1442254: Stamping upgrade script for use-ws-lib-for-messages X-Git-Tag: sprint4-merge-nov22~1423 X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=0842413f0ed21ec741a0f16b5cbb27f2018357fc;p=working%2FEvergreen.git LP#1442254: Stamping upgrade script for use-ws-lib-for-messages Signed-off-by: Ben Shum --- diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index 2d5f0f5fe1..751ad1699d 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -91,7 +91,7 @@ CREATE TRIGGER no_overlapping_deps BEFORE INSERT OR UPDATE ON config.db_patch_dependencies FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates'); -INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0915', :eg_version); -- berick +INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0916', :eg_version); -- gmcharlt/kmlussier/bshum CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, diff --git a/Open-ILS/src/sql/Pg/upgrade/0916.schema.use-ws-lib-for-messages.sql b/Open-ILS/src/sql/Pg/upgrade/0916.schema.use-ws-lib-for-messages.sql new file mode 100644 index 0000000000..3cccc346e0 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/0916.schema.use-ws-lib-for-messages.sql @@ -0,0 +1,32 @@ +BEGIN; + +SELECT evergreen.upgrade_deps_block_check('0916', :eg_version); + +CREATE OR REPLACE FUNCTION actor.convert_usr_note_to_message () RETURNS TRIGGER AS $$ +DECLARE + sending_ou INTEGER; +BEGIN + IF NEW.pub THEN + IF TG_OP = 'UPDATE' THEN + IF OLD.pub = TRUE THEN + RETURN NEW; + END IF; + END IF; + + SELECT INTO sending_ou aw.owning_lib + FROM auditor.get_audit_info() agai + JOIN actor.workstation aw ON (aw.id = agai.eg_ws); + IF sending_ou IS NULL THEN + SELECT INTO sending_ou home_ou + FROM actor.usr + WHERE id = NEW.creator; + END IF; + INSERT INTO actor.usr_message (usr, title, message, sending_lib) + VALUES (NEW.usr, NEW.title, NEW.value, sending_ou); + END IF; + + RETURN NEW; +END; +$$ LANGUAGE PLPGSQL; + +COMMIT; diff --git a/Open-ILS/src/sql/Pg/upgrade/ZZZZ.schema.use-ws-lib-for-messages.sql b/Open-ILS/src/sql/Pg/upgrade/ZZZZ.schema.use-ws-lib-for-messages.sql deleted file mode 100644 index 0163d0b09f..0000000000 --- a/Open-ILS/src/sql/Pg/upgrade/ZZZZ.schema.use-ws-lib-for-messages.sql +++ /dev/null @@ -1,30 +0,0 @@ -BEGIN; - -CREATE OR REPLACE FUNCTION actor.convert_usr_note_to_message () RETURNS TRIGGER AS $$ -DECLARE - sending_ou INTEGER; -BEGIN - IF NEW.pub THEN - IF TG_OP = 'UPDATE' THEN - IF OLD.pub = TRUE THEN - RETURN NEW; - END IF; - END IF; - - SELECT INTO sending_ou aw.owning_lib - FROM auditor.get_audit_info() agai - JOIN actor.workstation aw ON (aw.id = agai.eg_ws); - IF sending_ou IS NULL THEN - SELECT INTO sending_ou home_ou - FROM actor.usr - WHERE id = NEW.creator; - END IF; - INSERT INTO actor.usr_message (usr, title, message, sending_lib) - VALUES (NEW.usr, NEW.title, NEW.value, sending_ou); - END IF; - - RETURN NEW; -END; -$$ LANGUAGE PLPGSQL; - -COMMIT;