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

(-)a/C4/SIP/ILS/Transaction/Checkin.pm (-3 / +3 lines)
Lines 1-4 Link Here
1
#
1
2
# An object to handle checkin status
2
# An object to handle checkin status
3
#
3
#
4
4
Lines 121-129 sub do_checkin { Link Here
121
121
122
        } else {
122
        } else {
123
            $self->alert_type('02');
123
            $self->alert_type('02');
124
            ModReserveAffect( $messages->{ResFound}->{itemnumber},
124
            ModReserveAffect( $self->{item}->{itemnumber},
125
                $messages->{ResFound}->{borrowernumber}, 1, $messages->{ResFound}->{reserve_id});
125
                $messages->{ResFound}->{borrowernumber}, 1, $messages->{ResFound}->{reserve_id});
126
            ModItemTransfer( $messages->{ResFound}->{itemnumber},
126
            ModItemTransfer( $self->{item}->{itemnumber},
127
                $branch,
127
                $branch,
128
                $messages->{ResFound}->{branchcode},
128
                $messages->{ResFound}->{branchcode},
129
                $messages->{TransferTrigger},
129
                $messages->{TransferTrigger},
(-)a/t/db_dependent/SIP/Transaction.t (-2 / +39 lines)
Lines 272-278 subtest do_hold => sub { Link Here
272
};
272
};
273
273
274
subtest do_checkin => sub {
274
subtest do_checkin => sub {
275
    plan tests => 11;
275
    plan tests => 12;
276
276
277
    my $library = $builder->build_object( { class => 'Koha::Libraries' } );
277
    my $library = $builder->build_object( { class => 'Koha::Libraries' } );
278
    my $library2 = $builder->build_object( { class => 'Koha::Libraries' } );
278
    my $library2 = $builder->build_object( { class => 'Koha::Libraries' } );
Lines 327-332 subtest do_checkin => sub { Link Here
327
    is_deeply($result,{ messages => { 'NotIssued' => $item->barcode, 'WasTransfered' => 1 } },"Messages show not issued and transferred");
327
    is_deeply($result,{ messages => { 'NotIssued' => $item->barcode, 'WasTransfered' => 1 } },"Messages show not issued and transferred");
328
    is( $ci_transaction->item->destination_loc,$library->branchcode,"Item destination correctly set");
328
    is( $ci_transaction->item->destination_loc,$library->branchcode,"Item destination correctly set");
329
329
330
    subtest 'Checkin an in transit item' => sub {
331
332
        plan tests => 5;
333
334
        my $library_1 = $builder->build_object({ class => 'Koha::Libraries' });
335
        my $library_2 = $builder->build_object({ class => 'Koha::Libraries' });
336
337
        my $patron = $builder->build_object({ class => 'Koha::Patrons', value => {branchcode => $library_1->branchcode, }});
338
        my $sip_patron = C4::SIP::ILS::Patron->new( $patron->cardnumber );
339
        my $item = $builder->build_sample_item({ library => $library_1->branchcode });
340
        my $sip_item   = C4::SIP::ILS::Item->new( $item->barcode );
341
342
        t::lib::Mocks::mock_userenv(
343
            { branchcode => $library_1->branchcode, flags => 1 } );
344
345
        my $reserve = AddReserve(
346
            {
347
                branchcode     => $library_1->branchcode,
348
                borrowernumber => $patron->borrowernumber,
349
                biblionumber   => $item->biblionumber,
350
            }
351
        );
352
353
        ModReserveAffect( $item->itemnumber, $patron->borrowernumber ); # Mark waiting
354
355
        my $ci_transaction = C4::SIP::ILS::Transaction::Checkin->new();
356
        is( $ci_transaction->patron($sip_patron),
357
            $sip_patron, "Patron assigned to transaction" );
358
        is( $ci_transaction->item($sip_item),
359
            $sip_item, "Item assigned to transaction" );
360
361
        my $checkin = $ci_transaction->do_checkin($library_2->branchcode, C4::SIP::Sip::timestamp);
362
363
        my $hold = Koha::Holds->find($reserve);
364
        is( $hold->found, 'T', );
365
        is( $hold->itemnumber, $item->itemnumber, );
366
        is( Koha::Checkouts->search({itemnumber => $item->itemnumber})->count, 0, );
367
    };
330
};
368
};
331
369
332
subtest checkin_lost => sub {
370
subtest checkin_lost => sub {
333
- 

Return to bug 27196