LP#1613730: Stamping upgrade script for copy count badge
authorKathy Lussier <klussier@masslnc.org>
Mon, 22 Aug 2016 18:02:58 +0000 (14:02 -0400)
committerKathy Lussier <klussier@masslnc.org>
Mon, 22 Aug 2016 18:04:20 +0000 (14:04 -0400)
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/upgrade/0990.data.copy-count-badge.sql [new file with mode: 0644]
Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy-count-badge.sql [deleted file]

index 3c897ab..976361c 100644 (file)
@@ -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 ('0989', :eg_version); -- berick/miker/gmcharlt
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0990', :eg_version); -- miker/kmlussier
 
 CREATE TABLE config.bib_source (
        id              SERIAL  PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/0990.data.copy-count-badge.sql b/Open-ILS/src/sql/Pg/upgrade/0990.data.copy-count-badge.sql
new file mode 100644 (file)
index 0000000..ce9d8f0
--- /dev/null
@@ -0,0 +1,36 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('0990', :eg_version);
+
+CREATE OR REPLACE FUNCTION rating.copy_count(badge_id INT)
+    RETURNS TABLE (record INT, value NUMERIC) AS $f$
+DECLARE
+    badge   rating.badge_with_orgs%ROWTYPE;
+BEGIN
+
+    SELECT * INTO badge FROM rating.badge_with_orgs WHERE id = badge_id;
+
+    PERFORM rating.precalc_bibs_by_copy(badge_id);
+
+    DELETE FROM precalc_copy_filter_bib_list WHERE id NOT IN (
+        SELECT id FROM precalc_filter_bib_list
+            INTERSECT
+        SELECT id FROM precalc_bibs_by_copy_list
+    );
+    ANALYZE precalc_copy_filter_bib_list;
+
+    RETURN QUERY
+     SELECT f.id::INT AS bib,
+            COUNT(f.copy)::NUMERIC
+      FROM  precalc_copy_filter_bib_list f
+            JOIN asset.copy cp ON (f.copy = cp.id)
+            JOIN asset.call_number cn ON (cn.id = cp.call_number)
+      WHERE cn.owning_lib = ANY (badge.orgs) GROUP BY 1;
+
+END;
+$f$ LANGUAGE PLPGSQL STRICT;
+
+INSERT INTO rating.popularity_parameter (name, func, require_percentile) VALUES ('Copy Count', 'rating.copy_count', TRUE);
+
+COMMIT;
+
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy-count-badge.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.data.copy-count-badge.sql
deleted file mode 100644 (file)
index 84d36da..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-BEGIN;
-
-CREATE OR REPLACE FUNCTION rating.copy_count(badge_id INT)
-    RETURNS TABLE (record INT, value NUMERIC) AS $f$
-DECLARE
-    badge   rating.badge_with_orgs%ROWTYPE;
-BEGIN
-
-    SELECT * INTO badge FROM rating.badge_with_orgs WHERE id = badge_id;
-
-    PERFORM rating.precalc_bibs_by_copy(badge_id);
-
-    DELETE FROM precalc_copy_filter_bib_list WHERE id NOT IN (
-        SELECT id FROM precalc_filter_bib_list
-            INTERSECT
-        SELECT id FROM precalc_bibs_by_copy_list
-    );
-    ANALYZE precalc_copy_filter_bib_list;
-
-    RETURN QUERY
-     SELECT f.id::INT AS bib,
-            COUNT(f.copy)::NUMERIC
-      FROM  precalc_copy_filter_bib_list f
-            JOIN asset.copy cp ON (f.copy = cp.id)
-            JOIN asset.call_number cn ON (cn.id = cp.call_number)
-      WHERE cn.owning_lib = ANY (badge.orgs) GROUP BY 1;
-
-END;
-$f$ LANGUAGE PLPGSQL STRICT;
-
-INSERT INTO rating.popularity_parameter (name, func, require_percentile) VALUES ('Copy Count', 'rating.copy_count', TRUE);
-
-COMMIT;
-