- Transfer/Relink Move Holdings and/or Items
Jira server FOLIO Issue Tracker columns key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution serverId 6ccf3fe4-3301-368a-983e-20c466b11a49 key UXPROD-137
This feature covers ability to move attached records and maintain existing relationships. When moving holdings to another instance, all associated items have to be transferred as moved as well. Bulk moving items and holdings. Ease of linking/relinking bib/holdings/item data. Part of the refined UX design of Inventory. Drag and drop is one possible solution.
Connections between items, instances, holdings.
Drawio border true viewerToolbar true fitWindow false diagramName Instance-Holding-Item simpleViewer false diagramWidth 631 revision 1
Possible scenarios and implementation:
1) Move item(s) between holdings
This case looks the same to 1). Changing of each moved item with new item.holdingsRecordId.
Bulk operation approach
The UI-client sends a move request to endpoints POST /inventory/items/move or inventory/holdings/move API. The mod-inventory processes this request, retrieves each item/holding from item/holdings-storage, prepares a request for each item/holding update and sends it asynchronously to tstorage. The mod-inventory waits for all responses from mod-inventory-storage to be completed and populates a response. In case of errors in some of the updating requests in the mod-inventory-storage, the mod-inventory returns a response containing a list of errors for not updated items/holdings.
|inventory.items.move.item.post||Move||201 CREATED||Move items to new holding|
|POST||inventory/holdings/move||inventory.holdings.move.item.post||Move||201 CREATED||Move holdings to new instance|
Drawio border true diagramName Items_holdings_bulk_operations simpleViewer false links auto tbstyle top lbox true diagramWidth 511 revision 5
1) Send transfer request move request (it contains id of holding to which items should be moved and items ids).
2) Send GET items collection form item-storage.
5) Return response to UI client.
6) Send transfer request move request (it contains id of instance to which holdings should be moved and holdings ids).
10) Return response to UI client.
Transfer Move schema:
|to||UUID||true||Unique identifier of instance/holding to which holdings/items to be moved|
|ids||Array<UUID>||true||Array of holding/item unique identifiers which will be moved to the new instance/holding|