From: Bill Erickson <berickxx@gmail.com> Date: Tue, 19 Jun 2018 18:23:42 +0000 (-0400) Subject: LP#1751368 Items-out checkin of deleted copies X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=23a21e4e529ac2215962f419ed9bb486a5096e84;p=contrib%2FConifer.git LP#1751368 Items-out checkin of deleted copies Allow deleted copies to be checked in from the patron items out list. Checkin is based on copy ID instead of barcode. Note that both values are sent to the server, to reduce the number of changes in the UI code, but the API inspects the ID first. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> --- diff --git a/Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js b/Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js index 4543797b83..e1bcf2aacb 100644 --- a/Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js +++ b/Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js @@ -504,16 +504,21 @@ function($scope , $q , $routeParams , $timeout , egCore , egUser , patronSvc , $scope.checkin = function(items) { if (!items.length) return; - var barcodes = items.map(function(circ) - { return circ.target_copy().barcode() }); + var copies = items.map(function(circ) { return circ.target_copy() }); + var barcodes = copies.map(function(copy) { return copy.barcode() }); return egConfirmDialog.open( egCore.strings.CHECK_IN_CONFIRM, barcodes.join(' '), { }).result.then(function() { + var copy; function do_one() { - if (bc = barcodes.pop()) { - egCirc.checkin({copy_barcode : bc}) + if (copy = copies.pop()) { + // Checkin expects a barcode, but will pass other + // parameters too. Passing the copy ID allows + // for the checkin of deleted copies on the server. + egCirc.checkin( + {copy_barcode: copy.barcode(), copy_id: copy.id()}) .finally(do_one); } else { reset_page();