Bugzilla – Attachment 129008 Details for
Bug 29792
Transfers created from 'wrong transfer' checkin are not sent if modal is dismissed
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 29792: Automatically send wrong transfers
Bug-29792-Automatically-send-wrong-transfers.patch (text/plain), 4.38 KB, created by
Nick Clemens (kidclamp)
on 2022-01-04 19:26:53 UTC
(
hide
)
Description:
Bug 29792: Automatically send wrong transfers
Filename:
MIME Type:
Creator:
Nick Clemens (kidclamp)
Created:
2022-01-04 19:26:53 UTC
Size:
4.38 KB
patch
obsolete
>From cde092dbb7b2e58fa83090e5f27a35f76d031b6e Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Tue, 4 Jan 2022 19:22:55 +0000 >Subject: [PATCH] Bug 29792: Automatically send wrong transfers > >Bug 24434 reinstated the 'updateWrongTransfer' call here, but made the assertion that >the transfer should not be sent until 'Ok' was clicked. > >I see how unsent transfers are useful for rotation, but I believe for wrong trasnfer we shouldn't require a confirm or print. If a library does want to, the 'transfersblockcirc' system preference will enforce clicking the button >to continue > >To test: >1 - have an item in transit from Branch A to Branch B >2 - check the item in at Branch A >3 - get a Wrong Transfer message, click Print Slip or OK >4 - query the branchtransfers table, see that your original transfer was cancelled and a new one was made, confirm that new transfer has a datesent value >5 - repeat steps 1-3, but instead of clicking one of the buttons click outside of the modal to make it go away >6 - query the branchtransfers table, see that your original transfer was cancelled and a new one was made, confirm that new transfer DOES NOT HAVE a datesent value >7 - Apply patch >8 - Repeat the check in >9 - New transfer is generated and has 'datesent' set >--- > C4/Circulation.pm | 3 ++- > Koha/Item.pm | 1 + > t/db_dependent/Circulation.t | 2 +- > t/db_dependent/Koha/Item.t | 9 ++++++++- > 4 files changed, 12 insertions(+), 3 deletions(-) > >diff --git a/C4/Circulation.pm b/C4/Circulation.pm >index c2edf81f94..b71284beae 100644 >--- a/C4/Circulation.pm >+++ b/C4/Circulation.pm >@@ -3541,7 +3541,8 @@ sub updateWrongTransfer { > reason => $transfer->reason, > comment => $transfer->comments, > ignore_limits => 1, >- enqueue => 1 >+ enqueue => 1, >+ send_transfer => 1, > } > ); > >diff --git a/Koha/Item.pm b/Koha/Item.pm >index d70fbc3f8f..b12578c556 100644 >--- a/Koha/Item.pm >+++ b/Koha/Item.pm >@@ -464,6 +464,7 @@ sub request_transfer { > { > itemnumber => $self->itemnumber, > daterequested => dt_from_string, >+ datesent => $params->{send_transfer} ? dt_from_string : undef, > frombranch => $self->holdingbranch, > tobranch => $params->{to}->branchcode, > reason => $params->{reason}, >diff --git a/t/db_dependent/Circulation.t b/t/db_dependent/Circulation.t >index 3000753a92..e4a8662c5d 100755 >--- a/t/db_dependent/Circulation.t >+++ b/t/db_dependent/Circulation.t >@@ -4912,7 +4912,7 @@ subtest "updateWrongTransfer tests" => sub { > > my $new_transfer = C4::Circulation::updateWrongTransfer($item->itemnumber, $library1->branchcode); > is(ref($new_transfer), 'Koha::Item::Transfer', "updateWrongTransfer returns a 'Koha::Item::Transfer' object"); >- ok( !$new_transfer->in_transit, "New transfer is NOT created as in transit (or cancelled)"); >+ ok( $new_transfer->in_transit, "New transfer is created as in transit"); > > my $original_transfer = $transfer->get_from_storage; > ok( defined($original_transfer->datecancelled), "Original transfer was cancelled"); >diff --git a/t/db_dependent/Koha/Item.t b/t/db_dependent/Koha/Item.t >index db3ff9a987..68c653feea 100755 >--- a/t/db_dependent/Koha/Item.t >+++ b/t/db_dependent/Koha/Item.t >@@ -489,7 +489,7 @@ subtest 'pickup_locations' => sub { > }; > > subtest 'request_transfer' => sub { >- plan tests => 13; >+ plan tests => 15; > $schema->storage->txn_begin; > > my $library1 = $builder->build_object( { class => 'Koha::Libraries' } ); >@@ -549,6 +549,13 @@ subtest 'request_transfer' => sub { > is($transfers->count, 1, "There is only 1 live transfer in the queue"); > $replaced_transfer->datearrived(dt_from_string)->store(); > >+ $transfer = $item->request_transfer({ to => $library2, reason => 'Manual' }); >+ ok(!$transfer->datesent, "Transfer not marked as sent by default"); >+ $transfer->datearrived(dt_from_string)->store(); >+ $transfer = $item->request_transfer({ to => $library2, reason => 'Manual', send_transfer => 1 }); >+ ok($transfer->datesent, "Transfer marked as sent if send_transfer is passed"); >+ $transfer->datearrived(dt_from_string)->store(); >+ > # BranchTransferLimits > t::lib::Mocks::mock_preference('UseBranchTransferLimits', 1); > t::lib::Mocks::mock_preference('BranchTransferLimitsType', 'itemtype'); >-- >2.30.2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 29792
:
129008
|
129009
|
141124
|
141576
|
143049
|
146726