require "alma_api/collection" require "json" require_relative "../users" class AlmaApi::Client::Users::Fees def initialize(client, user_id, fee_id = nil) @client = client @fee_id = fee_id @user_id = user_id end def get(options = {}) if @fee_id (options = options.deep_dup).symbolize_keys!.reverse_merge!({ user_id_type: :all_unique }) @client.http(:get, "/v1/users/#{@user_id}/fees/#{@fee_id}", options).try do |_response| if _response.status == 200 AlmaApi::Object.new(JSON.parse(_response.body)) end end else (options = options.deep_dup).symbolize_keys!.reverse_merge!({ user_id_type: :all_unique, status: :ACTIVE }) # sanitize api quirks options[:status] = options[:status].to_s.upcase.to_sym @client.http(:get, "/v1/users/#{@user_id}/fees", options).try do |_response| if _response.status == 200 AlmaApi::Collection.new(JSON.parse(_response.body), "fee") end end end end end