Bugzilla – Attachment 117445 Details for
Bug 27808
Item's onloan column remains unset if a checked out item is issued to another patron without being returned first
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 27808: Refresh the item object when AddReturn is called
Bug-27808-Refresh-the-item-object-when-AddReturn-i.patch (text/plain), 2.08 KB, created by
Kyle M Hall (khall)
on 2021-03-01 12:55:27 UTC
(
hide
)
Description:
Bug 27808: Refresh the item object when AddReturn is called
Filename:
MIME Type:
Creator:
Kyle M Hall (khall)
Created:
2021-03-01 12:55:27 UTC
Size:
2.08 KB
patch
obsolete
>From 1743a0cf58026df6d71c682afb1f501b92c23f82 Mon Sep 17 00:00:00 2001 >From: Tomas Cohen Arazi <tomascohen@theke.io> >Date: Fri, 26 Feb 2021 16:55:59 -0300 >Subject: [PATCH] Bug 27808: Refresh the item object when AddReturn is called > >This patch changes the original implementation so the item object is >refreshed altogether instead of explicitly pinpointing a specific field >we identified an edge case can leave out from ->store. I propose this >alterate implementation because what this bug highlights is the fact we >don't code thinking calls to things can have side-effects (like this >case, with AddReturn updating the onloan status (and maybe other >things?). > >To test: >1. Make sure circ tests pass with and without this patch > >Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> > >Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> >--- > C4/Circulation.pm | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > >diff --git a/C4/Circulation.pm b/C4/Circulation.pm >index 65844c3483..8e4072467a 100644 >--- a/C4/Circulation.pm >+++ b/C4/Circulation.pm >@@ -1477,6 +1477,8 @@ sub AddIssue { > my ( $allowed, $message ) = CanBookBeReturned( $item_unblessed, C4::Context->userenv->{branch} ); > return unless $allowed; > AddReturn( $item_object->barcode, C4::Context->userenv->{'branch'} ); >+ # AddReturn certainly has side-effects, like onloan => undef >+ $item_object->discard_changes; > } > > C4::Reserves::MoveReserve( $item_object->itemnumber, $borrower->{'borrowernumber'}, $cancelreserve ); >@@ -1566,7 +1568,6 @@ sub AddIssue { > $item_object->holdingbranch(C4::Context->userenv->{'branch'}); > $item_object->itemlost(0); > $item_object->onloan($datedue->ymd()); >- $item_object->make_column_dirty('onloan'); # Force write onloan so we don't need to fetch from db > $item_object->datelastborrowed( dt_from_string()->ymd() ); > $item_object->datelastseen( dt_from_string()->ymd() ); > $item_object->store({log_action => 0}); >-- >2.24.1 (Apple Git-126)
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 27808
:
117380
|
117381
|
117382
|
117384
|
117385
|
117386
|
117387
|
117398
|
117399
|
117400
|
117443
| 117445 |
117446
|
117454
|
117456