Bug 9948: fix creation/updating of items when partially receiving an order
[koha-ffzg.git] / acqui / finishreceive.pl
index 900733d..aeb4394 100755 (executable)
@@ -56,6 +56,7 @@ my $rrp              = $input->param('rrp');
 my $note             = $input->param("note");
 my $bookfund         = $input->param("bookfund");
 my $order            = GetOrder($ordernumber);
+my $new_ordernumber  = $ordernumber;
 
 #need old recievedate if we update the order, parcel.pl only shows the right parcel this way FIXME
 if ($quantityrec > $origquantityrec ) {
@@ -97,7 +98,6 @@ if ($quantityrec > $origquantityrec ) {
         }
     }
 
-    my $new_ordernumber = $ordernumber;
     # save the quantity received.
     if ( $quantityrec > 0 ) {
         ($datereceived, $new_ordernumber) = ModReceiveOrder(
@@ -153,20 +153,16 @@ if ($quantityrec > $origquantityrec ) {
     }
 }
 
-update_item( $_ ) foreach GetItemnumbersFromOrder( $ordernumber );
-
-print $input->redirect("/cgi-bin/koha/acqui/parcel.pl?invoiceid=$invoiceid");
-
-################################ End of script ################################
-
-sub update_item {
-    my ( $itemnumber ) = @_;
-
-    ModItem( {
+ModItem(
+    {
         booksellerid         => $booksellerid,
         dateaccessioned      => $datereceived,
         price                => $unitprice,
         replacementprice     => $rrp,
         replacementpricedate => $datereceived,
-    }, $biblionumber, $itemnumber );
-}
+    },
+    $biblionumber,
+    $_
+) foreach GetItemnumbersFromOrder($new_ordernumber);
+
+print $input->redirect("/cgi-bin/koha/acqui/parcel.pl?invoiceid=$invoiceid");