Details
-
Story
-
Status: Closed (View Workflow)
-
P3
-
Resolution: Done
-
None
-
None
-
Firebird Sprint 114, Firebird Sprint 115
-
5
-
Firebird
Description
Purpose/Overview:
Edge CaiaSoft API for Requesting a Remote Storage Item for Circulation.
Requirements/Scope:
- Background retrieval request job.
- API endpoint: POST /caiasoftService/Requests/{requestid}/route/{remoteStorageConfigurationId}. Caiasoft sends FOLIO a status update via API.
Approach:
1. Background retrieval request job operates by schedule (schedule can be configured individually for each remote storage). Each run the job takes all items in the queue for current Remote Storage (/retrievals - queried with Remote Storage Id) and sends them to the Remote Storage: API: Circulation Requests (Multiple Items) (see CaiaSoft API documentation https://docs.google.com/document/d/1yasfuwjA1b18NhE10yji961NKsU5vI5XILjtj-J-QVs/edit).
2. Remote Storage response indicates whether an item is successfully requested or rejected (with rejection details). FOLIO processes Remote Storage response:
- If item was successfully requested, item status is set to Retrieved in the retrieval request queue.
- If an item is failed to be requested because of a server error, FOLIO keeps the item in the queue.
- If an item is rejected because of a logic reason (item not found, item is locked, item is out of the container etc.) then the item item status is set to Retrieved in the retrieval request queue.
3. Remote Storage sends a notification to FOLIO, which should trigger automatic check-in of the item in the FOLIO to the primary for the item's effective remote location (using POST /retrieve/{remoteStorageConfigurationId}/checkInItemByHoldId) with request {holdId: {UUID}}.
Acceptance criteria:
- Scheduled retrieval request job implemented
- API endpoint for CaiaSoft status response (POST /caiasoftService/Requests/{requestid}/route/{remoteStorageConfigurationId}) is implemented and available for making request
- New code unit tests coverage is at least 80%
- API tests are created
TestRail: Results
Attachments
Issue Links
- defines
-
UXPROD-498 Remote Storage Integration Module (Caiasoft)
-
- Closed
-
- has to be done after
-
MODRS-38 Caiasoft: Requesting a Remote Storage Item for Circulation
-
- Closed
-
-
MODRS-57 Check-In item by corresponding holdId
-
- Closed
-
- has to be done before
-
EDGCSOFT-6 Returning an Item to remote storage
-
- Closed
-