View | Details | Raw Unified | Return to bug 15516
Collapse All | Expand All

(-)a/C4/Reserves.pm (-13 / +18 lines)
Lines 1210-1215 sub ModReserveAffect { Link Here
1210
1210
1211
    $hold->itemnumber($itemnumber);
1211
    $hold->itemnumber($itemnumber);
1212
1212
1213
    my @reserve_ids;
1214
    push @reserve_ids, $hold->reserve_id;
1215
1213
    if ($transferToDo) {
1216
    if ($transferToDo) {
1214
        $hold->set_transfer();
1217
        $hold->set_transfer();
1215
    } elsif (C4::Context->preference('HoldsNeedProcessingSIP')
1218
    } elsif (C4::Context->preference('HoldsNeedProcessingSIP')
Lines 1226-1231 sub ModReserveAffect { Link Here
1226
        # if this hold was part of a group, cancel other holds in the group
1229
        # if this hold was part of a group, cancel other holds in the group
1227
        my @holds = Koha::Holds->search({ hold_group_id => $hold->hold_group_id });
1230
        my @holds = Koha::Holds->search({ hold_group_id => $hold->hold_group_id });
1228
        foreach my $h ( @holds ) {
1231
        foreach my $h ( @holds ) {
1232
            push @reserve_ids, $h->reserve_id;
1229
            $h->cancel unless $h->reserve_id == $hold->reserve_id;
1233
            $h->cancel unless $h->reserve_id == $hold->reserve_id;
1230
        }
1234
        }
1231
    }
1235
    }
Lines 1237-1254 sub ModReserveAffect { Link Here
1237
      CartToShelf( $itemnumber );
1241
      CartToShelf( $itemnumber );
1238
    }
1242
    }
1239
1243
1240
    my $std = $dbh->prepare(q{
1244
    foreach my $id ( @reserve_ids ) {
1241
        DELETE  q, t
1245
        my $std = $dbh->prepare(q{
1242
        FROM    tmp_holdsqueue q
1246
            DELETE  q, t
1243
        INNER JOIN hold_fill_targets t
1247
            FROM    tmp_holdsqueue q
1244
        ON  q.borrowernumber = t.borrowernumber
1248
            INNER JOIN hold_fill_targets t
1245
            AND q.biblionumber = t.biblionumber
1249
            ON  q.borrowernumber = t.borrowernumber
1246
            AND q.itemnumber = t.itemnumber
1250
                AND q.biblionumber = t.biblionumber
1247
            AND q.item_level_request = t.item_level_request
1251
                AND q.itemnumber = t.itemnumber
1248
            AND q.holdingbranch = t.source_branchcode
1252
                AND q.item_level_request = t.item_level_request
1249
        WHERE t.reserve_id = ?
1253
                AND q.holdingbranch = t.source_branchcode
1250
    });
1254
            WHERE t.reserve_id = ?
1251
    $std->execute($hold->reserve_id);
1255
        });
1256
        $std->execute($id);
1257
    }
1252
1258
1253
    logaction( 'HOLDS', 'MODIFY', $hold->reserve_id, Dumper($hold->get_from_storage->unblessed) )
1259
    logaction( 'HOLDS', 'MODIFY', $hold->reserve_id, Dumper($hold->get_from_storage->unblessed) )
1254
        if C4::Context->preference('HoldsLog');
1260
        if C4::Context->preference('HoldsLog');
1255
- 

Return to bug 15516