Lp 1735539: Fix Item Status ability to delete multiple copies. user/dyrcona/lp1735339-item-status-delete-multi
authorJason Stephenson <jason@sigio.com>
Thu, 12 Apr 2018 14:47:40 +0000 (10:47 -0400)
committerJason Stephenson <jason@sigio.com>
Thu, 12 Apr 2018 16:02:57 +0000 (12:02 -0400)
commit1843f34891c2cfcaefc1396776569e2fc27af3af
tree4bfb287fd1836b76533817e5c8b08ba1922c191f
parentd188baf3c3bed0447cec47f89ca626bb4ae19c58
Lp 1735539: Fix Item Status ability to delete multiple copies.

Set atomic to true for the PCRUD search in the item service's
selectedHoldingsCopyDelete method, and do an angular.forEach over the
results to properly fill the copy_objects array so that all copies end
up in it.  As it was only 1 copy was getting into the array.

To reproduce the bug:
   1. Open Item Status in the web staff client.
   2. Load multiple items, perhaps by uploading a file of barcodes.
   3. Select more than 1 item from the list.
   4. Choose "Delete Items" from the Actions menu.
   5. Note that the dialog indicates that you will delete 1 copy.
   6. Click the Cancel button in the dialog.

To test, after applying the fix branch:
   1. Open Item Status in the web staff client.
   2. Load multiple items, perhaps by uploading a file of barcodes.
   3. Select more than 1 item from the list.
   4. Choose "Delete Items" from the Actions menu.
   5. Note that that the dialog indicates you will delete X copies,
      where X is the number of items selected.
   6. Click OK and confirm that all copies were deleted.
   7. You can confirm 6 by reloading the interface and uploading the
      file of barcodes again.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/web/js/ui/default/staff/circ/services/item.js