...
Method | Path | Provided permissions | Request | Response | Description | Notes |
---|---|---|---|---|---|---|
PUT | inventory/items | inventory.items.array.put | Collection<Item> | 204 UPDATED | Update items from array | |
PUT | inventory/holdings | inventory.holdings.array.put | Collection<Holding> | 204 UPDATED | Update holdings from array |
Flow details
Sequence diagram:
Drawio border true diagramName Items_holdings_bulk_operations simpleViewer false width links auto tbstyle top lbox true diagramWidth 511 revision 2
Steps:
1) Send array of items to be updated in one request with updated item.holdingsRecordIdtransfer request (it contains id of holding to which items should be moved and items ids).
2) Send GET items collection
3) Update retrieved items with new item.holdingsRecordId and send asynchronously update request for each item.
...
4) Return response to UI client.
5) Send array of holdings to be updated in one request with updated holding.instanceId.6) Send Send transfer request (it contains id of instance to which holdings should be moved and holdings ids).
6) Update retrieved holdings with new holding.instanceId and send asynchronously update request for each item.
...
8) Return response to UI client.
Transfer schema:
Field | Type | Note |
---|---|---|
to | UUID | Unique identifier of instance/holding to which holdings/items to be moved |
ids | Array<UUID> | Array of holding/item unique identifiers which will be moved to the new instance/holding |
Business logic algorithm for mod-inventory:
...