Module: EnotasApi::Searchable::ClassMethods

Defined in:
lib/enotas_api/support/searchable.rb

Instance Method Summary collapse

Instance Method Details

#searchable(fields) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/enotas_api/support/searchable.rb', line 10

def searchable(fields)
  define_method :search do |field, value|
    raise EnotasApi::Error, "Unsupported search field '#{field}'" unless fields.include?(field)

    param(:searchBy, field).param(:searchTerm, value)
  end

  fields.each do |field|
    define_method "search_by_#{field}" do |value|
      search(field, value)
    end
  end
end