Sha256: 62c4025e650b99ea3a87f54bd7d1864c7fab6fe85e326cc0c11405bd994370ce
Contents?: true
Size: 771 Bytes
Versions: 3
Compression:
Stored size: 771 Bytes
Contents
# frozen_string_literal: true class FolioClient # Lookup items in the Folio inventory class Inventory attr_accessor :client # @param client [FolioClient] the configured client def initialize(client) @client = client end # @param barcode [String] barcode to search by to fetch the HRID def fetch_hrid(barcode:) # find the instance UUID for this barcode instance = client.get("/search/instances", {query: "items.barcode==#{barcode}"}) instance_uuid = instance.dig("instances", 0, "id") return nil unless instance_uuid # next lookup the instance given the instance_uuid so we can fetch the hrid result = client.get("/inventory/instances/#{instance_uuid}") result.dig("hrid") end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
folio_client-0.3.0 | lib/folio_client/inventory.rb |
folio_client-0.2.1 | lib/folio_client/inventory.rb |
folio_client-0.2.0 | lib/folio_client/inventory.rb |