Module: Virtuous::Client::GiftDesignation

Included in:
Virtuous::Client
Defined in:
lib/virtuous/client/gift_designation.rb

Instance Method Summary collapse

Instance Method Details

#gift_designation_query_optionsHash

Queries a list of available gift designation query options.

Returns:

  • (Hash)

    A list of available gift designation query options.



7
8
9
# File 'lib/virtuous/client/gift_designation.rb', line 7

def gift_designation_query_options
  parse(get('api/GiftDesignation/QueryOptions'))
end

#query_gift_designations(**options) ⇒ Hash

Queries gift designations.

Examples:

client.query_gift_designations(
  take: 5, skip: 0, sort_by: 'Id',
  conditions: [{ parameter: 'Gift Id', operator: 'Is', value: 102 }]
)

Output

{ list: [...], total: n }

Parameters:

  • options (Hash)

    a customizable set of options

Options Hash (**options):

  • :take (Integer)

    The maximum amount of designations to query. Default: 10. Max is 1000.

  • :skip (Integer)

    The number of designations to skip. Default: 0.

  • :sort_by (String)

    The value to sort records by. You can sort by Id, Amount, GiftDate, ReceiptDate and Batch.

  • :descending (Boolean)

    If true the records will be sorted in descending order.

  • :conditions (Array)

    An array of conditions to filter the gift designation. Use #gift_designation_query_options to see a full list of available conditions.

Returns:

  • (Hash)

    A hash with a list and the total amount of gift designations that satisfy the conditions.



36
37
38
39
40
41
42
# File 'lib/virtuous/client/gift_designation.rb', line 36

def query_gift_designations(**options)
  uri = URI('api/GiftDesignation/Query')
  query_params = options.slice(:take, :skip)
  uri.query = URI.encode_www_form(query_params) unless query_params.empty?

  parse(post(uri, format(query_gift_designations_body(options))))
end