[open-ils-commits] r7891 - trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher

svn at svn.open-ils.org svn at svn.open-ils.org
Wed Oct 17 11:41:18 EDT 2007


Author: miker
Date: 2007-10-17 11:28:32 -0400 (Wed, 17 Oct 2007)
New Revision: 7891

Modified:
   trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
Log:
adding "available only" status filtered pull list methods

Modified: trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
===================================================================
--- trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm	2007-10-17 00:35:02 UTC (rev 7890)
+++ trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm	2007-10-17 15:28:32 UTC (rev 7891)
@@ -364,6 +364,9 @@
 
 	my $idlist = 1 if ($self->api_name =~/id_list/o);
 
+	my $status_filter = '';
+	$status_filter = 'AND a.status IN (0,7)' if ($self->api_name =~/status_filtered/o);
+
 	my $select = <<"	SQL";
 		SELECT	h.*
 		  FROM	$h_table h
@@ -371,6 +374,7 @@
 		  WHERE	a.circ_lib = ?
 		  	AND h.capture_time IS NULL
 		  	AND h.cancel_time IS NULL
+			$status_filter
 		  ORDER BY h.request_time ASC
 		  LIMIT $limit
 		  OFFSET $offset
@@ -415,6 +419,34 @@
 	],
 	method          => 'hold_pull_list',
 );
+__PACKAGE__->register_method(
+	api_name        => 'open-ils.storage.direct.action.hold_request.pull_list.id_list.current_copy_circ_lib.status_filtered',
+	api_level       => 1,
+	stream          => 1,
+	signature	=> [
+		"Returns the hold ids for a specific library's pull list that are definitely in that library, based on status.",
+ 		[ [org_unit => "The library's org id", "number"],
+		  [limit => 'An optional page size, defaults to 10', 'number'],
+		  [offset => 'Offset for paging, defaults to 0, 0 based', 'number'],
+		],
+		['A list of holds for the stated library to pull for', 'array']
+	],
+	method          => 'hold_pull_list',
+);
+__PACKAGE__->register_method(
+	api_name        => 'open-ils.storage.direct.action.hold_request.pull_list.search.current_copy_circ_lib.status_filtered',
+	api_level       => 1,
+	stream          => 1,
+	signature	=> [
+		"Returns the holds for a specific library's pull list that are definitely in that library, based on status.",
+ 		[ [org_unit => "The library's org id", "number"],
+		  [limit => 'An optional page size, defaults to 10', 'number'],
+		  [offset => 'Offset for paging, defaults to 0, 0 based', 'number'],
+		],
+		['A list of holds for the stated library to pull for', 'array']
+	],
+	method          => 'hold_pull_list',
+);
 
 sub find_optional_surveys {
 	my $self = shift;



More information about the open-ils-commits mailing list