From: erickson Date: Wed, 20 Feb 2008 14:24:45 +0000 (+0000) Subject: added support for order_by, limit, and offset to po retrieve all X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=63e19dd967dff164d45484b9cb6dccc9a534f40a;p=Evergreen.git added support for order_by, limit, and offset to po retrieve all git-svn-id: svn://svn.open-ils.org/ILS/branches/acq-experiment@8795 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Acq/Financials.pm b/Open-ILS/src/perlmods/OpenILS/Application/Acq/Financials.pm index 6cb7fd821a..17e7657183 100644 --- a/Open-ILS/src/perlmods/OpenILS/Application/Acq/Financials.pm +++ b/Open-ILS/src/perlmods/OpenILS/Application/Acq/Financials.pm @@ -589,10 +589,19 @@ sub retrieve_all_user_purchase_order { # grab my purchase orders push(@$po_ids, @{$e->search_acq_purchase_order({owner => $e->requestor->id}, {idlist=>1})}); - my %dedup; - $dedup{$_} = 1 for @$po_ids; - $conn->respond(retrieve_purchase_order_impl($e, $_, $options)) for keys %dedup; + # now get the db to limit/sort for us + $po_ids = $e->search_acq_purchase_order( + [ + {id => $po_ids}, { + limit => $$options{limit} || 50, + offset => $$options{offset} || 0, + order_by => {acqpo => $$options{order_by} || 'create_time'} + } + ], + {idlist => 1} + ); + $conn->respond(retrieve_purchase_order_impl($e, $_, $options)) for @$po_ids; return undef; }