From fe520d5b143611aee154e71ebcd1d460b62c60a6 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Wed, 30 Oct 2013 15:34:15 +0100 Subject: [PATCH] Bug 11170: make the pending order list only display orders to receive The order status ordered is set when the basket is closed. The parcel page should only display status "ordered" and "partial". Test plan: - create a basket. - create an order. - verify the order is not listed on the parcel page (i.e. you cannot receive it). - close the basket. - verify the order is listed on the parcel page. Signed-off-by: Marcel de Rooy Signed-off-by: Kyle M Hall Signed-off-by: Galen Charlton --- C4/Acquisition.pm | 12 +++++++++--- acqui/parcel.pl | 3 ++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/C4/Acquisition.pm b/C4/Acquisition.pm index 8c4bfdc110..5b59519d84 100644 --- a/C4/Acquisition.pm +++ b/C4/Acquisition.pm @@ -1654,6 +1654,7 @@ sub SearchOrders { my $basketgroupname = $params->{basketgroupname}; my $owner = $params->{owner}; my $pending = $params->{pending}; + my $ordered = $params->{ordered}; my $dbh = C4::Context->dbh; my @args = (); @@ -1680,9 +1681,14 @@ sub SearchOrders { WHERE (datecancellationprinted is NULL) }; - $query .= q{ - AND (quantity > quantityreceived OR quantityreceived is NULL) - } if $pending; + if ( $pending ) { + $query .= q{ AND (quantity > quantityreceived OR quantityreceived is NULL)}; + } + if ( $ordered ) { + $query .= q{ AND (quantity > quantityreceived OR quantityreceived is NULL)} + unless $pending; + $query .= q{ AND aqorders.orderstatus IN ( "ordered", "partial" )}; + } my $userenv = C4::Context->userenv; if ( C4::Context->preference("IndependentBranches") ) { diff --git a/acqui/parcel.pl b/acqui/parcel.pl index b45155c0b8..557030c6c1 100755 --- a/acqui/parcel.pl +++ b/acqui/parcel.pl @@ -238,6 +238,7 @@ unless( defined $invoice->{closedate} ) { ean => $ean, basketgroupname => $basketgroupname, pending => 1, + ordered => 1, }); $template->param( summaryfilter => $search, @@ -249,7 +250,7 @@ unless( defined $invoice->{closedate} ) { }else{ $pendingorders = SearchOrders({ booksellerid => $booksellerid, - pending => 1 + ordered => 1 }); } my $countpendings = scalar @$pendingorders; -- 2.11.0