Sha256: f6b15c948d44819b4ad11e82533fdf299ac80fe7c5b4470314a93651d2dfb6f0

Contents?: true

Size: 590 Bytes

Versions: 4

Compression:

Stored size: 590 Bytes

Contents

module GmanClient
  module CommodityMerchandising
    module Contracts
      def contracts(filters)
        response = attempt(@retry_attempts) do
          request
            .api
            .v1
            .commodity_merchandising
            .contracts
            .get(params: { q: clean_filters(filters) })
        end

        response
          .map(&:to_h)
      end

      def clean_filters(filters)
        keep = filters.select do |k, _v|
          [:commodity_id_eq, :customer_id_eq].include?(k)
        end

        Hash[filters.to_a & keep.to_a]
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
gman_client-0.2.0 lib/gman_client/commodity_merchandising/contracts.rb
gman_client-0.0.10 lib/gman_client/commodity_merchandising/contracts.rb
gman_client-0.0.9 lib/gman_client/commodity_merchandising/contracts.rb
gman_client-0.0.8 lib/gman_client/commodity_merchandising/contracts.rb