From 3c02c6e870dd5e20a3bc3f60ff458aa0392778e9 Mon Sep 17 00:00:00 2001 From: scottmk <scottmk@dcc99617-32d9-48b4-a31d-7c20da2025e4> Date: Wed, 6 Oct 2010 15:55:14 +0000 Subject: [PATCH] Two changes to config schema: 1. Add new column date_ceiling to rule_circ_duration table. 2. New table hard_due_date. For trunk, v1.6, v1.6.2 (eventually), and v2.1 (eventually). NOT for v1.6.1 or v2.0. M Open-ILS/src/sql/Pg/002.schema.config.sql A Open-ILS/src/sql/Pg/upgrade/0432.schema.config_hard_due_date.sql M Open-ILS/examples/fm_IDL.xml git-svn-id: svn://svn.open-ils.org/ILS/trunk@18207 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/examples/fm_IDL.xml | 16 ++++++++++++++++ Open-ILS/src/sql/Pg/002.schema.config.sql | 13 +++++++++++-- .../sql/Pg/upgrade/0432.schema.config_hard_due_date.sql | 16 ++++++++++++++++ 3 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 Open-ILS/src/sql/Pg/upgrade/0432.schema.config_hard_due_date.sql diff --git a/Open-ILS/examples/fm_IDL.xml b/Open-ILS/examples/fm_IDL.xml index 18fb37e7fd..25206b3e71 100644 --- a/Open-ILS/examples/fm_IDL.xml +++ b/Open-ILS/examples/fm_IDL.xml @@ -1869,6 +1869,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA <field name="name" reporter:datatype="text"/> <field name="normal" reporter:datatype="interval"/> <field name="shrt" reporter:datatype="interval"/> + <field name="date_ceiling" reporter:datatype="timestamp"/> </fields> <links> </links> @@ -1881,6 +1882,21 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA </actions> </permacrud> </class> + + <class id="chdd" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::hard_due_date" oils_persist:tablename="config.hard_due_date" reporter:label="Hard Due Date"> + <fields oils_persist:primary="id" oils_persist:sequence="config.hard_due_date_id_seq"> + <field reporter:label="ID" name="id" reporter:datatype="id"/> + <field reporter:label="Duration Rule" name="duration_rule" reporter:datatype="link"/> + <field reporter:label="Ceiling Date" name="ceiling_date" reporter:datatype="timestamp"/> + <field reporter:label="Active Date" name="active_date" reporter:datatype="timestamp"/> + </fields> + <links> + <link field="duration_rule" reltype="has_a" key="id" map="" class="crcd"/> + </links> + <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1"> + </permacrud> + </class> + <class id="mobts" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_billable_transaction_summary" oils_persist:tablename="money.open_billable_xact_summary" reporter:label="Open Billable Transaction Summary"> <fields oils_persist:primary="id" oils_persist:sequence=""> <field name="balance_owed" reporter:datatype="money"/> diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index 79f0bfbe69..995bd0f9b6 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -70,7 +70,7 @@ CREATE TABLE config.upgrade_log ( install_date TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW() ); -INSERT INTO config.upgrade_log (version) VALUES ('0431'); -- miker +INSERT INTO config.upgrade_log (version) VALUES ('0432'); -- Scott McKellar CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, @@ -316,7 +316,8 @@ CREATE TABLE config.rule_circ_duration ( extended INTERVAL NOT NULL, normal INTERVAL NOT NULL, shrt INTERVAL NOT NULL, - max_renewals INT NOT NULL + max_renewals INT NOT NULL, + date_ceiling TIMESTAMPTZ ); COMMENT ON TABLE config.rule_circ_duration IS $$ /* @@ -342,6 +343,14 @@ COMMENT ON TABLE config.rule_circ_duration IS $$ */ $$; +CREATE TABLE config.hard_due_date ( + id SERIAL PRIMARY KEY, + duration_rule INT NOT NULL REFERENCES config.rule_circ_duration (id) + DEFERRABLE INITIALLY DEFERRED, + ceiling_date TIMESTAMPTZ NOT NULL, + active_date TIMESTAMPTZ NOT NULL +); + CREATE TABLE config.rule_max_fine ( id SERIAL PRIMARY KEY, name TEXT NOT NULL UNIQUE CHECK ( name ~ E'^\\w+$' ), diff --git a/Open-ILS/src/sql/Pg/upgrade/0432.schema.config_hard_due_date.sql b/Open-ILS/src/sql/Pg/upgrade/0432.schema.config_hard_due_date.sql new file mode 100644 index 0000000000..bf13e9f0c4 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/0432.schema.config_hard_due_date.sql @@ -0,0 +1,16 @@ +BEGIN; + +INSERT INTO config.upgrade_log (version) VALUES ('0432'); -- Scott McKellar + +ALTER TABLE config.rule_circ_duration + ADD COLUMN date_ceiling TIMESTAMPTZ; + +CREATE TABLE config.hard_due_date ( + id SERIAL PRIMARY KEY, + duration_rule INT NOT NULL REFERENCES config.rule_circ_duration (id) + DEFERRABLE INITIALLY DEFERRED, + ceiling_date TIMESTAMPTZ NOT NULL, + active_date TIMESTAMPTZ NOT NULL +); + +COMMIT; -- 2.11.0