[open-ils-commits] r15356 - in branches/rel_1_6_0/Open-ILS: examples src/perlmods/OpenILS/Application src/sql/Pg src/sql/Pg/upgrade web/js/ui/default/vandelay (miker)

svn at svn.open-ils.org svn at svn.open-ils.org
Thu Jan 21 11:47:44 EST 2010


Author: miker
Date: 2010-01-21 11:47:41 -0500 (Thu, 21 Jan 2010)
New Revision: 15356

Added:
   branches/rel_1_6_0/Open-ILS/src/sql/Pg/upgrade/0139.schema.vandelay-item-import-fix.sql
Modified:
   branches/rel_1_6_0/Open-ILS/examples/fm_IDL.xml
   branches/rel_1_6_0/Open-ILS/src/perlmods/OpenILS/Application/Vandelay.pm
   branches/rel_1_6_0/Open-ILS/src/sql/Pg/002.schema.config.sql
   branches/rel_1_6_0/Open-ILS/src/sql/Pg/012.schema.vandelay.sql
   branches/rel_1_6_0/Open-ILS/web/js/ui/default/vandelay/vandelay.js
Log:
backporting 15353 and 15354 from Dan Wells for vandelay fixing goodness

Modified: branches/rel_1_6_0/Open-ILS/examples/fm_IDL.xml
===================================================================
--- branches/rel_1_6_0/Open-ILS/examples/fm_IDL.xml	2010-01-21 16:46:59 UTC (rev 15355)
+++ branches/rel_1_6_0/Open-ILS/examples/fm_IDL.xml	2010-01-21 16:47:41 UTC (rev 15356)
@@ -133,7 +133,7 @@
 		</permacrud>
 	</class>
 
-	<class id="vii" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_item" oils_persist:tablename="vandelay.import_item" reporter:label="Import Item Attribute Definition">
+	<class id="vii" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_item" oils_persist:tablename="vandelay.import_item" reporter:label="Import Item">
 		<fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_item_id_seq">
 			<field reporter:label="Import Item ID" name="id" reporter:datatype="id"/>
 			<field reporter:label="Import Record" name="record" reporter:datatype="link"/>
@@ -227,9 +227,11 @@
 			<field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
 			<field reporter:label="Complete" name="complete" reporter:datatype="bool"/>
 			<field reporter:label="Type" name="queue_type" reporter:datatype="text"/>
+			<field reporter:label="Item Import Attribute Definition" name="item_attr_def" reporter:datatype="link"/>
 		</fields>
 		<links>
 			<link field="owner" reltype="has_a" key="id" map="" class="aou"/>
+			<link field="item_attr_def" reltype="has_a" key="id" map="" class="viiad"/>
 		</links>
 		<permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
 			<actions>

Modified: branches/rel_1_6_0/Open-ILS/src/perlmods/OpenILS/Application/Vandelay.pm
===================================================================
--- branches/rel_1_6_0/Open-ILS/src/perlmods/OpenILS/Application/Vandelay.pm	2010-01-21 16:46:59 UTC (rev 15355)
+++ branches/rel_1_6_0/Open-ILS/src/perlmods/OpenILS/Application/Vandelay.pm	2010-01-21 16:47:41 UTC (rev 15356)
@@ -36,6 +36,7 @@
 	my $name = shift;
 	my $owner = shift;
 	my $type = shift;
+	my $import_def = shift;
 
 	my $e = new_editor(authtoken => $auth, xact => 1);
 
@@ -51,6 +52,7 @@
 	$queue->name( $name );
 	$queue->owner( $owner );
 	$queue->queue_type( $type ) if ($type);
+	$queue->item_attr_def( $import_def ) if ($import_def);
 
 	my $new_q = $e->create_vandelay_bib_queue( $queue );
 	return $e->die_event unless ($new_q);
@@ -62,7 +64,7 @@
 	api_name	=> "open-ils.vandelay.bib_queue.create",
 	method		=> "create_bib_queue",
 	api_level	=> 1,
-	argc		=> 3,
+	argc		=> 4,
 );                      
 
 

Modified: branches/rel_1_6_0/Open-ILS/src/sql/Pg/002.schema.config.sql
===================================================================
--- branches/rel_1_6_0/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-01-21 16:46:59 UTC (rev 15355)
+++ branches/rel_1_6_0/Open-ILS/src/sql/Pg/002.schema.config.sql	2010-01-21 16:47:41 UTC (rev 15356)
@@ -51,7 +51,7 @@
     install_date    TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW()
 );
 
-INSERT INTO config.upgrade_log (version) VALUES ('0131'); -- dbs
+INSERT INTO config.upgrade_log (version) VALUES ('0139'); -- Dan Wells via miker
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,

Modified: branches/rel_1_6_0/Open-ILS/src/sql/Pg/012.schema.vandelay.sql
===================================================================
--- branches/rel_1_6_0/Open-ILS/src/sql/Pg/012.schema.vandelay.sql	2010-01-21 16:46:59 UTC (rev 15355)
+++ branches/rel_1_6_0/Open-ILS/src/sql/Pg/012.schema.vandelay.sql	2010-01-21 16:47:41 UTC (rev 15356)
@@ -432,61 +432,58 @@
 
 CREATE OR REPLACE FUNCTION vandelay.ingest_bib_items ( ) RETURNS TRIGGER AS $func$
 DECLARE
-    queue_rec   RECORD;
-    item_rule   RECORD;
+    attr_def    BIGINT;
     item_data   vandelay.import_item%ROWTYPE;
 BEGIN
 
-    SELECT * INTO queue_rec FROM vandelay.bib_queue WHERE id = NEW.queue;
+    SELECT item_attr_def INTO attr_def FROM vandelay.bib_queue WHERE id = NEW.queue;
 
-    FOR item_rule IN SELECT r.* FROM actor.org_unit_ancestors( queue_rec.owner ) o JOIN vandelay.import_item_attr_definition r ON ( r.owner = o.id ) LOOP
-        FOR item_data IN SELECT * FROM vandelay.ingest_items( NEW.id::BIGINT, item_rule.id::BIGINT ) LOOP
-            INSERT INTO vandelay.import_item (
-		record,
-                definition,
-                owning_lib,
-                circ_lib,
-                call_number,
-                copy_number,
-                status,
-                location,
-                circulate,
-                deposit,
-                deposit_amount,
-                ref,
-                holdable,
-                price,
-                barcode,
-                circ_modifier,
-                circ_as_type,
-                alert_message,
-                pub_note,
-                priv_note,
-                opac_visible
-            ) VALUES (
-		NEW.id,
-                item_data.definition,
-                item_data.owning_lib,
-                item_data.circ_lib,
-                item_data.call_number,
-                item_data.copy_number,
-                item_data.status,
-                item_data.location,
-                item_data.circulate,
-                item_data.deposit,
-                item_data.deposit_amount,
-                item_data.ref,
-                item_data.holdable,
-                item_data.price,
-                item_data.barcode,
-                item_data.circ_modifier,
-                item_data.circ_as_type,
-                item_data.alert_message,
-                item_data.pub_note,
-                item_data.priv_note,
-                item_data.opac_visible
-            );
-        END LOOP;
+    FOR item_data IN SELECT * FROM vandelay.ingest_items( NEW.id::BIGINT, attr_def ) LOOP
+        INSERT INTO vandelay.import_item (
+            record,
+            definition,
+            owning_lib,
+            circ_lib,
+            call_number,
+            copy_number,
+            status,
+            location,
+            circulate,
+            deposit,
+            deposit_amount,
+            ref,
+            holdable,
+            price,
+            barcode,
+            circ_modifier,
+            circ_as_type,
+            alert_message,
+            pub_note,
+            priv_note,
+            opac_visible
+        ) VALUES (
+            NEW.id,
+            item_data.definition,
+            item_data.owning_lib,
+            item_data.circ_lib,
+            item_data.call_number,
+            item_data.copy_number,
+            item_data.status,
+            item_data.location,
+            item_data.circulate,
+            item_data.deposit,
+            item_data.deposit_amount,
+            item_data.ref,
+            item_data.holdable,
+            item_data.price,
+            item_data.barcode,
+            item_data.circ_modifier,
+            item_data.circ_as_type,
+            item_data.alert_message,
+            item_data.pub_note,
+            item_data.priv_note,
+            item_data.opac_visible
+        );
     END LOOP;
 
     RETURN NULL;

Copied: branches/rel_1_6_0/Open-ILS/src/sql/Pg/upgrade/0139.schema.vandelay-item-import-fix.sql (from rev 15354, trunk/Open-ILS/src/sql/Pg/upgrade/0139.schema.vandelay-item-import-fix.sql)
===================================================================
--- branches/rel_1_6_0/Open-ILS/src/sql/Pg/upgrade/0139.schema.vandelay-item-import-fix.sql	                        (rev 0)
+++ branches/rel_1_6_0/Open-ILS/src/sql/Pg/upgrade/0139.schema.vandelay-item-import-fix.sql	2010-01-21 16:47:41 UTC (rev 15356)
@@ -0,0 +1,66 @@
+
+BEGIN;
+
+INSERT INTO config.upgrade_log (version) VALUES ('0139'); -- Dan Wells via miker
+
+CREATE OR REPLACE FUNCTION vandelay.ingest_bib_items ( ) RETURNS TRIGGER AS $func$
+DECLARE
+    attr_def    BIGINT;
+    item_data   vandelay.import_item%ROWTYPE;
+BEGIN
+
+    SELECT item_attr_def INTO attr_def FROM vandelay.bib_queue WHERE id = NEW.queue;
+
+    FOR item_data IN SELECT * FROM vandelay.ingest_items( NEW.id::BIGINT, attr_def ) LOOP
+        INSERT INTO vandelay.import_item (
+            record,
+            definition,
+            owning_lib,
+            circ_lib,
+            call_number,
+            copy_number,
+            status,
+            location,
+            circulate,
+            deposit,
+            deposit_amount,
+            ref,
+            holdable,
+            price,
+            barcode,
+            circ_modifier,
+            circ_as_type,
+            alert_message,
+            pub_note,
+            priv_note,
+            opac_visible
+        ) VALUES (
+            NEW.id,
+            item_data.definition,
+            item_data.owning_lib,
+            item_data.circ_lib,
+            item_data.call_number,
+            item_data.copy_number,
+            item_data.status,
+            item_data.location,
+            item_data.circulate,
+            item_data.deposit,
+            item_data.deposit_amount,
+            item_data.ref,
+            item_data.holdable,
+            item_data.price,
+            item_data.barcode,
+            item_data.circ_modifier,
+            item_data.circ_as_type,
+            item_data.alert_message,
+            item_data.pub_note,
+            item_data.priv_note,
+            item_data.opac_visible
+        );
+    END LOOP;
+
+    RETURN NULL;
+END;
+$func$ LANGUAGE PLPGSQL;
+
+COMMIT;

Modified: branches/rel_1_6_0/Open-ILS/web/js/ui/default/vandelay/vandelay.js
===================================================================
--- branches/rel_1_6_0/Open-ILS/web/js/ui/default/vandelay/vandelay.js	2010-01-21 16:46:59 UTC (rev 15355)
+++ branches/rel_1_6_0/Open-ILS/web/js/ui/default/vandelay/vandelay.js	2010-01-21 16:47:41 UTC (rev 15356)
@@ -287,13 +287,13 @@
 /**
   * Creates a new vandelay queue
   */
-function createQueue(queueName, type, onload) {
+function createQueue(queueName, type, onload, importDefId) {
     var name = (type=='bib') ? 'bib' : 'authority';
     var method = 'open-ils.vandelay.'+ name +'_queue.create'
     fieldmapper.standardRequest(
         ['open-ils.vandelay', method],
         {   async: true,
-            params: [authtoken, queueName, null, name],
+            params: [authtoken, queueName, null, name, importDefId],
             oncomplete : function(r) {
                 var queue = r.recv().content();
                 if(e = openils.Event.parse(queue)) 
@@ -899,7 +899,7 @@
         currentQueueId = vlUploadQueueSelector.getValue();
         uploadMARC(handleUploadMARC);
     } else {
-        createQueue(queueName, currentType, handleCreateQueue);
+        createQueue(queueName, currentType, handleCreateQueue, vlUploadQueueHoldingsImportProfile.attr('value'));
     }
 }
 



More information about the open-ils-commits mailing list