add primary_contact column to acq.provider
authorGalen Charlton <gmc@equinoxinitiative.org>
Mon, 17 Aug 2020 19:26:21 +0000 (15:26 -0400)
committerGalen Charlton <gmc@equinoxinitiative.org>
Mon, 17 Aug 2020 19:26:21 +0000 (15:26 -0400)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/examples/fm_IDL.xml
Open-ILS/src/sql/Pg/200.schema.acq.sql
Open-ILS/src/sql/Pg/800.fkeys.sql
Open-ILS/src/sql/Pg/upgrade/AAAA.schema.provider-primary-contact.sql [new file with mode: 0644]

index 44d0a57..c3a4f16 100644 (file)
@@ -8748,6 +8748,7 @@ SELECT  usr,
                        <field reporter:label="Fax Phone" name="fax_phone" reporter:datatype="text" />
                        <field reporter:label="Default Claim Policy" name="default_claim_policy" reporter:datatype="link" />
                        <field reporter:label="Default # Copies" name="default_copy_count" reporter:datatype="int" />
+                       <field reporter:label="Primary Contact" name="primary_contact" reporter:datatype="link" />
                        <field reporter:label="Contacts" name="contacts" oils_persist:virtual="true" reporter:datatype="link" />
                        <field reporter:label="Notes" name="provider_notes" oils_persist:virtual="true" reporter:datatype="link" />
                        <field reporter:label="Holdings Subfields" name="holdings_subfields" oils_persist:virtual="true" reporter:datatype="link" />
@@ -8760,6 +8761,7 @@ SELECT  usr,
             <link field="addresses" reltype="has_many" map="" key="provider" class="acqpa"/>
             <link field="contacts" reltype="has_many" map="" key="provider" class="acqpc"/>
             <link field="edi_default" reltype="has_a" map="" key="id" class="acqedi"/>
+            <link field="primary_contact" reltype="has_a" map="" key="id" class="acqpc"/>
                        <link field="default_claim_policy" reltype="has_a" map="" key="id" class="acqclp"/>
                        <link field="provider_notes" reltype="has_many" map="" key="provider" class="acqpron"/>
                        <link field="holdings_subfields" reltype="has_many" map="" key="provider" class="acqphsm"/>
index 3b70a6b..cbc6d76 100644 (file)
@@ -84,6 +84,7 @@ CREATE TABLE acq.provider (
     default_copy_count  INT     NOT NULL DEFAULT 0,
        default_claim_policy INT    REFERENCES acq.claim_policy
                                    DEFERRABLE INITIALLY DEFERRED,
+    primary_contact     INT,    -- REFERENCE acq.provider_contact(id) ON DELETE SET NULL ON UPDATE CASCADE DEFERRABLE INITIALLY DEFERRED
     CONSTRAINT provider_name_once_per_owner UNIQUE (name,owner),
        CONSTRAINT code_once_per_owner UNIQUE (code, owner)
 );
index 58181cb..9ec6446 100644 (file)
@@ -66,6 +66,7 @@ ALTER TABLE actor.org_unit_proximity_adjustment ADD CONSTRAINT actor_org_unit_pr
 ALTER TABLE actor.org_unit_proximity_adjustment ADD CONSTRAINT actor_org_unit_proximity_copy_location_fkey FOREIGN KEY (copy_location) REFERENCES asset.copy_location (id) DEFERRABLE INITIALLY DEFERRED;
 
 ALTER TABLE acq.provider ADD CONSTRAINT acq_provider_edi_default_fkey FOREIGN KEY (edi_default) REFERENCES acq.edi_account (id) DEFERRABLE INITIALLY DEFERRED;
+ALTER TABLE acq.provider ADD CONSTRAINT acq_provider_primary_contact_fkey FOREIGN KEY (primary_contact) REFERENCES acq.provider_contact (id) ON DELETE SET NULL ON UPDATE CASCADE DEFERRABLE INITIALLY DEFERRED;
 
 ALTER TABLE biblio.record_note ADD CONSTRAINT biblio_record_note_record_fkey FOREIGN KEY (record) REFERENCES biblio.record_entry (id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED;
 ALTER TABLE biblio.record_note ADD CONSTRAINT biblio_record_note_creator_fkey FOREIGN KEY (creator) REFERENCES actor.usr (id) DEFERRABLE INITIALLY DEFERRED;
diff --git a/Open-ILS/src/sql/Pg/upgrade/AAAA.schema.provider-primary-contact.sql b/Open-ILS/src/sql/Pg/upgrade/AAAA.schema.provider-primary-contact.sql
new file mode 100644 (file)
index 0000000..b95f456
--- /dev/null
@@ -0,0 +1,8 @@
+BEGIN;
+
+-- SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+ALTER TABLE acq.provider ADD COLUMN primary_contact INT;
+ALTER TABLE acq.provider ADD CONSTRAINT acq_provider_primary_contact_fkey FOREIGN KEY (primary_contact) REFERENCES acq.provider_contact (id) ON DELETE SET NULL ON UPDATE CASCADE DEFERRABLE INITIALLY DEFERRED;
+
+COMMIT;