Class: Agris::Api::PostResult

Inherits:
Struct
  • Object
show all
Defined in:
lib/agris/api/post_result.rb

Direct Known Subclasses

AccountsReceivables::PaymentPostResult

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#response ⇒ Object

Returns the value of attribute response

Returns:

  • (Object) —

    the current value of response



4
5
6
# File 'lib/agris/api/post_result.rb', line 4

def response
  @response
end

Instance Method Details

#document_number ⇒ Object



5
6
7
# File 'lib/agris/api/post_result.rb', line 5

def document_number
  results['result']['document']
end

#reject_reasons ⇒ Object

A processed post reports an empty <reject />, so there may be no rejections to read.



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/agris/api/post_result.rb', line 11

def reject_reasons
  rejects = results.fetch('result', {})['rejects']

  return [] if rejects.nil?

  [rejects['reject']]
    .flatten
    .compact
    .map { |rejection| rejection['reason'] }
    .compact
end

#results ⇒ Object



23
24
25
# File 'lib/agris/api/post_result.rb', line 23

def results
  response.output_hash['results']
end

#status ⇒ Object



27
28
29
# File 'lib/agris/api/post_result.rb', line 27

def status
  results.fetch('result', 'status' => 'No Result').fetch('status')
end