LP1854197 Add Vols and Copies honors owning lib
authorBill Erickson <berickxx@gmail.com>
Mon, 2 Dec 2019 22:44:14 +0000 (17:44 -0500)
committerChris Sharp <csharp@georgialibraries.org>
Fri, 21 Feb 2020 18:42:37 +0000 (13:42 -0500)
Fixes a bug in the Add Volumes and Copies action where there vol/copy
editor was unable to extract the owning library of the selected volumes,
thus leading to no differentation between owning libraries in the editor
and having all of the new volumes/copies linked (by default) to the
first owning library in the list.

To test:

1. Navigate to Item Status UI
2. Scan multiple (say, 3) barcodes, each with a different owning lib.
3. Select all 3 items and chose "Add Callnumbers and Items"
4. The holdings edit page that results should show one volume and copy
   row per owning library instead of all rows linked to the first owning
   library in the set.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jessica Woolford <jwoolford@biblio.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Open-ILS/web/js/ui/default/staff/circ/services/item.js

index c06b252..8150f18 100644 (file)
@@ -710,7 +710,12 @@ function(egCore , egOrg , egCirc , $uibModal , $q , $timeout , $window , ngToast
                     service.gatherSelectedHoldingsIds(items,r),
                     function (i) {
                         angular.forEach(items, function(item) {
-                            if (i == item.id) raw.push({owner : item['call_number.owning_lib']});
+                            if (i == item.id) {
+                                // owning_lib may be fleshed.
+                                var owner = item['call_number.owning_lib.id']
+                                    || item['call_number.owning_lib'];
+                                raw.push({owner : owner});
+                            }
                         });
                     }
                 );