Merge remote-tracking branch 'origin/new/bug_5327'
[koha.git] / acqui / orderreceive.pl
index a1e6fce..753071d 100755 (executable)
@@ -26,6 +26,7 @@
 orderreceive.pl
 
 =head1 DESCRIPTION
+
 This script shows all order already receive and all pendings orders.
 It permit to write a new order as 'received'.
 
@@ -34,16 +35,19 @@ It permit to write a new order as 'received'.
 =over 4
 
 =item supplierid
+
 to know on what supplier this script has to display receive order.
 
 =item receive
 
 =item invoice
+
 the number of this invoice.
 
 =item freight
 
 =item biblio
+
 The biblionumber of this order.
 
 =item datereceived
@@ -65,7 +69,8 @@ use C4::Acquisition;
 use C4::Auth;
 use C4::Output;
 use C4::Dates qw/format_date/;
-use C4::Bookseller;
+use C4::Bookseller qw/ GetBookSellerFromId /;
+use C4::Budgets qw/ GetBudget /;
 use C4::Members;
 use C4::Branch;    # GetBranches
 use C4::Items;
@@ -86,7 +91,8 @@ my $datereceived = $input->param('datereceived');
 $datereceived = $datereceived ? C4::Dates->new($datereceived, 'iso') : C4::Dates->new();
 
 my $bookseller = GetBookSellerFromId($supplierid);
-my $gst= $input->param('gst') || $bookseller->{gstrate} || C4::Context->preference("gist") || 0;
+my $input_gst = ($input->param('gst') eq '' ? undef : $input->param('gst'));
+my $gst= $input_gst // $bookseller->{gstrate} // C4::Context->preference("gist") // 0;
 my $results = SearchOrder($ordernumber,$search);
 
 
@@ -128,6 +134,12 @@ if ( $count == 1 ) {
     if ( @$results[0]->{'unitprice'} == 0 ) {
         @$results[0]->{'unitprice'} = '';
     }
+
+    my $authorisedby = @$results[0]->{'authorisedby'};
+    my $member = GetMember( borrowernumber => $authorisedby );
+
+    my $budget = GetBudget( @$results[0]->{'budget_id'} );
+
     $template->param(
         count                 => 1,
         biblionumber          => @$results[0]->{'biblionumber'},
@@ -143,17 +155,19 @@ if ( $count == 1 ) {
         copyrightdate         => @$results[0]->{'copyrightdate'},
         isbn                  => @$results[0]->{'isbn'},
         seriestitle           => @$results[0]->{'seriestitle'},
-        bookfund              => @$results[0]->{'bookfundid'},
+        bookfund              => $budget->{budget_name},
         quantity              => @$results[0]->{'quantity'},
         quantityreceivedplus1 => @$results[0]->{'quantityreceived'} + 1,
         quantityreceived      => @$results[0]->{'quantityreceived'},
         rrp                   => @$results[0]->{'rrp'},
         ecost                 => @$results[0]->{'ecost'},
         unitprice             => @$results[0]->{'unitprice'},
+        memberfirstname       => $member->{firstname} || "",
+        membersurname         => $member->{surname} || "",
         invoice               => $invoice,
         datereceived          => $datereceived->output(),
-        datereceived_iso          => $datereceived->output('iso'),
-        notes                       =>              $order->{notes}
+        datereceived_iso      => $datereceived->output('iso'),
+        notes                 => $order->{notes}
     );
 }
 else {