Bug 5680: Order cancelling improvement : delete attached items & biblio if avalaible
[koha_gimpoz] / C4 / Acquisition.pm
index f682256..19c4f08 100644 (file)
@@ -1221,6 +1221,11 @@ sub DelOrder {
     my $sth = $dbh->prepare($query);
     $sth->execute( $bibnum, $ordernumber );
     $sth->finish;
+    my @itemnumbers = GetItemnumbersFromOrder( $ordernumber );
+    foreach my $itemnumber (@itemnumbers){
+       C4::Items::DelItem( $dbh, $bibnum, $itemnumber );
+    }
+    
 }
 
 =head2 FUNCTIONS ABOUT PARCELS
@@ -1530,6 +1535,7 @@ sub GetHistory {
     my %params = @_;
     my $title = $params{title};
     my $author = $params{author};
+    my $isbn   = $params{isbn};
     my $name = $params{name};
     my $from_placed_on = $params{from_placed_on};
     my $to_placed_on = $params{to_placed_on};
@@ -1546,6 +1552,7 @@ sub GetHistory {
         SELECT
             biblio.title,
             biblio.author,
+           biblioitems.isbn,
             aqorders.basketno,
     aqbasket.basketname,
     aqbasket.basketgroupid,
@@ -1564,6 +1571,7 @@ sub GetHistory {
         LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno
     LEFT JOIN aqbasketgroups ON aqbasket.basketgroupid=aqbasketgroups.id
         LEFT JOIN aqbooksellers ON aqbasket.booksellerid=aqbooksellers.id
+       LEFT JOIN biblioitems ON biblioitems.biblionumber=aqorders.biblionumber
         LEFT JOIN biblio ON biblio.biblionumber=aqorders.biblionumber";
 
     $query .= " LEFT JOIN borrowers ON aqbasket.authorisedby=borrowers.borrowernumber"
@@ -1584,6 +1592,11 @@ sub GetHistory {
         push @query_params, "%$author%";
     }
 
+    if ( defined $isbn ) {
+        $query .= " AND biblioitems.isbn LIKE ? ";
+        push @query_params, "%$isbn%";
+    }
+
     if ( defined $name ) {
         $query .= " AND aqbooksellers.name LIKE ? ";
         push @query_params, "%$name%";